自組織競爭神經網絡ppt課件_第1頁
自組織競爭神經網絡ppt課件_第2頁
自組織競爭神經網絡ppt課件_第3頁
自組織競爭神經網絡ppt課件_第4頁
自組織競爭神經網絡ppt課件_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第8章 自組織競爭神經網絡,編 者,.,Outline,1.競爭神經網絡 2.競爭神經網絡的學習算法 3.自組織特征映射網絡 4. SOM的學習算法 5.學習矢量量化網絡 6.自組織競爭網絡相關函數(shù)詳解 7.自組織競爭神經網絡應用實例,.,1.競爭神經網絡,采用競爭學習的規(guī)則即可構成最簡單的競爭神經網絡,在此基礎上,還發(fā)展了形形色色的自組織網絡。,“勝者為王,敗者為寇” 。興奮最強的神經元“戰(zhàn)勝”了其他神經元,在權值調制中其興奮程度得到進一步加強,而其他神經元則保持不變。 競爭神經網絡通過這種競爭學習的方式獲取訓練樣本的分布信息,每個訓練樣本都對應一個興奮的核心層神經元,也就是對應一個類別,當

2、有新樣本輸入時,就可以根據(jù)興奮的神經元進行模式分類。,.,2.競爭神經網絡的學習算法,內星學習規(guī)則,內星模型訓練的目標是使得神經元只對某些特定的輸入向量產生興奮。這一點是通過連接權值的逐步調整得到的。,隨機權值中有一個被激活,其權值按上式向輸入樣本的方向調整,會變得越來越“像”輸入樣本 如果對內星模型輸入多個樣本進行訓練,最終得到的網絡權值趨近于各輸入向量的平均值。,.,2.競爭神經網絡的學習算法,Kohonen學習規(guī)則,在競爭型神經網絡中,有可能某些神經元始終無法贏得競爭,其初始值偏離所有樣本向量,因此無論訓練多久都無法成為獲勝神經元。這種神經元稱為“死神經元”。 可以給很少獲勝的神經元以較

3、大的閾值,使其在輸入向量與權值相似性不太高的情況下也有可能獲勝;而對那些經常獲勝的神經元則給以較小的閾值 。有效解決了“死神經元”問題。,競爭神經網絡采用的Kohonen學習規(guī)則是從內星學習規(guī)則發(fā)展而來的。,閾值學習規(guī)則,.,3.自組織特征映射網絡,自組織特征映射網絡(Self-Organizing Feature Maps,SOFM)又稱自組織映射網絡(SOM)。自組織映射網絡是一種競爭性神經網絡,同時引入了自組織特性。 自組織現(xiàn)象來源于人腦細胞的自組織性:大腦中不同區(qū)域有著不同的作用,不同的感官輸入由不同位置的腦細胞進行處理,這種特性不完全來自遺傳,更依賴于后天的學習和訓練。,自組織映射網

4、絡除了能學習輸入樣本的分布外,還能夠識別輸入向量的拓撲結構,.,3.自組織特征映射網絡,自組織神經網絡同樣包含輸入層、輸出層兩層網絡,但在輸出層引入網絡的拓撲結構,以更好地模擬生物學中的側抑制現(xiàn)象。,輸入神經元與輸出神經元通過權值相連,同時,近鄰的輸出神經元之間也通過權值向量相連。輸出神經元被放置在一維、二維甚至多維的網格節(jié)點中,最常見的是二維拓撲結構。,.,4. SOM的學習算法,競爭網絡與SOM網絡的主要區(qū)別在于: 在競爭神經網絡中不存在核心層之間的相互連接,在更新權值時采用了勝者全得的方式,每次只更新獲勝神經元對應的連接權值; 而在自組織映射網絡中,每個神經元附近一定鄰域內的神經元也會得

5、到更新,較遠的神經元則不更新,從而使幾何上相近的神經元變得更相似。,.,4. SOM的學習算法,使用learnsom函數(shù)進行自組織映射網絡的學習 。在learsom函數(shù)學習過程中,學習率與鄰域大小是可調的。在訓練過程中分為兩個階段進行調節(jié):,排序階段:在排序階段,隨著迭代的進行,學習率從下降到,鄰域大小從下降到。在這個階段,權值根據(jù)輸入向量進行調整,使其相對位置體現(xiàn)了輸入樣本的分布。 調整階段:在這個階段,學習率從開始以緩慢的速度下降,鄰域大小則保持為不變,以確保學習的穩(wěn)定性,學習率有 、 兩個給定的參考值,且 ,鄰域大小也有兩個給定的參考值:,.,4. SOM的學習算法,(1)設定變量。,(

6、2)初始化。權值使用較小的隨機值進行初始化,并對輸入向量和權值都做歸一化處理,(3)將隨機抽取的樣本輸入網絡。,(4)更新權值。對獲勝神經元拓撲鄰域內的神經元,采用Kohonen規(guī)則進行更新,.,4. SOM的學習算法,(5)更新學習速率及拓撲鄰域,并對學習后的權值進行重新歸一化。學習率和鄰域大小的調整按排序階段、調整階段兩步來進行。 (6)判斷是否收斂。判斷迭代次數(shù)是否達到預設的最大值,若沒有達到最大迭代次數(shù)則轉到第三步,否則結束算法。,.,5.學習矢量量化網絡,自組織映射網絡具有有效的聚類功能,但由于沒有采用導師信號,適合無法獲知樣本類別的情況。將自組織競爭的思想與有監(jiān)督學習相結合,這就是

7、學習矢量量化網絡(Learning Vector Quantization,LVQ) 。 LVQ是SOM網絡的一種變形,它在原有兩層結構的基礎上增加了線性層,競爭層得到的類別稱為子類,輸出層又稱線性層,線性層的類別標簽是由導師信號給出的,是目標分類。,.,6.自組織競爭網絡相關函數(shù)詳解,gridtop網格拓撲函數(shù),pos=gridtop(dim1,dim2,dimN) gridtop(2,3,4)表示 的三維拓撲結構,用gridtop創(chuàng)建一個包含40個輸出層神經元節(jié)點的網格,并輸入到selforgmap函數(shù)中。 pos = gridtop(8,5);% 創(chuàng)建網格 pos% 神經元的坐標 net

8、 = selforgmap(8 5,topologyFcn,gridtop); plotsomtop(net)% 顯示網絡,.,6.自組織競爭網絡相關函數(shù)詳解,hextop六邊形拓撲函數(shù),pos=hextop(dim1,dim2,dimN) 顯示三維六邊形拓撲結構。 pos = hextop(3,4,2);% 建立3*4的兩層六邊形 pos plot3(pos(1,:),pos(2,:),pos(3,:),o) % 顯示節(jié)點位置 title(hex拓撲) set(gcf,color,w),.,6.自組織競爭網絡相關函數(shù)詳解,randtop隨機拓撲結構函數(shù) : pos=randtop(dim1,

9、dim2,dimN) 神經元節(jié)點被安排在N維的空間中,節(jié)點的位置都是隨機給定的。 創(chuàng)建一個隨機拓撲結構的自組織映射網絡,并顯示網絡結構 pos = randtop(8,5); rng(2)% 設置隨機數(shù)種子 net = selforgmap(8 5,topologyFcn,randtop); plotsomtop(net),.,6.自組織競爭網絡相關函數(shù)詳解,tritop三角拓撲函數(shù) pos=tritop(dim1,dim2,dimN),神經元節(jié)點被安排在N維的空間中,節(jié)點按三角形的形狀排列。 pos = tritop(8,5);% 三角拓撲函數(shù) net = selforgmap(8 5,to

10、pologyFcn,tritop); plotsomtop(net),.,6.自組織競爭網絡相關函數(shù)詳解,dist、boxdist、linkdist、mandist距離函數(shù),(1)歐氏距離,Z = dist(W,P),(2)boxdist函數(shù)用于求得的距離是向量個分量絕對差的最大值,(3)linkdist是newsom的默認距離函數(shù),(4)Manhattan距離,即曼哈頓距離,也就是出租車幾何距離,相當于向量之差的1-范數(shù)。,.,6.自組織競爭網絡相關函數(shù)詳解,網絡中輸入層包含3個神經元,輸出層包含4個神經元,給定一個三維輸入向量,計算其與各個輸出神經元對應權值之間的歐氏距離。 網絡中輸入層包

11、含3個神經元,輸出層包含4個神經元,給定一個三維輸入向量,計算其與各個輸出神經元對應權值之間的歐氏距離。 rng(0) W = rand(4,3)% 權值矩陣 P = rand(3,1)% 輸入列向量 Z1 = dist(W,P),.,6.自組織競爭網絡相關函數(shù)詳解,newc競爭網絡,net=newc(P,S,KLR,CLR) P:R*Q矩陣,包含Q個R維的輸入樣本向量。 S:標量,表示輸出層神經元個數(shù)。 KLR:Kohonen學習率,默認值為 0.01 CLR:“良心”學習率,默認值為 0.001,.,6.自組織競爭網絡相關函數(shù)詳解,使用競爭神經網絡將4個坐標點分為兩類, P = .2 .8

12、 .1 .9; .3 .5 .4 .5;% 待分類坐標點 plot(P(1,:),P(2,:),o); % 繪制坐標點 axis(0,1,0,1) set(gcf,color,w) grid on title(四個坐標點的分類) net = newc(P,2);% 創(chuàng)建競爭層 net = train(net,P); Y = net(P) Yc = vec2ind(Y), P c1=P(:,Yc=1);% 繪制分類結果 c2=P(:,Yc=2); plot(c1(1,:),c1(2,:),ro,LineWidth,2) hold on plot(c2(1,:),c2(2,:),k,LineWid

13、th,2) title(四個坐標點的分類結果) axis(0,1,0,1),.,6.自組織競爭網絡相關函數(shù)詳解,competlayer新版競爭網絡函數(shù),net=competlayer(numClasses,kohonenLR,conscienceLR),numClasses:分類的類別數(shù) kohonenLR:Kohonen學習率 conscienceLR:“良心”學習率,即閾值學習規(guī)則的學習率 iris_dataset是MATLAB自帶的用于分類的樣本數(shù)據(jù),其中包含了150分鳶尾花數(shù)據(jù),每份數(shù)據(jù)用一個4維向量表示。用競爭神經網絡將其分為3類 inputs = iris_dataset;% 載入

14、數(shù)據(jù) net = competlayer(3);% 創(chuàng)建競爭網絡 net = train(net,inputs);% 訓練 outputs = net(inputs);% 分類 classes = vec2ind(outputs)% 格式轉換。classes為分類結果,這里僅列出部分數(shù)據(jù) c=hist(classes,3)% 每個類別的數(shù)量,.,6.自組織競爭網絡相關函數(shù)詳解,newsom自組織特征映射網絡,net=newsom(P,d1,d2,tfcn,dfcn,steps,in) P:R*Q矩陣,包含Q個典型的R維輸入向量 di:拓撲結構中第i維的大小。默認值為 5,8,顯示自組織映射網絡

15、與競爭神經網絡的結構差別 net1=competlayer(40);% 40個節(jié)點的競爭層 load simpleclass_dataset net2=newsom(simpleclassInputs,5 8); view(net1) view(net2),.,6.自組織競爭網絡相關函數(shù)詳解,selforgmap新版自組織映射網絡函數(shù),net=selforgmap(dimensions,coverSteps,initNeighbor,topologyFcn,distanceFcn) dimensions:一個表示拓撲結構的行向量,如表示二維結構 coverSteps:訓練次數(shù)。 initNei

16、ghbor:鄰域大小的初始值。 topologyFcn:表示拓撲函數(shù)的字符串,可選值有hextop,gridtop,randtop等 distanceFcn:表示距離函數(shù)的字符串,可選值有boxdist,dist,linkdist和mandist等,.,6.自組織競爭網絡相關函數(shù)詳解,simplecluster_dataset是MATLAB自帶的用于聚類的簡單數(shù)據(jù),其中包含了1000個二維向量。用不同拓撲大小的自組織映射網絡做聚類。, x = simplecluster_dataset;% 載入數(shù)據(jù) plot(x(1,:),x(2,:),o)% 顯示 set(gcf,color,w) titl

17、e(原始數(shù)據(jù)) 使用2*3拓撲網絡進行聚類 net = selforgmap(2,3); net = train(net,x); y = net(x); classes = vec2ind(y); c=hist(classes,6)% 6個類別包含的樣本個數(shù) plotsomhits(net,x)% 顯示每個類別的個數(shù) plotsompos(net,x)% 顯示類別中心點的位置,.,6.自組織競爭網絡相關函數(shù)詳解,newlvq學習矢量量化網絡,net=newlvq(P,S1,PC,LR,LF) P:R*Q矩陣,包含Q個R維輸入向量。 S1:競爭層神經元的個數(shù)。,用newlvq創(chuàng)建一個簡單的學習矢

18、量量化網絡,給出用newlvq解決一個分類問題的完整過程。 P = -3 -2 -2 0 0 0 0 +2 +2 +3; .% 輸入樣本是10個二維向量 0 +1 -1 +2 +1 -1 -2 +1 -1 0; Tc = 1 1 1 2 2 2 2 1 1 1;% 目標類別 T = ind2vec(Tc); net = newlvq(P,4,.6 .4);% 創(chuàng)建LVQ網絡 view(net) net = train(net,P,T);% 訓練 Y = net(P)% 測試 Yc = vec2ind(Y) Tc,.,6.自組織競爭網絡相關函數(shù)詳解,lvqnet新版學習矢量量化網絡函數(shù),net=

19、lvqnet(hiddenSize,lvqLR,lvqLF) hiddenSize:競爭層神經元節(jié)點個數(shù) lvqLR:學習率。 lvqLF:學習函數(shù)。, x,t = iris_dataset;% 加載數(shù)據(jù),x為輸入樣本,t為期望輸出 rng(0) ri=randperm(150);% 劃分訓練與測試集 x1=x(:,ri(1:50); t1=t(:,ri(1:50); x2=x(:,ri(51:150); t2=t(:,ri(51:150); net = lvqnet(20);% 創(chuàng)建網絡進行訓練 net = train(net,x1,t1); y = net(x2);% 測試 yy=vec2

20、ind(y); ty=vec2ind(t2); sum(yy=ty)/length(yy),.,6.自組織競爭網絡相關函數(shù)詳解,mapminmax歸一化函數(shù),在神經網絡和其他機器學習算法中,往往需要對輸入的樣本做歸一化。mapminmax就是MATLAB提供的一個方便的歸一化函數(shù)。 Y,settings=mapminmax(X) Y=mapminmax(apply,X,settings) x1_again=mapminmax(reverse,y,settings),.,6.自組織競爭網絡相關函數(shù)詳解,對一個矩陣進行歸一化 x=1,2,3;1,2,4% 待歸一化數(shù)據(jù) xx,settings=ma

21、pminmax(x);% 歸一化到0,1 xx settings.xmin,settings.xmax% 結構體settings中保存了每行的最大最小值 fp.ymin=0;fp.ymax=10 xx,settings=mapminmax(x,fp);% 映射到0,10區(qū)間 xx xx,settings=mapminmax(x,fp);% 按列進行歸一化 xx,.,7.自組織競爭神經網絡應用實例,手算實現(xiàn)坐標點的分類。,mycompet.m,.,7.自組織競爭神經網絡應用實例,clear,clc % 使用工具箱函數(shù)實現(xiàn)坐標點分類 close all x0=4.1,1.8,0.5,2.9,4.0,0.6,3.8,4.3,3.2,1.0,3.0,3.6,3.8,3.7,3.7,8.6,9.1,. % 樣本數(shù)據(jù) 7.5,8.1,9.0,6.9,8.6,8.5,9.6,10.0,9.3,6.9,6.4,6.7,8.7;. 8.1,5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論