% 單層感知器
%% 1.newp--建立乙個感知器
%%舉個栗子:用newp函式建立乙個感知器並進行訓練**
p=[-1,1;-1,1];
t=1;
net=newp(p,t,'hardlim','learnp');
p=[0,0,1,1;0,1,0,1]; % 用於訓練的輸入資料,每列為乙個輸入向量
t=[0,1,1,1]; % 輸入資料的期望輸出
[net,tr]=train(net,p,t); %train用於訓練
newp=[0,0.9]'; %第乙個測試資料
newt=sim(net,newp); %第乙個測試資料的輸出結果
newp2=[0.9,0.9]';
newt2=sim(net,newp2);
%% 2.train--訓練感知器網路
%% 舉個栗子:建立乙個感知器,用來判斷輸入數字的符號,如果≥0輸出1,<0輸出0
p=[-1000,1000];
t=1;
net=newp(p,t);
p=[-5,-4,-3,-2,-1,0,1,2,3,4];
t=[0,0,0,0,0,1,1,1,1,1];
net=train(net,p,t);
newp=-10:.2:10;
newt=sim(net,newp);
plot(newp,newt,'linewidth',3);
title('判斷數字符號的感知器');
%% 3.sim--對訓練好的網路進行**
%% 舉個栗子:建立感知器,實現邏輯與的功能,用sim**
net=newp([-2,2;-2,2],1);
p=[0,0,1,1;0,1,0,1];
t=[0,0,1,1];
net=train(net,p,t);
y=sim(net,p); %得到**結果
y2=net(p); %另一種得到**結果的方式
%% 4.hardlim/hardlims--感知器傳輸函式
%%% 5.init--神經網路初始化函式
%% 舉個栗子:觀察感知器網路權值的變化
net=newp([0,1;-2,2],1);
net.iw
% 建立時的權值
net.b
% 建立時的偏置
p=[0,1,0,1;0,0,1,1];
t=[0,0,0,1];
net=train(net,p,t);
net.iw
net.b
net=init(net);
net.iw
net.b
net.initfcn
net.initparam % 當initfcn為initlay時,initparam自動為空,所以這一行會報錯
%% 6.adapt--神經網路的自適應
%%舉個栗子:使用adapt函式調整感知器核其他神經網路
net=newp([-1,2;-2,2],1);
p=t=
[net,y,ee,pf]=adapt(net,p,t);
ma=mae(ee) % 誤差
ite=0; % 迭代次數初始化
while ma>=0.01
[net,y,ee,pf]=adapt(net,p,t);
ma=mae(ee)
newt=sim(net,p)
ite=ite+1;
if ite>=100
break;
endend%% 7.mae--平均絕對誤差效能函式
%clear,clc
net=newp([-20,20;-20,20],1);
p=[-9,1,-12,-4,0,5;15,-8,4,5,11,9];
t=[0,1,0,0,0,1];
net=train(net,p,t);
y=sim(net,p)
iw=net.iw;
b=net.b;
w=[b,iw]
%w=[0,14,-6]表示分離直線為7x-3y=0
資料探勘 單層感知器的Matlab實現
單層感知器 1.newp 建立乙個感知器 舉個栗子 用newp函式建立乙個感知器並進行訓練 p 1,1 1,1 t 1 net newp p,t,hardlim learnp p 0,0,1,1 0,1,0,1 用於訓練的輸入資料,每列為乙個輸入向量 t 0,1,1,1 輸入資料的期望輸出 net,...
學習筆記 感知器 單層感知器舉例
在人體神經網路中,神經細胞是有著基本處理訊號功能的基本單元,單層感知器就是人工神經網路中模擬人體神經細胞的基本單元。單層感知器 單層感知器是最簡單的神經網路,它包含輸入層和輸出層,訊號先經過線性組合器處理然後再經過啟用函式,最後輸出結果。1 輸入節點 input 輸入節點是訊號的輸入端,感知器可以有...
單層感知器python 深度學習之單層感知器(一)
當我們最初學習機器學習時候,了解到最簡單的神經網路可能便是單層感知器,他也是監督學習的最簡單一種。本文章就通過 人工神經網路理論 設計及應用 書中介紹的單層感知器一節,進行python的 實現。單層感知器的網路結構如下 上圖便是乙個單層感知器,很簡單的乙個結構,圖中說明我們有個3維的輸入值分別是x1...