(一)神經網絡簡介
主要是利用計算機的計算能力,對大量的樣本進行擬合,最終得到一個我們想要的結果,結果通過0-1編碼,這樣就OK啦
(二)人工神經網絡模型
一、基本單元的三個基本要素
1、一組連接(輸入),上面含有連接強度(權值)。
2、一個求和單元
3、一個非線性激活函數,起到將非線性映射作用,並將神經元輸出幅度限制在一定范圍內(在(0,1)或者(-1,1))
4、還有一個閥值(偏置)
歸結如下:
PS:也可以選擇將偏置(閥值)加入到線性求和里面
5、激活函數的選擇
二、網絡結構及工作方式
1、前饋型網絡
主要用於模式識別和函數逼近。
2、反饋性網絡
用作各種聯想儲存器;用於求解最優化問題。
(三)蠓蟲問題與多層前饋網絡
一、蠓蟲分類問題
二、多層前饋網絡
1、輸入層2個,分別表示觸角和翅膀的長度,只負責輸入
2、處理層有3個(通過實驗或者某些經驗來確定),有負責計算
3、輸出層有2個,有負責計算
然后我們要通過已有的數據來確定權重,所用的方法為向后傳播算法
三、向后傳播算法
然后就是求解一個非線性規划問題,可以使用前面章節所使用的方法來求解。
四、蠓蟲分類問題的求解
clear; p1=[1.24,1.27 1.36,1.74 1.38,1.64 1.38,1.82 1.38,1.90 1.40,1.70 1.48,1.82 1.54,1.82 1.56,2.08]; p2=[1.14,1.82 1.18,1.96 1.20,1.86 1.26,2.00 1.28,2.00 1.30,1.96]; p=[p1;p2]'; pr=minmax(p); goal=[ones(1,9),zeros(1,6) zeros(1,9),ones(1,6)]; plot(p1(:,1),p1(:,2),'h',p2(:,1),p2(:,2),'o') net=newff(pr,[3,2],{'logsig','logsig'}); net.trainParam.show=10; net.trainParam.lr=0.05; net.trainParam.goal=1e-10; net.trainParam.epochs=50000; net=train(net,p,goal); x=[1.24 1.80 1.28 1.84 1.40 2.04]'; y0=sim(net,p) y=sim(net,x)













