999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于隨機森林優化的自組織神經網絡算法

2021-03-23 10:20:28李永麗金喜子
吉林大學學報(理學版) 2021年2期
關鍵詞:模型

李永麗,王 浩,金喜子

(1. 東北師范大學 信息科學與技術學院,長春 130117;2. 吉林大學 計算機科學與技術學院,長春 130012)

在數據分析處理過程中,數據的影響因素數目和維度會影響后期數據預測與分析的準確性,它們之間存在正相關關系,因此在數據處理過程中應盡可能多地考慮存在的影響因素. 但數據維度和影響因素的增加會導致數據處理過程復雜,提高時間和空間的復雜度,為保證數據的可處理性及可使用性,需在數據挖掘中降低問題的復雜度,因此可引入特征降維的分析方法(如主成分分析(PCA)方法). 在深度學習的數據處理過程中,也需進行數據降維處理,以達到減少運算量和數據降噪的目的. 神經網絡的訓練集一般具有多組特征,將這些特征作為輸入并進行趨勢預測前,通常用降維特征向量算法. 如文獻[1]提出了一種主成分分析-多層感知器(PCA-MLP)模型;文獻[2]將多層感知器(MLP)等多種算法用于高速公路車流量預測;文獻[3]提出了一種基于行為的信用卡詐騙預測模型. 雖然去除特征量中的冗余和干擾數據并對數據進行降維處理,在某些應用場景中能顯著提高預測準確率[4],但當數據集的多組特征與結果都具有較強的相關性時,降維處理可能會導致預測準確性降低. 針對該問題,本文提出一種基于隨機森林算法優化的MLP回歸預測模型,該模型在數據預處理后將數據集按數據屬性進行劃分,并在全連接神經網絡的中間層與輸出層回歸分類器之間,使用隨機森林算法對MLP回歸模型的隱藏狀態進行糾正,該過程主要糾正在降維時被忽略的部分要素.

1 預備知識

1.1 特征降維算法

1.2 隨機森林算法

隨機森林算法是利用多個樹型數據結構,對樣本進行訓練并預測的一種算法,它既可以應用在分類問題中,也可以用于數據的回歸分析. 隨機森林與傳統決策樹算法不同,其具有不剪枝也能避免數據過擬合的特點,同時具有較快的訓練速度,且參數調整簡單,在默認參數下即具有較好的回歸預測效果[6-7]. 圖1為隨機森林模型. 其利用bootstrap方法從原始訓練集中隨機抽取n個樣本(有放回),并構建n個決策樹(圖1顯示了兩棵決策樹);在這些樣本中選擇最好的特征(圖1中Feature(f))進行分裂,直至該節點的所有訓練樣例都屬于同一類,然后使每棵決策樹在不做任何修剪的前提下最大限度生長,最后將生成的多棵分類樹組成隨機森林,并用其進行分類和回歸. 隨機森林算法最終結果由多個分類器投票或取均值確定,即計算每棵樹條件概率Pn(c|f)的平均值[8].

1.3 MLP回歸模型

圖1 隨機森林模型Fig.1 Model of random forest

圖2 MLP模型Fig.2 Model of MLP

一般的多層全連接神經網絡(如MLP)是一種前向結構的人工智能網絡. 如圖2所示,典型的MLP包括三層:輸入層、隱藏層和輸出層,MLP神經網絡不同層之間是全連接的. 多層全連接神經網絡的每一層都由多個節點組成. 除輸入層的節點外,每個神經元都帶有一個非線性激活函數,通常用反向傳播的監督學習方法訓練網絡[9].

假設輸入層用向量X表示,則隱藏層的輸出為f(W1X+b1),其中W1是權重(也稱為連接系數),b1是偏置,函數f可以是常用的Sigmoid函數或tanh函數,其公式為

(1)

MLP回歸模型的隱藏層到輸出層可視為一個多類別的邏輯回歸,即Softmax回歸,所以輸出層的輸出就是Softmax(W2X1+B2),其中X1表示隱藏層的輸出f(W1X+b1)[10-11]. Softmax公式為

(2)

當在二分類問題上使用Softmax回歸時,Softmax即特殊化成了Sigmoid.

2 優化的MLP回歸模型

本文提出的優化MLP回歸模型流程包括:數據集預處理、數據集分組、建立神經網絡模型、獲得不確定項以及完善預測結果.

1) 對數據集進行數據預處理. 由于在實際應用中獲得的數據多數包含噪聲,所以不能將這種數據直接進行數據分析. 為提高數據分析的效率,通常采用數據預處理技術進行數據預處理. 數據預處理有多種方法:數據清洗、數據集成、數據變換等,這些處理方法都可以在一定程度上降低數據分析的成本[12].

2) 根據數據的不同屬性,將處理后的數據集按數據屬性分為兩組數據子集S和Z. 將這兩組數據子集定義如下:

S={S1,S2,…,Sn},Si∈[0,1],i∈{1,2,…,n};

Z={Z1,Z2,…,Zn},Zi∈,i∈{1,2,…,n}.

3) 建立模型. 首先用MLP回歸模型分析數據集S,并進行訓練獲得MLP的輸出,用隨機森林算法預測數據集Z. 將MLP回歸模型以及隨機森林算法的輸出分別記為mlp_predict和forest_predict.

4) 提取不確定項. 得到隨機森林的輸出后,即可通過對比它們之間的不同輸出獲得不確定項(當它們對同一個數據項的預測有不同意見時,稱該項為不確定項). 如果要得到更高的預測準確率,則需使不確定項最大化. 不確定項提取算法描述如下:

算法1不確定項提取算法.

輸入: forest_predict(隨機森林算法的輸出結果),mlp_predict(MLP層獲得的輸出結果),y_test(結果集);

輸出: DataFrame類型的不確定項集合;

初始化f_m_index(隨機森林算法和MLP層的差異項索引)

fm_t_index(隨機森林算法或MLP層與y_test的差異項索引)

f_m_diff(隨機森林算法和MLP層的差異錯誤項索引)=[ ],[ ],[ ]

for index∈[0: len(forest_predict[0])] do:

當隨機森林算法和MLP層得到的結果不同時

將index記錄到f_m_index中

end for

for index∈[0: len(forest_predict或者mlp_predict [0])] do:

如果隨機森林算法或者MLP層得到的是錯誤結果

將index記錄到fm_t_index中

end for

for index∈[0: len(f_m_index)] do:

forf_m_index∈[0: len(fm_t_index)] do:

如果所針對的數據在差異項中并與實際不符

將index記錄到f_m_diff中

break

end for

returnx_test中索引值為f_m_diff中元素的DataFrame類型的對象.

其中forest_predict和mlp_predict分別表示隨機森林和MLP層的輸出結果,在算法運行時選擇其中正確率較高的輸出.

5) 完善預測結果. 獲取不確定項集合后,可將其傳遞給邏輯回歸層,需要針對這些不確定項重新訓練并更新MLP回歸模型中的邏輯回歸層參數. 用訓練集中的不確定項擬合邏輯回歸層,最后用該層預測測試集中的不確定項,再根據之前得到的輸出結果得到最終的預測結果. 獲得邏輯回歸層的訓練集過程與獲取差異項的過程基本相同. 該神經網絡模型結構如圖3所示.

圖3 隨機森林優化的網絡模型Fig.3 Network model for random forest optimization

由圖3可見,本文提出的優化算法是在原MLP回歸模型中的MLP層與邏輯回歸層之間加入了不確定項的析出算法,并使用邏輯回歸層處理這些不確定項. 對于MLP層或隨機森林的隱藏層狀態,用Sigmoid激活函數獲得其對應的輸出結果,最后用邏輯回歸層的結果完善MLP層或隨機森林算法的輸出結果.

Sigmoid二分類算法本質上是一個基于條件概率的判別模型,通常以0.5為閾值,大于0.5為正樣本,小于0.5為負樣本,是一個二分類方法. 將Sigmoid回歸函數擴展到多維特征空間,即為多維特征空間中的二分類問題[13-14]. 在多維特征空間中的Sigmoid函數公式為

(3)

其中θ表示多維參數,X為特征空間矩陣. 對于二分類問題,樣本和參數θ的條件概率函數公式為

P(y|X;θ)=(hθ(X))y(1-hθ(X))1-y,

(4)

其中y表示二分類問題輸出. 得到概率函數后,對其進行最大似然估計并對數化,公式如下:

(5)

對式(5)求參數θ的導數,得到參數梯度迭代公式為

(6)

通過在訓練集上的不斷迭代,得到導數的近似極值,該過程稱為梯度上升,最后獲得最佳參數θ和可用模型.

3 實 驗

3.1 數據集

表1為2013年和2017年貸款客戶數據集,其取自于lend club借貸網站(https://www.lendingclub.com/info/download-data.action)中的貸款客戶信息,其中包含客戶的靜態信息(如收入、工作、家庭條件等)和動態信息(客戶的歷史信用等).

表1 2013年和2017年貸款客戶數據集

本文主要使用該數據集中的loan_amnt,funded_amnt等屬性進行隨機森林的初次預測,而home_own,desc等屬性作為多層感知機初次預測的屬性. 由于數據量過大,本文截取了2013年和2017年的數據進行分析,其中LoanStats3a數據集樣本數量為42 540個,屬性數量為135個,LoanStats_2017Q1數據集樣本數量為42 536個,屬性數量為66個.

3.2 數據初始化

先用多種數據預處理算法,去除數據的冗余屬性,降低特征數量,然后分析數據集中各項屬性的相關性,去除分析結果中低的正相關性和負相關性特征(即移除冗余特征),填充與結果相關的殘缺屬性值. 獲得可用的數據集后,對該數據集進行多種算法測試,考察其性能及進行特征提取前后對測試結果的影響,獲得的數據結果將作為調整該模型結構的理論依據.

通過下列過程完成對初始數據的預處理:

1) 用統計屬性中相同項個數確定是否是唯一屬性,刪除數據集中的唯一屬性,如id,member_id和sub_grade等屬性;

2) 處理數據集中的非數值數據,去除int_rate中的“%”,只保留其數值部分并轉換成float類型;將loan_status屬性中的“fully paid”全部用1代替,“charged off”全部用0代替,其他字段全部用Nan代替;將數據集中“n/a”全部使用Nan值替換,然后刪除loan_status屬性中為Nan的樣本,因為loan_status作為結果集,不允許其值為Nan;

3) 刪除數據集中為Nan的屬性或樣本;

4) 處理數據項中數據類型為object,int,float屬性的殘缺值,若數據項中的值為0,Nan為空即為缺失項,缺失率(缺失項占總體的百分數)計算公式為

(7)

其中L表示目標屬性的長度,num表示目標屬性為0的個數;

5) 經過上述對數據的清洗后,計算數據集屬性間的線性相關系數,公式為

(8)

其中Cov(X,Y)表示X與Y的協方差,Var(X)表示X的方差,Var(Y)表示Y的方差,X和Y是輸入的屬性特征,最后只保留|r(X,Y)|>0.7,r(X,Y)∈[0,1]的屬性; 由式(8)得到一個n×n維的下三角相關性系數矩陣,其中n為數據集屬性個數.

6) 填充缺失的數據,數值型或自定義類型的屬性填充均值或1,object類型的屬性在本屬性的定義域中隨機選擇.

經過處理后可得兩個數據集feature1.csv和feature2.csv,其信息列于表2.

表2 預處理后的數據集信息

該模型將數據集按屬性分為兩組(集合S和Z),實驗觀察不同算法在數據集Z上的性能,統計其在該數據集中可獲得不確定項集合的大小,選擇其中最佳的搭配方案. 完成上述工作后,提取出之前在訓練集上的不確定項進行訓練,更新MLP回歸模型的邏輯回歸層參數.

3.3 實驗分析

構建該模型前,先單獨分析了MLP、隨機森林、邏輯回歸交叉驗證(CLF)和邏輯回歸(LR)算法在feature1數據集上的性能,因為這些結果有助于更好地調整該模型的結構和參數,最后選擇其中一個對MLP回歸模型進行優化. 在實驗分析中會在數據預處理后加入PCA算法進行對比. 數據統計結果表明,CLF算法和PCA算法對其他算法的最終預測結果具有反作用,所以可考慮在實驗中去掉該流程. 上述各算法在訓練集、測試集及帶有PCA過程的測試集上進行10次預測結果的平均F1值列于表3. 由表3可見,各算法數據之間的差別不明顯,所以本文以圖的形式(圖4)顯示它們之間的區別,為增加數據之間的差距,圖4中只顯示F1值超過0.8的部分.

表3 不同算法在訓練集和測試集上的預測平均F1值

圖4 不同算法的平均預測F1值Fig.4 Average prediction F1 value of different algorithms

優化的MLP回歸模型進行隱藏層狀態糾正要用兩種異構算法,在MLP回歸模型中,MLP層是經典的神經網絡結構,其主要解決分類和預測相關的問題,在本文模型中仍使用MLP層處理數據集S,探索另外一個能與MLP層搭配的其他算法. 對數值型數據集的分析,按無特征提取算法的性能,應采取性能較好的邏輯回歸算法. 但在測試中發現,MLP層搭配邏輯回歸算法的結構不能獲得足夠的不確定項,導致無法析出更多的錯誤以便于糾錯(不確定項集合中幾乎都是錯誤項),所以將對處理數據集Z的算法修改為隨機森林算法,以得到更大的不確定項集合,因此,MLP層搭配隨機森林算法的結構得到的不確定項最多.

實驗中發現,使用邏輯回歸層的兩個條件概率都服從Laplace分布,所以penalty設為l1. 參數C為正則化系數的倒數,表示正則化的程度,糾錯模型使用的數據集,樣本規模小、隨機因素大,導致其正則化程度小,所以參數C應設為1;參數fit_intercept表示是否存在截距或偏差,通常設為true;迭代次數max_iter設為100,其值越大,代價函數收斂程度越高. 模型中MLP層的參數設置如下:隱藏層設為100×200×100,激活函數為ReLU. 圖5為ReLU,Sigmoid和tanh函數的曲線. 優化器使用L-BFGS,實驗使用的數據集有較多的屬性數量,在每次迭代時都要存儲近似Hesse矩陣,占用了過多的存儲空間,降低了算法效率. L-BFGS算法是BFGS算法的一種改進算法,其只保存最近的m次迭代信息,以降低數據的存儲空間,提高算法效率. 使用該優化器訓練輸入層和輸出層的權重和偏置.

經過上述過程,對不確定項的預測即具備了實現的前提條件. 本文引入兩個對比模型: 模型1為使用原MLP回歸模型中已經訓練好的邏輯回歸層參數對其進行預測,試驗結果表明,預測結果并不理想,準確率多數達不到20%;模型2為將所有訓練集中的不確定項作為邏輯回歸層的訓練集訓練并更新邏輯回歸層的參數,實驗結果表明,參數更新后的邏輯回歸層具有良好的預測結果. 圖6為上述兩個模型的糾錯結果對比.

圖5 ReLU,Sigmoid和tanh函數曲線Fig.5 Function curves of ReLU,Sigmoid and tanh

圖6 模型1和模型2糾錯結果對比Fig.6 Comparison of error correction results of model 1 and model 2

圖7為實驗的最終結果. 選擇實驗數據集feature2進行預測,與數據集feature1相比,該數據集有更少的數據屬性,對這兩個數據集相同部分的預處理使用對feature1數據集的處理方法,只保留feature1數據集實驗中用到的屬性.

圖7 不同數據集上本文算法的實驗結果Fig.7 Experimental results of proposed algorithm on different data sets

在使用feature2數據集的實驗中發現,如果只使用傳統預測方法將獲得比初次實驗更低的預測率,這是因為數據集維度的降低導致算法不能更大范圍地提取影響實驗結果. 但在獲取不確定項過程中卻性能更好,每次測試都會得到很多不確定項,從而有利于糾正大量的錯誤,糾錯率較好. 對于不在不確定項中的錯誤預測結果,多是來源于采集數據的自身誤差或是數據集外的因素,其不屬于因為數據集特征屬性殘缺帶來的預測誤差. 導致這些錯誤的因素較復雜,對其糾正存在更高的難度,相對于整個算法的成本不再具有更高的預測價值.

經過一系列的結構調整和局部算法的參數修改,得到最終的模型結構. 該模型總體的實驗結果表明,在多種實驗數據集中,該算法總能較好地提高最終預測效率. 一般情況下,特征完整的數據集與非特征完整的數據集相比,獲得的不確定項數目較少. 在實際數據挖掘中,采集的數據總會存在或多或少的殘缺和誤差,從而給不確定項的獲取提供了條件,所以可證明析出不確定項并對其進行改進的思路可行(在不同的應用領域或數據集表現有差別). 圖7是對該模型在feature1和feature2數據集上進行15次測試得到的最終結果(包括預處理后使用PCA重要特征提取算法),在產生不確定項前對MLP層和隨機森林算法的初次分類結果在圖7中分別用初次預測1和初次預測2表示.

綜上所述,相對基于特征降維的神經網絡預測模型,本文優化模型能更全面地分析實際問題,獲得更合理的預測結果. 本文模型的改進之處是MLP回歸模型的邏輯回歸層不再用于處理全連接層的輸出狀態,而是用于獲取不確定項的預測結果,這些不確定項中包含了一般神經網絡可能忽略的數據特征. 對于數據中顯然的特征,都可被MLP回歸模型的全連接層或隨機森林算分析和處理,只需在輸出位置連接一個Softmax或Sigmoid分類器即可獲得分類結果. 在很多較復雜的分類問題中,因為大量的屬性特征具有錯綜復雜的相關關系,很多神經網絡模型未對其進行完整分析,因此通過某種方式劃分數據集并獨立分析是一種較好的方法.

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 久久国产精品国产自线拍| 美女无遮挡拍拍拍免费视频| 国产jizzjizz视频| 国产国模一区二区三区四区| 国产在线视频自拍| 精品中文字幕一区在线| 亚洲a免费| 成年看免费观看视频拍拍| 国产成人一区二区| 91最新精品视频发布页| Jizz国产色系免费| 国产亚洲高清在线精品99| 国产在线自乱拍播放| 91外围女在线观看| 欧美爱爱网| 国产精品视频第一专区| 国产成人精品18| 成人综合在线观看| 国产精品v欧美| 久久这里只有精品66| 亚洲中文字幕在线一区播放| 国产精品第三页在线看| 波多野结衣一区二区三区四区| 国产精品第三页在线看| 亚洲一区二区三区麻豆| 亚洲天堂网2014| 超碰aⅴ人人做人人爽欧美| 亚洲成人网在线观看| 亚洲人成网18禁| 欧美日韩高清| 一级毛片免费不卡在线 | 日韩欧美国产综合| 美女无遮挡免费视频网站| 亚洲第一视频免费在线| 国产三级毛片| 中文字幕免费在线视频| 日韩福利在线视频| 国产精品毛片一区| 国产精品99久久久久久董美香| A级毛片高清免费视频就| 99久久精品免费看国产免费软件 | 天天综合网色中文字幕| 久久人人爽人人爽人人片aV东京热 | 少妇精品久久久一区二区三区| 日本三级精品| 国内精品自在自线视频香蕉| 欧美激情福利| 国产91视频免费观看| 亚洲AV无码久久天堂| 成人福利在线观看| 亚洲美女操| 国产精品熟女亚洲AV麻豆| 亚洲天堂在线视频| 国产成人久久综合777777麻豆 | 婷婷综合在线观看丁香| 国产aⅴ无码专区亚洲av综合网 | 欧美日韩成人在线观看| 狠狠色婷婷丁香综合久久韩国| 极品国产在线| 国产一级裸网站| 波多野结衣在线se| 日韩成人午夜| 久久精品人妻中文视频| 男女猛烈无遮挡午夜视频| 人妻中文字幕无码久久一区| 极品尤物av美乳在线观看| 成人无码区免费视频网站蜜臀| 国产精品嫩草影院av| 国内熟女少妇一线天| 最新无码专区超级碰碰碰| 欧美精品v| 四虎成人在线视频| 天堂岛国av无码免费无禁网站| 国产欧美日本在线观看| 免费观看三级毛片| 国产美女一级毛片| 亚洲黄色激情网站| 一本大道视频精品人妻 | 免费国产好深啊好涨好硬视频| 欧美日韩午夜| 国产真实自在自线免费精品| 国产在线日本|