亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于隨機森林優(yōu)化的自組織神經(jīng)網(wǎng)絡算法

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

        李永麗,王 浩,金喜子

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

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

        1 預備知識

        1.1 特征降維算法

        1.2 隨機森林算法

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

        1.3 MLP回歸模型

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

        圖2 MLP模型Fig.2 Model of MLP

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

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

        (1)

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

        (2)

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

        2 優(yōu)化的MLP回歸模型

        本文提出的優(yōu)化MLP回歸模型流程包括:數(shù)據(jù)集預處理、數(shù)據(jù)集分組、建立神經(jīng)網(wǎng)絡模型、獲得不確定項以及完善預測結果.

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

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

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

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

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

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

        算法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:

        如果所針對的數(shù)據(jù)在差異項中并與實際不符

        將index記錄到f_m_diff中

        break

        end for

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

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

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

        圖3 隨機森林優(yōu)化的網(wǎng)絡模型Fig.3 Network model for random forest optimization

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

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

        (3)

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

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

        (4)

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

        (5)

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

        (6)

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

        3 實 驗

        3.1 數(shù)據(jù)集

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

        表1 2013年和2017年貸款客戶數(shù)據(jù)集

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

        3.2 數(shù)據(jù)初始化

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

        通過下列過程完成對初始數(shù)據(jù)的預處理:

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

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

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

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

        (7)

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

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

        (8)

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

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

        經(jīng)過處理后可得兩個數(shù)據(jù)集feature1.csv和feature2.csv,其信息列于表2.

        表2 預處理后的數(shù)據(jù)集信息

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

        3.3 實驗分析

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

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

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

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

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

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

        圖5 ReLU,Sigmoid和tanh函數(shù)曲線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為實驗的最終結果. 選擇實驗數(shù)據(jù)集feature2進行預測,與數(shù)據(jù)集feature1相比,該數(shù)據(jù)集有更少的數(shù)據(jù)屬性,對這兩個數(shù)據(jù)集相同部分的預處理使用對feature1數(shù)據(jù)集的處理方法,只保留feature1數(shù)據(jù)集實驗中用到的屬性.

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

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

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

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

        猜你喜歡
        預處理邏輯森林
        刑事印證證明準確達成的邏輯反思
        法律方法(2022年2期)2022-10-20 06:44:24
        邏輯
        創(chuàng)新的邏輯
        女人買買買的神邏輯
        37°女人(2017年11期)2017-11-14 20:27:40
        基于預處理MUSIC算法的分布式陣列DOA估計
        制導與引信(2017年3期)2017-11-02 05:16:56
        哈Q森林
        哈Q森林
        哈Q森林
        淺談PLC在預處理生產(chǎn)線自動化改造中的應用
        哈Q森林
        2018天天躁夜夜躁狠狠躁| 日本二区视频在线观看| 久久精品国产亚洲av豆腐| 亚洲av无码精品无码麻豆| 亚洲а∨精品天堂在线| 欧美中文在线观看| 蜜桃av区一区二区三| 人成在线免费视频网站| 性xxxx18免费观看视频| 色窝窝在线无码中文| 国产高清亚洲精品视频| 国产精品国产三级野外国产| 韩国三级中文字幕hd| 欧美国产亚洲日韩在线二区| 农村国产毛片一区二区三区女| 福利视频一区二区三区| 99亚洲男女激情在线观看| 亚洲自拍另类欧美综合| 91精品啪在线观看国产色| 国产女人好紧好爽| 国产chinese男男gay视频网| 仙女白丝jk小脚夹得我好爽| 国产精品久久av色婷婷网站| 亚洲人交乣女bbw| 在线中文字幕有码中文| 蜜桃在线一区二区三区| 日韩精品视频久久一区二区 | 日韩在线一区二区三区免费视频 | 国产日本精品一二三四区| 国产精品成人观看视频| 欧美中文字幕在线看| 亚洲av天堂一区二区| 乱中年女人伦| 国产极品美女高潮无套在线观看| 国产一区二区在线观看视频免费| 不卡的高清av一区二区三区| 成人免费看吃奶视频网站| AⅤ无码精品视频| 性生大片免费观看性少妇| 亚洲日韩一区二区一无码| av无码av在线a∨天堂app|