?? 3.3.3 模糊神經網絡的遺傳學習算法.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0046)http://www.jgchina.com/ednns/ednnsbk/6.3.3.htm -->
<HTML><HEAD><TITLE>3.3.3 模糊神經網絡的遺傳學習算法</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId><LINK
href="3.3.3 模糊神經網絡的遺傳學習算法.files/style.css" type=text/css rel=stylesheet></HEAD>
<BODY bgColor=#ffffff leftMargin=0 topMargin=0>
<TABLE height=1969 cellSpacing=0 cellPadding=0 width=778 border=0>
<TBODY>
<TR>
<TD width="100%" height=10>
<P><A
href="http://www.jgchina.com/ednns/ednnsbk/director.htm">回目錄</A>
<A
href="http://www.jgchina.com/ednns/ednnsbk/6.3.htm">上一頁</A>
<A href="http://www.jgchina.com/ednns/ednnsbk/7.htm">下一頁</A> </P></TD></TR>
<TR>
<TD width="100%" height=15>
<P>3.3.3 模糊神經網絡的遺傳學習算法</P></TD></TR>
<TR>
<TD width="100%" height=462>
<P>在模糊神經網絡中,也可以采用遺傳學習算法對參數進行學習。在這一節中,用一個具體的例子說明遺傳學習算法在模糊神經網絡參數學習中的情況及其結果。
</P>
<P>一、一些基本概念</P>
<P>在這一節中,假設所考慮的模糊量是實數模糊集。為了簡單起見,這些實數模糊集表示為:A、B、……、W、V。模糊量A在x處的隸屬度表示為A(x)。</P>
<P>模糊量A的<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">α</SPAN>截集表示為:</P>
<P>A[α]={x|A(x)<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>α},0<α<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>1</P>
<P>下面給出三角模糊數的定義:</P>
<P>由3個數字a<b<c所定義的N稱為三角模糊數,并且有如下性質:</P>
<P>1.當x<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>a,或x<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>c時,N(x)=0;</P>
<P>當x=b時,N(x)=1。</P>
<P>2.在[a,b]區間,從(a,0)到(b,1),y=N(x)是一條直線段;</P>
<P>在[b,c]區間,從(b,1)到(c,0),y=N(x)是一條直線段。</P>
<P>同理,可以給出三角形模糊數定義:</P>
<P>由3個數字a<b<c所定義的N稱為三角形模糊數,并且有如下性質:</P>
<P>1.當x<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>a,或x<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>c時,N(x)=0;</P>
<P>當x=b時,N(x)=1。</P>
<P>2.在[a,b]區間,y=N(x)是一條單調增曲線;</P>
<P>在[b,c]區間,y=N(x)是一條單調減曲線。</P>
<P>無論是三角模糊數或三角形模糊數,都表示為:N=(a/b/c)。</P>
<P>如果a<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>0,則稱N<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>0。</P>
<P>模糊數N的模糊測度表示為f<SUB>uzz</SUB>(N),并且有:</P>
<P>f<SUB>uzz</SUB>(N)=b—a</P>
<P>如果有f<SUB>uzz</SUB>(M)<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>f<SUB>uzz</SUB>(N),則稱M比N更模糊。</P>
<P>如果有M(x)<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>N(x),對所有x,則表示為M<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≥</SPAN>N。</P>
<P>二、模糊神經網絡結構</P>
<P>在這一節中,所給出的模糊神經網絡是三層前向網絡,它的輸人,權系數都是模糊數。模糊神經網絡的結構如圖3—13中所示。</P>
<P align=center><IMG height=212
src="3.3.3 模糊神經網絡的遺傳學習算法.files/6.3.3.38.gif" width=500 border=0></P>
<P align=center>圖3-13 模糊神經網絡</P></TD></TR>
<TR>
<TD width="100%" height=65>
<P>在圖3—13中,輸入X.權系數w,v是三角模糊數,輸出Y和目標T可以是三角形模糊數。 </P>
<P>除了輸入層之外,所有的神經元都有激發函數y=f(x),并且f是連續從R到[-t,t]的非單調減映射,t是正整數,R是實數域。</P>
<P>在隱層中,第i個神經元的輸入為I<SUB>i</SUB>,有:</P>
<P>I<SUB>i</SUB>=X.W<SUB>i</SUB>, 1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>i<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>4
(3.146)</P>
<P>而第i個神經元的輸出為Z<SUB>i</SUB>:</P>
<P>Z<SUB>i</SUB>=f(I<SUB>i</SUB>),
1<i<4
(3.147)</P>
<P>在輸出層,輸出神經元的輸入為I<SUB>0</SUB></P>
<TABLE cellSpacing=0 cellPadding=0 width="80%" align=center border=0>
<TBODY>
<TR>
<TD width="78%"><IMG height=40
src="3.3.3 模糊神經網絡的遺傳學習算法.files/6.3.3.39.gif" width=316 border=0></TD>
<TD width="22%">(3.148)</TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD width="100%" height=489>
<P>而在輸出層產生的輸出為Y </P>
<P>Y=f(I<SUB>0</SUB>)
(3.149)</P>
<P>為了對模糊神經網絡進行學習,所用的訓練數據為</P>
<P>(X<SUB>1</SUB>,T<SUB>I</SUB>),1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>I<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>L</P>
<P>其中:T<SUB>I</SUB>是在x<SUB>1</SUB>為輸入時所需的輸出。</P>
<P>學習中,實際輸出為Y<SUB>1</SUB>, 1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>I<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>L。</P>
<P>圖3—13中所示的模糊神經網絡的學習問題就是在輸人為x<SUB>1</SUB>時,找尋最優的權系數W<SUB>i</SUB>,V<SUB>i</SUB>,使實際輸出Y<SUB>l</SUB>逼近于T<SUB>1</SUB>,1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>L。</P>
<P>三、模糊神經網絡的遺傳學習算法</P>
<P>遺傳算法是一種直接隨機搜索方法,它的主要步驟包括編碼、選擇、交叉、變異等。其原理在3.2節中已說明。在這里只對優化過程的目標函數及一些參數加以介紹。</P>
<P>1.模糊救</P>
<P>因3—13所示的模糊神經網絡,優化的目的是找尋最優的權系數W<SUB>i</SUB>、V<SUB>i</SUB>:</P>
<P>W<SUB>i</SUB>=(W<SUB>i1</SUB>/W<SUB>i2</SUB>/W<SUB>i3</SUB>)
(3.150)</P>
<P>V<SUB>i</SUB>=(V<SUB>i1</SUB>/V<SUB>i2</SUB>/V<SUB>i3</SUB>)
(3.151)</P>
<P>其中:1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>i<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>4</P>
<P>W<SUB>i2</SUB>=(W<SUB>i1</SUB>+W<SUB>i3</SUB>)/2</P>
<P>V<SUB>i2</SUB>=(V<SUB>i1</SUB>+V<SUB>i3</SUB>)/2</P>
<P>從上兩式可知:只要知道W<SUB>i1</SUB>、W<SUB>i3</SUB>和V<SUB>i1</SUB>、V<SUB>i3</SUB>,就可以確定權系數W<SUB>i</SUB>和V<SUB>i</SUB>。因此,遺傳算法只需對模糊權系數W<SUB>i</SUB>、V<SUB>i</SUB>的支持集進行追蹤尋優即可。因此,群體的個體編碼表示為P:</P>
<P>P=(W<SUB>11</SUB>,W<SUB>13</SUB>,......,V<SUB>41</SUB>,V<SUB>43</SUB>)
(3.152)</P>
<P>P的編碼采用二進制數。</P>
<P>2.遺傳算法的有關參數</P>
<P>遺傳算法的參數主要有3個,它們分別是群體數s,交叉車c,變異率M。一般是按經驗進行選取。在這里,這些參數確定如下:</P>
<P>S=2000</P>
<P>C=0.8</P>
<P>M=0.0009</P>
<P>3.優化的目標函數</P>
<P>設Y<SUB>1</SUB>的<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">α</SPAN>截集為Y<SUB>1</SUB>[<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">α</SPAN>],有</P>
<P>Y<SUB>l</SUB>[α]=[y<SUB>l1</SUB>(α),y<SUB>l2</SUB>(α)]
(3.153)</P>
<P>設T<SUB>l</SUB>的α截集為T<SUB>l</SUB>[α],有</P>
<P>T<SUB>l</SUB>[]=[t<SUB>l1</SUB>(α),t<SUB>l2</SUB>(α)]
(3.154)</P>
<P>α<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">∈</SPAN>{0,0.1,0.1,......,0.9,1.0}</P>
<P>則定義</P>
<TABLE cellSpacing=0 cellPadding=0 width="80%" align=center border=0>
<TBODY>
<TR>
<TD width="70%"><IMG height=43
src="3.3.3 模糊神經網絡的遺傳學習算法.files/6.3.3.40.gif" width=288 border=0></TD>
<TD width="30%">(3.155)</TD></TR>
<TR>
<TD width="70%"><IMG height=39
src="3.3.3 模糊神經網絡的遺傳學習算法.files/6.3.3.41.gif" width=284 border=0></TD>
<TD width="30%">(3.156)</TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD width="100%" height=45>
<P>E=E<SUB>1</SUB>+E<SUB>2</SUB> </P>
<P>遺傳算法的目的就是尋找恰當的權系數Wi,Vi的值趨于0。</P>
<P>4.模糊神經網絡的激發函數</P>
<P>圖3—13所示的模糊神經網絡中,隱層和輸出層的激發函數f的意義如下:</P>
<TABLE cellSpacing=0 cellPadding=0 width="80%" align=center border=0>
<TBODY>
<TR>
<TD width="70%"><IMG height=80
src="3.3.3 模糊神經網絡的遺傳學習算法.files/6.3.3.42.gif" width=256 border=0></TD>
<TD width="30%">(3.157)</TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD width="100%" height=349>
<P>其中:t是正整數,一般根據應用情況選擇t的值。由于輸出的目標模糊數T在[-1,1]區間之內,故在輸出層中t的值通常取1。
<P>四、學習情況</P>
<P>采用遺傳算法對圖3—13的模糊神經網絡進行學習之后,可得出在不同輸入輸出要求下的學習結果。在這里給出一些具體的學習結果。</P>
<P>1.基本概念</P>
<P>(1)相同模糊度</P>
<P>如果對于輸入X<SUB>1</SUB>和目標T<SUB>I</SUB>,存在:</P>
<P>f<SUB>uzz</SUB>(X<SUB>I</SUB>)=f<SUB>uzz</SUB>(T<SUB>I</SUB>), 1<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>I<SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋體; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">≤</SPAN>L</P>
<P>則稱輸入和輸出有相同模糊度,亦稱等模糊。</P>
<P>(2)過模糊</P>
<P>如果對于輸入X1和目標T1,存在:</P>
<P>f<SUB>uzz</SUB>(X<SUB>I</SUB>)<f<SUB>uzz</SUB>(T<SUB>I</SUB>),
1<SPAN
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -