-
大小: 1.39MB文件類型: .zip金幣: 2下載: 0 次發(fā)布日期: 2023-11-17
- 語言: 其他
- 標(biāo)簽: 神經(jīng)網(wǎng)絡(luò)??人臉識別??
資源簡介
代碼分為read_can_use.m和main_can_ues.m
先運(yùn)行read_can_use.m 讀取圖片的像素值,使用奇異值分解的方法得到對應(yīng)的特征。程序預(yù)設(shè)了只讀取前5個人的人臉圖片 ,可以自己改成最多15個人。
然后運(yùn)行main_can_use.m ,程序會輸出 1 1 2 3 2 3,每個數(shù)字代表一張圖片最有可能的識別類別(就是人的編號)。
對每個人的11張圖片,取前7張訓(xùn)練網(wǎng)絡(luò),后4張測試網(wǎng)絡(luò),取前5個人進(jìn)行實(shí)驗(yàn)。所以共有35個訓(xùn)練樣本,20個測試樣本。
比如輸出的結(jié)果是 1 1 1 1 2 2 1 2 3 3 3 3 …..,因?yàn)槊?個數(shù)字是屬于同一個人的,前四個都是1則都預(yù)測正確,第二組的4個數(shù)字2 2 1 2 中的那個1 就是預(yù)測錯誤(本來是2預(yù)測成了1)。
由于參數(shù)的隨機(jī)初始化,不保證每次的結(jié)果都相同。

代碼片段和文件信息
function?main()
%%
clc
clear?all;
%close?all;
load(‘date1_5.mat‘‘feature‘);
warning?off?all
SamNum=35;??????????????????%輸入樣本數(shù)量
TestSamNum=35;??????????????%測試樣本數(shù)量
ForcastSamNum=20;????????????%預(yù)測樣本數(shù)量
HiddenUnitNum=8;????????????%中間層隱節(jié)點(diǎn)數(shù)量取8
InDim=40;????????????????????%網(wǎng)絡(luò)輸入維度
OutDim=4;???????????????????%網(wǎng)絡(luò)輸出維度
%%input
p=[];t=[];pnew=[];
for?i=1:55
????if(mod(i11)<=7&&mod(i11)>0)
????????p=[p;feature(i:)];
????else
????????pnew=[pnew;feature(i:)];
????end
end
p=p‘;pnew=pnew‘;
%%output
s1=[0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?];
s2=[0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?1?1?1?1?1?1?1?1?1?1?1?1?1?1?];
s3=[0?0?0?0?0?0?0?1?1?1?1?1?1?1?1?1?1?1?1?1?1?0?0?0?0?0?0?0?0?0?0?0?0?0?0?];
s4=[1?1?1?1?1?1?1?0?0?0?0?0?0?0?1?1?1?1?1?1?1?0?0?0?0?0?0?0?1?1?1?1?1?1?1?];
t=[s1;s2;s3;s4];
size(t)?%%4*35?輸出
size(p)?%%40*35?輸入
[SamInminpmaxptnmintmaxt]=premnmx(pt);?%原始樣本對(輸入和輸出)初始化
rand(‘state‘sum(100*clock))???%依據(jù)系統(tǒng)時鐘種子產(chǎn)生隨機(jī)數(shù)
SamOut=tn;
TestSamIn=SamIn;???????????????????????????%這里取輸入樣本與測試樣本相同因?yàn)闃颖救萘科?br/>TestSamOut=SamOut;?????????????????????????%也取輸出樣本與測試樣本相同
MaxEpochs=50000;??????????????????????????????%最多訓(xùn)練次數(shù)為50000
lr=0.035;???????????????????????????????????????%學(xué)習(xí)速率為0.035
E0=0.65*10^(-3);??????????????????????????????%目標(biāo)誤差為0.65*10^(-3)
W1=0.5*rand(HiddenUnitNumInDim)-0.2;???%初始化輸入層與隱含層之間的權(quán)值
B1=0.5*rand(HiddenUnitNum1)-0.2;???????%初始化輸入層與隱含層之間的閾值
W2=0.5*rand(OutDimHiddenUnitNum)-0.2;?%初始化輸出層與隱含層之間的權(quán)值
B2=0.5*rand(OutDim1)-0.2;????????????????%初始化輸出層與隱含層之間的閾值
ErrHistory=[];??????????????????????????????%給中間變量預(yù)先占據(jù)內(nèi)存
for?i=1:MaxEpochs
????%?????HiddenOut=logsig(W1*SamIn+repmat(B11SamNum));?%?隱含層網(wǎng)絡(luò)輸出
????HiddenOut=1./(1+exp(-(W1*SamIn+repmat(B11SamNum))));?%?隱含層網(wǎng)絡(luò)輸出
????
????NetworkOut=W2*HiddenOut+repmat(B21SamNum);????%?輸出層網(wǎng)絡(luò)輸出
????Error=SamOut-NetworkOut;???????????????????????%?實(shí)際輸出與網(wǎng)絡(luò)輸出之差
????SSE=sumsqr(Error)???;????????????????????????????%能量函數(shù)(誤差平方和)
????
????ErrHistory=[ErrHistory?SSE];
????
????if?SSE ????%?調(diào)整權(quán)值(閾值)
????Delta2=Error;
????Delta1=W2‘*Delta2.*HiddenOut.*(1-HiddenOut);
????dW2=Delta2*HiddenOut‘;
????dB2=Delta2*ones(SamNum1);
????dW1=Delta1*SamIn‘;
????dB1=Delta1*ones(SamNum1);
????%對輸出層與隱含層之間的權(quán)值和閾值進(jìn)行修正
????W2=W2+lr*dW2;
????B2=B2+lr*dB2;
????%對輸入層與隱含層之間的權(quán)值和閾值進(jìn)行修正
????W1=W1+lr*dW1;
????B1=B1+lr*dB1;
end
HiddenOut=1./(1+exp(-((W1*SamIn+repmat(B11TestSamNum)))));?%?隱含層輸出最終結(jié)果
NetworkOut=W2*HiddenOut+repmat(B21TestSamNum);????%?輸出層輸出最終結(jié)果
a=postmnmx(NetworkOutmintmaxt);???????????????%?還原網(wǎng)絡(luò)輸出層的結(jié)果
%%
%?利用訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行預(yù)測
pnewn=tramnmx(pnewminpmaxp);?????????%歸一化;
HiddenOut=1./(1+exp(-(W1*pnewn+repmat(B11ForcastSamNum))));
anewn=W2*HiddenOut+repmat(B21ForcastSamNum);???????????%?輸出層輸出預(yù)測結(jié)果
%把網(wǎng)絡(luò)預(yù)測得到的數(shù)據(jù)還原為原始的數(shù)量級;
anew=postmnmx(anewnmintmaxt);
answer=zeros(1size(anew2));
d=1;
for?j=1:20
????for?i=4:-1:1
????????answer(j)=answer(j)+anew(ij)*d;
????????d=d*2;
????en
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-05-16?15:52??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\
?????文件????????3434??2016-07-10?13:19??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\main_can_use.m
?????文件????????1042??2018-05-16?15:46??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\read_can_use.m
?????目錄???????????0??2017-09-16?12:16??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\
?????文件????????9080??2002-07-26?10:01??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_1.bmp
?????文件????????9080??2002-07-26?10:04??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_10.bmp
?????文件????????9080??2002-07-26?10:05??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_11.bmp
?????文件????????9080??2002-07-26?10:05??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_2.bmp
?????文件????????9080??2002-07-26?10:06??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_3.bmp
?????文件????????9080??2002-07-26?10:07??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_4.bmp
?????文件????????9080??2002-07-26?10:08??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_5.bmp
?????文件????????9080??2002-07-26?10:09??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_6.bmp
?????文件????????9080??2002-07-26?10:12??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_7.bmp
?????文件????????9080??2002-07-26?10:12??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_8.bmp
?????文件????????9080??2002-07-26?10:13??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject01_9.bmp
?????文件????????9080??2002-07-26?10:15??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_1.bmp
?????文件????????9080??2002-07-26?10:16??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_10.bmp
?????文件????????9080??2002-07-26?10:16??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_11.bmp
?????文件????????9080??2002-07-26?10:17??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_2.bmp
?????文件????????9080??2002-07-26?10:18??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_3.bmp
?????文件????????9080??2002-07-26?10:18??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_4.bmp
?????文件????????9080??2002-07-26?10:19??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_5.bmp
?????文件????????9080??2002-07-26?10:20??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_6.bmp
?????文件????????9080??2002-07-26?10:20??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_7.bmp
?????文件????????9080??2002-07-26?10:21??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_8.bmp
?????文件????????9080??2002-07-26?10:22??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject02_9.bmp
?????文件????????9080??2002-07-26?10:25??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject03_1.bmp
?????文件????????9080??2002-07-26?10:27??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject03_10.bmp
?????文件????????9080??2002-07-26?10:28??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject03_11.bmp
?????文件????????9080??2002-07-26?10:29??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject03_2.bmp
?????文件????????9080??2002-07-26?10:30??基于神經(jīng)網(wǎng)絡(luò)的人臉識別\YALE\subject03_3.bmp
............此處省略139個文件信息
評論
共有 條評論