目錄
主要內容???
??部分代碼???
??結果一覽???
下載鏈接
主要內容???
?《MATLAB神經網絡43個案例分析》共有43章,內容涵蓋常見的神經網絡(BP、RBF、SOM、Hopfield、Elman、LVQ、Kohonen、GRNN、NARX等)以及相關智能算法(SVM、決策樹、隨機森林、極限學習機等)。同時,部分章節也涉及了常見的優化算法(遺傳算法、蟻群算法等)與神經網絡的結合問題。此外,《MATLAB神經網絡43個案例分析》還介紹了MATLAB R2012b中神經網絡工具箱的新增功能與特性,如神經網絡并行計算、定制神經網絡、神經網絡高效編程等。
本程序針對的是第24章內容--基于PNN的變壓器故障診斷,這是神經網絡技術在電力系統故障診斷方面的一個應用方向,?通過對變壓器運行數據進行訓練,實現對數據的分類和預測,用于判斷變壓器運行狀態,代碼免費分享給大家學習參考!
??部分代碼???
%% 清空環境變量 clc; clear all close all nntwarn off; warning off; %% 數據載入 load data %% 選取訓練數據和測試數據 ? Train=data(1:23,:); Test=data(24:end,:); p_train=Train(:,1:3)'; t_train=Train(:,4)'; p_test=Test(:,1:3)'; t_test=Test(:,4)'; ? %% 將期望類別轉換為向量 t_train=ind2vec(t_train); t_train_temp=Train(:,4)'; %% 使用newpnn函數建立PNN SPREAD選取為1.5 Spread=1.5; net=newpnn(p_train,t_train,Spread) ? %% 訓練數據回代 查看網絡的分類效果 ? % Sim函數進行網絡預測 Y=sim(net,p_train); % 將網絡輸出向量轉換為指針 Yc=vec2ind(Y); ? %% 通過作圖 觀察網絡對訓練數據分類效果 figure(1) subplot(1,2,1) stem(1:length(Yc),Yc,'bo') hold on stem(1:length(Yc),t_train_temp,'r*') title('PNN 網絡訓練后的效果') xlabel('樣本編號') ylabel('分類結果') set(gca,'Ytick',[1:5]) subplot(1,2,2) H=Yc-t_train_temp; stem(H) title('PNN 網絡訓練后的誤差圖') xlabel('樣本編號') ? ? %% 網絡預測未知數據效果 Y2=sim(net,p_test); Y2c=vec2ind(Y2); figure(2) stem(1:length(Y2c),Y2c,'b^') hold on stem(1:length(Y2c),t_test,'r*') title('PNN 網絡的預測效果') xlabel('預測樣本編號') ylabel('分類結果') set(gca,'Ytick',[1:5]) ?
??結果一覽???
下載鏈接
?