国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FNN模型的決策算法研究

2020-12-25 06:07:58侯慶山邢進(jìn)生
關(guān)鍵詞:鳶尾花神經(jīng)網(wǎng)絡(luò)分類

侯慶山,邢進(jìn)生

(山西師范大學(xué) 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,山西 臨汾 041000)

0 引 言

數(shù)據(jù)挖掘技術(shù)的不斷發(fā)展和完善,吸引了相關(guān)信息產(chǎn)業(yè)和大量研究人員的注意。隨著計(jì)算機(jī)相關(guān)技術(shù)的不斷成熟和進(jìn)步,數(shù)據(jù)量變得越來(lái)越龐大,更多的數(shù)據(jù)可以被利用。利用相關(guān)的數(shù)據(jù)挖掘技術(shù)可以將這些數(shù)據(jù)轉(zhuǎn)化為更有意義的信息和知識(shí)。收集到的信息可以應(yīng)用到市場(chǎng)調(diào)查、生產(chǎn)控制、進(jìn)化分析和科學(xué)探索[1-2]等領(lǐng)域。樣本分類是一種重要的數(shù)據(jù)挖掘技術(shù),涉及到從現(xiàn)實(shí)世界的大型數(shù)據(jù)庫(kù)中提取出有效的知識(shí)模式。與有效知識(shí)數(shù)據(jù)挖掘的相關(guān)研究是非常重要的,決策過程的復(fù)雜程度以及決策結(jié)果的好壞往往取決于所用的分類方法是否有效。

由于輸入數(shù)據(jù)的不精確性、模糊性、類別間邊界的重疊性以及特征定義的不明確性,在對(duì)數(shù)據(jù)樣本進(jìn)行分類時(shí)的任何階段都可能存在不確定性。傳統(tǒng)的樣本分類算法中證據(jù)理論是模糊決策的有效工具,在對(duì)樣本分類時(shí),往往需要對(duì)樣本的特征進(jìn)行篩選、降維以及為樣本分配權(quán)重等處理。這些處理過程往往需要人工的參與,因此傳統(tǒng)的樣本分類算法通常是比較復(fù)雜的。首次出現(xiàn)的Dempster-Shafer證據(jù)理論[3]被認(rèn)為是智能系統(tǒng)中推理不確定性信息的有效模型,但當(dāng)高度沖突的證據(jù)被組合起來(lái)時(shí),樣本數(shù)據(jù)的分類結(jié)果往往是錯(cuò)誤的[4-6]。Murph等人[7]提出了一種基于計(jì)算所有證據(jù)平均值的證據(jù)組合方法,但并沒有考慮證據(jù)權(quán)重對(duì)于融合結(jié)果的影響,將所有的權(quán)重設(shè)定為同一值。Han等人[8]提出了一種改進(jìn)的基于證據(jù)距離測(cè)量的平均組合方法,每個(gè)證據(jù)主體的權(quán)重都被考慮在內(nèi)。但其組合規(guī)則不能有效地處理高度沖突的證據(jù)組合。Deng等人[9]提出了一種新的加權(quán)平均證據(jù)組合方法,但隨著樣本特征增多,利用不確定性度量來(lái)確定證據(jù)主體的權(quán)重變得困難。

總體上看,數(shù)據(jù)樣本分類[10-11]就是發(fā)現(xiàn)區(qū)分?jǐn)?shù)據(jù)類型的相關(guān)模型算法,以便模型能夠預(yù)測(cè)具有未知類標(biāo)簽值的樣本。人工神經(jīng)網(wǎng)絡(luò)[12-14]是一種流行的數(shù)據(jù)建模工具,可以執(zhí)行類似于人腦的智能任務(wù)。多層感知器反向傳播網(wǎng)絡(luò)[15-16]算法是神經(jīng)網(wǎng)絡(luò)領(lǐng)域中進(jìn)行數(shù)據(jù)分類的可靠方法之一。徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)[17-18]是另一種利用徑向基函數(shù)作為激活函數(shù)的強(qiáng)大神經(jīng)網(wǎng)絡(luò)模型。此外,針對(duì)輸入樣本數(shù)據(jù)的不確定性,基于經(jīng)典集合論的模糊集合論[19-21]在處理現(xiàn)實(shí)生活中的不確定性方面是非常靈活的。在模糊系統(tǒng)中,特征與不同樣本類別的隸屬度相關(guān)聯(lián)。

該文提出的算法與傳統(tǒng)的證據(jù)理論算法相比,利用神經(jīng)網(wǎng)絡(luò)模型并結(jié)合模糊理論對(duì)數(shù)據(jù)集進(jìn)行有效的分類,避免了人工參與樣本特征分配權(quán)重、特征選擇等問題,過程更為簡(jiǎn)單,效果更加良好。神經(jīng)網(wǎng)絡(luò)處理數(shù)值和定量數(shù)據(jù),模糊系統(tǒng)處理符號(hào)和定性數(shù)據(jù)。該算法有效地結(jié)合了這兩種方法的優(yōu)勢(shì),利用基于模糊集理論的方法將模糊系統(tǒng)的類人邏輯推理與神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)相結(jié)合,樣本分類的算法效率大幅提升。

1 基礎(chǔ)理論

1.1 模糊理論

1.1.1 模糊因素集和模糊因素權(quán)重集

模糊因素集被定義為Ω={b1,b2,…,bm},其中bi,i∈[1,m]表示第i個(gè)決定分類結(jié)果的模糊因素。W={w1,w2,…,wm},其中wi,i∈[1,m]表示第i個(gè)影響因素對(duì)分類結(jié)果的影響程度。

1.1.2 隸屬度函數(shù)

模糊決策的結(jié)果與隸屬度函數(shù)存在緊密的聯(lián)系,隸屬度函數(shù)定義如下:對(duì)于模糊數(shù)據(jù)集Ω中的任意元素bi,都有一個(gè)數(shù)F(bi)∈[0,1]與其相對(duì)應(yīng),當(dāng)bi在Ω中變動(dòng)時(shí),F(xiàn)(bi)稱作隸屬度函數(shù)。隸屬度的大小表明了輸入樣本屬于該類可能性的大小。

1.2 前饋神經(jīng)網(wǎng)絡(luò)模型

1.2.1 結(jié)構(gòu)組成

前饋神經(jīng)網(wǎng)絡(luò)由多層連續(xù)的非線性函數(shù)構(gòu)成,包含輸入層、隱含層、輸出層三部分。結(jié)構(gòu)如圖1所示。

圖1 前饋神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

1.2.2 前向傳播

前饋神經(jīng)網(wǎng)絡(luò)可通過式(1)進(jìn)行傳播。通過逐層的網(wǎng)絡(luò)傳遞,由輸出層將最終結(jié)果輸出。網(wǎng)絡(luò)的傳遞及輸出過程可由式(2)表達(dá)。

(1)

其中,fl(·)表示第l層網(wǎng)絡(luò)節(jié)點(diǎn)的激活函數(shù),W(l)∈Rm(l)×m(l-1)表示第l-1層和第l層之間的權(quán)值矩陣,其中m(l)表示第l層的節(jié)點(diǎn)個(gè)數(shù)。b(l)∈Rm(l)表示第l-1層和第l層之間的偏置值。z(l)∈Rm(l)表示第l層網(wǎng)絡(luò)節(jié)點(diǎn)的輸入值,a(l)∈Rm(l)表示第l層網(wǎng)絡(luò)節(jié)點(diǎn)的輸出值。

x=a(0)→z(1)→a(1)→z(2)→…→a(L-1)→

z(L)→a(L)

(2)

其中,L表示網(wǎng)絡(luò)的層數(shù)。

1.2.3 反向傳播

對(duì)于輸入樣本(X,y),網(wǎng)絡(luò)損失采用交叉熵?fù)p失,損失定義如式(3)所示。

(3)

(4)

(5)

通過隨機(jī)梯度下降法對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行學(xué)習(xí)和調(diào)整,在網(wǎng)絡(luò)的迭代訓(xùn)練過程中,第l層權(quán)重和偏置參數(shù)的更新可由式(6)、式(7)表達(dá)。

(6)

(7)

其中,α表示學(xué)習(xí)率。

2 算法設(shè)計(jì)與實(shí)現(xiàn)

2.1 隸屬度函數(shù)設(shè)計(jì)

考慮N個(gè)輸入樣本,每個(gè)輸入樣本包含k個(gè)屬性,輸入樣本共屬于M個(gè)類別。定義輸入樣本集S={s1,s2,…,sn},樣本屬性集A={a1,a2,…,ak},樣本類別集C={c1,c2,…,cM}。定義的樣本屬性隸屬度函數(shù)可由式(8)表達(dá)。

(8)

i∈[1,k],j∈[1,n]

式中,參數(shù)z決定了隸屬度函數(shù)的中心位置,參數(shù)e,l控制交界點(diǎn)處的斜率。隸屬度函數(shù)的形狀及位置由參數(shù)e,l,z決定,通過調(diào)控相關(guān)參數(shù)得到滿足需求的屬性隸屬度函數(shù)。輸入樣本某一類別的隸屬度可由式(9)表達(dá)。

(9)

j∈[1,n],i∈[1,k],m∈[1,M]

對(duì)輸入樣本的類別隸屬度進(jìn)行歸一化操作,可由式(10)表達(dá)。

(10)

2.2 基于模糊理論的神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)

(1)求解輸入樣本的隸屬度矩陣。

假定包含N個(gè)輸入樣本s以及M個(gè)預(yù)測(cè)類別c,每個(gè)樣本包含了k個(gè)樣本特征a。

(11)

(2)設(shè)置神經(jīng)網(wǎng)絡(luò)激活函數(shù)與網(wǎng)絡(luò)損失。

在輸入樣本前向傳播的過程中,樣本信息可由式(12)進(jìn)行表達(dá),將輸入信息z經(jīng)過網(wǎng)絡(luò)節(jié)點(diǎn)的激活函數(shù),得到網(wǎng)絡(luò)節(jié)點(diǎn)的激活值。為簡(jiǎn)化計(jì)算,神經(jīng)網(wǎng)絡(luò)的激活函數(shù)選取ReLU與Swish-B激活函數(shù),由式(13)定義表達(dá)。

(12)

式中,W=[w1,w2,…,wn]∈Rd為權(quán)重向量,b表示偏置值。

(13)

針對(duì)樣本分類問題,神經(jīng)網(wǎng)絡(luò)的損失采用交叉熵?fù)p失函數(shù),可由式(14)表達(dá)。

(14)

式中,n表示輸入樣本的數(shù)量,m表示輸入樣本種類,yij表示第i個(gè)樣本屬于分類j的標(biāo)簽值,取值為0或1。f(xij)表示樣本i被預(yù)測(cè)為j類別的概率。

(3)網(wǎng)絡(luò)參數(shù)調(diào)節(jié)。

將求解好的隸屬度矩陣輸入到神經(jīng)網(wǎng)絡(luò)中,利用反向傳播算法對(duì)網(wǎng)絡(luò)的參數(shù)進(jìn)行不斷的迭代修正。算法描述如下:

步驟:

①對(duì)網(wǎng)絡(luò)的權(quán)值參數(shù)W和b隨機(jī)初始化。

②對(duì)樣本訓(xùn)練集Ω中的樣本進(jìn)行隨機(jī)抽取排序。

③從樣本訓(xùn)練集Ω中依次選取訓(xùn)練樣本(X(n),y(n))。

④通過前向傳播計(jì)算每一層的輸入值與激活函數(shù)的值。

⑤通過反向傳播算法調(diào)整每一層的誤差值,更新網(wǎng)絡(luò)的權(quán)值與偏置值。

⑥重復(fù)步驟②~⑤直到網(wǎng)絡(luò)模型在樣本驗(yàn)證集上的錯(cuò)誤趨于穩(wěn)定。

輸出:權(quán)值矩陣W與偏置b。

(4)預(yù)測(cè)集樣本的預(yù)測(cè)。

利用訓(xùn)練好的人工神經(jīng)網(wǎng)絡(luò)對(duì)樣本預(yù)測(cè)集數(shù)據(jù)進(jìn)行預(yù)測(cè),對(duì)網(wǎng)絡(luò)性能做出評(píng)估。

3 實(shí) 驗(yàn)

3.1 相關(guān)數(shù)據(jù)集說(shuō)明

選取鳶尾花數(shù)據(jù)集作為算法網(wǎng)絡(luò)的實(shí)驗(yàn)數(shù)據(jù)集,鳶尾花數(shù)據(jù)集作為統(tǒng)計(jì)學(xué)習(xí)與樣本分類領(lǐng)域的經(jīng)典數(shù)據(jù)集,常被用于實(shí)驗(yàn)測(cè)試。數(shù)據(jù)集中記錄了150條數(shù)據(jù),分為3類鳶尾花(Iris-Setosa,Iris-Versicolour,Iris-Virginica),每類鳶尾花包含了50條數(shù)據(jù)。每條數(shù)據(jù)記錄了鳶尾花的四個(gè)特征,即花瓣的長(zhǎng)度和寬度,花萼的長(zhǎng)度和寬度,通過鳶尾花的特征預(yù)測(cè)鳶尾花的品種。

3.2 數(shù)據(jù)可視化分析

(1)讀取鳶尾花數(shù)據(jù)集的csv文件,鳶尾花數(shù)據(jù)集中的部分?jǐn)?shù)據(jù)如表1所示。每條數(shù)據(jù)包含了Sepal.Length、Sepal.Width、Petal.Length、Petal.Width四個(gè)屬性以及品種類別Species。數(shù)據(jù)集各類屬性的均值、方差、中位數(shù)、最大值和最小值等如表2所示。

表1 數(shù)據(jù)集部分?jǐn)?shù)據(jù)

表2 數(shù)據(jù)集屬性值數(shù)據(jù)

(2)繪制3類鳶尾花數(shù)據(jù)各屬性值與ID之間的關(guān)系圖,如圖2所示。

(a)花萼長(zhǎng)與ID之間關(guān)系

(b)花萼寬與ID之間關(guān)系

(c)花瓣長(zhǎng)與ID之間關(guān)系

(d)花瓣寬與ID之間關(guān)系

ID為1~50的為Setosa鳶尾花,51~100的為Versicolour鳶尾花,剩余的為Virginica鳶尾花。通過關(guān)系圖可以直觀地分析各類鳶尾花的屬性值分布范圍。

3.3 訓(xùn)練與預(yù)測(cè)

3.3.1 數(shù)據(jù)處理

在進(jìn)行相關(guān)參數(shù)設(shè)定之前,首先要對(duì)鳶尾花數(shù)據(jù)集進(jìn)行一系列的數(shù)據(jù)操作,對(duì)數(shù)據(jù)集的操作可從以下兩個(gè)方面考慮:

(1)基于3.2節(jié)的數(shù)據(jù)分析,分析鳶尾花數(shù)據(jù)集中是否存在異常點(diǎn),如果存在,將異樣點(diǎn)刪除,并處理某些樣本屬性的丟失值。丟失的樣本屬性值通常由該屬性基于統(tǒng)計(jì)信息的平均值替換。

(2)對(duì)數(shù)據(jù)集進(jìn)行相關(guān)性分析,分析樣本屬性之間是否存在相關(guān)性,如果存在,去除相關(guān)的冗余屬性。

對(duì)處理過的數(shù)據(jù)進(jìn)行劃分,將原始數(shù)據(jù)集劃分為訓(xùn)練數(shù)據(jù)集、測(cè)試數(shù)據(jù)集以及驗(yàn)證數(shù)據(jù)集三個(gè)部分。其中,訓(xùn)練數(shù)據(jù)集包含80組鳶尾花數(shù)據(jù),驗(yàn)證數(shù)據(jù)集包含40組鳶尾花數(shù)據(jù),驗(yàn)證集用于監(jiān)測(cè)過擬合現(xiàn)象以及超參數(shù)的調(diào)整,測(cè)試數(shù)據(jù)集包含30組鳶尾花數(shù)據(jù),用于驗(yàn)證模型的準(zhǔn)確性。

3.3.2 參數(shù)設(shè)定

根據(jù)鳶尾花種類,設(shè)定3種不同參數(shù)的隸屬度函數(shù),求解樣本基于不同鳶尾花種類的隸屬值。基于鳶尾花數(shù)據(jù)集的可視化分析,隸屬度函數(shù)中心位置參數(shù)Z分別設(shè)置為:Z1=5,Z2=6,Z3=7,其中Z1表示Setosa隸屬度函數(shù)的中心,Z2表示Versicolor隸屬度函數(shù)的中心,Z3表示Virginica隸屬度函數(shù)的中心。e1=1,e2=e3=2,l1=l2=l3=2。

3.3.3 神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)

基于對(duì)鳶尾花數(shù)據(jù)集的分析,設(shè)計(jì)具有單隱含層的神經(jīng)網(wǎng)絡(luò)模型,采用隨機(jī)梯度下降法對(duì)網(wǎng)絡(luò)模型的參數(shù)進(jìn)行學(xué)習(xí)。神經(jīng)網(wǎng)絡(luò)輸入層中的節(jié)點(diǎn)個(gè)數(shù)等同于隸屬度函數(shù)的種類個(gè)數(shù)。輸出層節(jié)點(diǎn)的數(shù)量與數(shù)據(jù)集中存在的類的數(shù)量相同。神經(jīng)網(wǎng)絡(luò)的輸入層為數(shù)據(jù)樣本對(duì)各類鳶尾花的隸屬度值,共有3個(gè)神經(jīng)元,輸出層為類別種類,共有3個(gè)輸出神經(jīng)元。對(duì)隱含層設(shè)置不同個(gè)數(shù)的神經(jīng)元,通過實(shí)驗(yàn)選擇最優(yōu)隱含層神經(jīng)元個(gè)數(shù),以樣本分類準(zhǔn)確率為評(píng)價(jià)指標(biāo),實(shí)驗(yàn)結(jié)果如表3所示。

表3 神經(jīng)元數(shù)目準(zhǔn)確率測(cè)試結(jié)果

根據(jù)實(shí)驗(yàn)結(jié)果,最終隱藏層神經(jīng)元數(shù)目設(shè)定為4,選取ReLU作為隱含層和輸出層的激活函數(shù),Swish-B作為輸入層和隱含層的激活函數(shù),設(shè)置網(wǎng)絡(luò)誤差為0.000 1,學(xué)習(xí)率為0.01,最大迭代次數(shù)為100。模型訓(xùn)練過程的性能變化如圖3所示。

圖3 不同隱層神經(jīng)元數(shù)目下的訓(xùn)練性能

3.3.4 數(shù)據(jù)集訓(xùn)練和預(yù)測(cè)

在神經(jīng)網(wǎng)絡(luò)的訓(xùn)練階段,首先將鳶尾花數(shù)據(jù)集分為訓(xùn)練集、驗(yàn)證集、預(yù)測(cè)集三部分,對(duì)其進(jìn)行模糊化處理。把經(jīng)模糊化處理后的訓(xùn)練集應(yīng)用于提出的模糊神經(jīng)網(wǎng)絡(luò),訓(xùn)練網(wǎng)絡(luò)以建立模糊神經(jīng)網(wǎng)絡(luò)分類模型。在測(cè)試階段,通過模糊化處理后的測(cè)試集對(duì)模型性能進(jìn)行評(píng)估,根據(jù)測(cè)試集樣本預(yù)測(cè)的準(zhǔn)確性對(duì)模型進(jìn)行評(píng)估。其詳細(xì)步驟如下:

Step1:隨機(jī)抽取鳶尾花數(shù)據(jù)集中的80條樣本數(shù)據(jù)作為訓(xùn)練集,隨機(jī)抽取40條樣本數(shù)據(jù)作為驗(yàn)證集,剩余部分?jǐn)?shù)據(jù)作預(yù)測(cè)集。

Step2:利用式(8)~式(10)求解出預(yù)測(cè)集樣本和驗(yàn)證集樣本的隸屬度矩陣D1、D2。

Step3:設(shè)置網(wǎng)絡(luò)誤差、學(xué)習(xí)率等相關(guān)參數(shù),利用訓(xùn)練集的隸屬度矩陣D1對(duì)網(wǎng)絡(luò)進(jìn)行100次的迭代訓(xùn)練,利用驗(yàn)證集的隸屬度矩陣D2對(duì)神經(jīng)網(wǎng)絡(luò)的超參數(shù)進(jìn)行調(diào)整。模型迭代過程中的損失變化如圖4所示。

圖4 模型訓(xùn)練過程中的迭代損失變化

Step4:利用測(cè)試集樣本預(yù)測(cè)的準(zhǔn)確率對(duì)模型的性能進(jìn)行評(píng)估。

3.4 實(shí)驗(yàn)結(jié)果對(duì)比

選取引言部分四種經(jīng)典的基于證據(jù)理論的樣本分類算法,計(jì)算傳統(tǒng)算法基于鳶尾花數(shù)據(jù)集的分類準(zhǔn)確率,與文中提出的樣本分類方法進(jìn)行比較,結(jié)果如圖5、表4所示。

表4 準(zhǔn)確率比較

圖5 相關(guān)算法精確度比較

隨著模糊神經(jīng)網(wǎng)絡(luò)訓(xùn)練迭代次數(shù)的增加,樣本分類的準(zhǔn)確性最終穩(wěn)定到0.98,與基于證據(jù)理論的分類算法相比,樣本分類的準(zhǔn)確率明顯提升。

4 結(jié)束語(yǔ)

由于基于證據(jù)理論的分類算法在進(jìn)行樣本分類時(shí)過于復(fù)雜,樣本的某些屬性間存在相關(guān)性。另外,在復(fù)雜數(shù)據(jù)集上,基于證據(jù)理論的樣本分類算法往往不夠理想,隨著樣本屬性的增加,算法過程變得越來(lái)越復(fù)雜,數(shù)據(jù)集中樣本的沖突變得明顯。該文提出了一種基于模糊神經(jīng)網(wǎng)絡(luò)的樣本分類算法,并采用鳶尾花數(shù)據(jù)集對(duì)算法進(jìn)行檢驗(yàn)。與傳統(tǒng)的樣本分類算法相比,一方面,基于模糊神經(jīng)網(wǎng)絡(luò)的樣本分類算法不需要過多關(guān)注求解過程中的計(jì)算以及樣本某些屬性間是否存在相關(guān)性。另一方面,基于證據(jù)理論的樣本分類算法中存在如何將權(quán)重合理分配給相關(guān)特征等問題,基于模糊神經(jīng)網(wǎng)絡(luò)的樣本分類算法引入隨機(jī)梯度下降的方法,通過多次迭代訓(xùn)練結(jié)合反向傳播算法自動(dòng)求解出合理的權(quán)重值。由實(shí)驗(yàn)結(jié)果可知,基于模糊神經(jīng)網(wǎng)絡(luò)的樣本分類算法對(duì)分類問題的平均準(zhǔn)確性為98%,樣本分類的準(zhǔn)確性與傳統(tǒng)數(shù)據(jù)算法相比顯著提高。

猜你喜歡
鳶尾花神經(jīng)網(wǎng)絡(luò)分類
鳶尾花觀察日記
分類算一算
鳶尾花
神經(jīng)網(wǎng)絡(luò)抑制無(wú)線通信干擾探究
電子制作(2019年19期)2019-11-23 08:42:00
分類討論求坐標(biāo)
鳶尾花開
童話世界(2018年35期)2018-12-03 05:23:14
數(shù)據(jù)分析中的分類討論
我有鳶尾花一樣的靈魂(外一首)
教你一招:數(shù)的分類
基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
芦溪县| 余姚市| 大荔县| 阜新| 青河县| 炎陵县| 庄河市| 浮山县| 永胜县| 阜新市| 白水县| 辽源市| 漯河市| 安塞县| 车险| 金华市| 大方县| 成安县| 金山区| 苏尼特右旗| 开封县| 星子县| 崇明县| 阿拉善左旗| 龙门县| 全南县| 丹东市| 平塘县| 明水县| 永宁县| 康马县| 石首市| 车致| 竹溪县| 广南县| 阿瓦提县| 行唐县| 玉龙| 大同县| 陈巴尔虎旗| 靖安县|