資源簡(jiǎn)介
MATLAB神經(jīng)網(wǎng)絡(luò)編程源代碼
%創(chuàng)建神經(jīng)網(wǎng)絡(luò) 前饋BP網(wǎng)絡(luò)
net = newff( minmax(input) , [10 10 3] , { 'logsig' 'logsig' 'purelin' } , 'traingdx' ) ;
代碼片段和文件信息
%讀取訓(xùn)練數(shù)據(jù)
[f1f2f3f4class]?=?textread(‘trainData.txt‘??‘%f%f%f%f%f‘150);
%特征值歸一化
[inputminImaxI]?=?premnmx(?[f1??f2??f3??f4?]‘)??;
%構(gòu)造輸出矩陣
s?=?length(?class?)?;
output?=?zeros(?s??3??)?;???%三種?分類
for?i?=?1?:?s?
???output(?i??class(?i?)??)?=?1?;
end
%創(chuàng)建神經(jīng)網(wǎng)絡(luò)?前饋BP網(wǎng)絡(luò)
net?=?newff(?minmax(input)??[10?10?3]??{?‘logsig‘?‘logsig‘?‘purelin‘?}??‘traingdx‘?)?;?
%net?=?newff?(?A?B?{C}?‘trainFun’)
%A:一個(gè)n×2的矩陣,第i行元素為輸入信號(hào)xi的最小值和最大值;
%B:一個(gè)k維行向量,其元素為網(wǎng)絡(luò)中各層節(jié)點(diǎn)數(shù);?二維為兩層
%C:一個(gè)k維字符串行向量,每一分量為對(duì)應(yīng)層神經(jīng)元的激活函數(shù);?
%‘purelin‘:線性函數(shù)??‘logsig‘:對(duì)數(shù)S形轉(zhuǎn)移函數(shù)??‘tansig’:雙曲正切S形函數(shù)
%trainFun?:為學(xué)習(xí)規(guī)則采用的訓(xùn)練算法。?traingd?:梯度下降BP訓(xùn)練函數(shù)??traingdx?:梯度下降自適應(yīng)學(xué)習(xí)率訓(xùn)練函數(shù)
%設(shè)置訓(xùn)練參數(shù)
net.trainparam.show?=?50?;??%?顯示中間結(jié)果的周期
net.trai
評(píng)論
共有 條評(píng)論