BP神经网络实现汽油辛烷值预测,《MATLAB源码+数据集》
發展背景
在人工神經網絡的發展歷史上,感知機(Multilayer Perceptron,MLP)網絡曾對人工神經網絡的發展發揮了極大的作用,也被認為是一種真正能夠使用的人工神經網絡模型,它的出現曾掀起了人們研究人工神經元網絡的熱潮。單層感知網絡(M-P模型)做為最初的神經網絡,具有模型清晰、結構簡單、計算量小等優點。但是,隨著研究工作的深入,人們發現它還存在不足,例如無法處理非線性問題,即使計算單元的作用函數不用閥函數而用其他較復雜的非線性函數,仍然只能解決線性可分問題.不能實現某些基本功能,從而限制了它的應用。增強網絡的分類和識別能力、解決非線性問題的唯一途徑是采用多層前饋網絡,即在輸入層和輸出層之間加上隱含層。構成多層前饋感知器網絡。
20世紀80年代中期,David Runelhart。Geoffrey Hinton和Ronald W-llians、DavidParker等人分別獨立發現了誤差反向傳播算法(Error Back Propagation Training),簡稱BP,系統解決了多層神經網絡隱含層連接權學習問題,并在數學上給出了完整推導。人們把采用這種算法進行誤差校正的多層前饋網絡稱為BP網。
BP神經網絡具有任意復雜的模式分類能力和優良的多維函數映射能力,解決了簡單感知器不能解決的異或(Exclusive OR,XOR)和一些其他問題。從結構上講,BP網絡具有輸入層、隱藏層和輸出層;從本質上講,BP算法就是以網絡誤差平方為目標函數、采用梯度下降法來計算目標函數的最小值。
基本原理
在人工神經網絡的發展歷史上,感知機(Multilayer Perceptron,MLP)網絡曾對人工神經網絡的發展發揮了極大的作用,也被認為是一種真正能夠使用的人工神經網絡模型,它的出現曾掀起了人們研究人工神經元網絡的熱潮。單層感知網絡(M-P模型)做為最初的神經網絡,具有模型清晰、結構簡單、計算量小等優點。但是,隨著研究工作的深入,人們發現它還存在不足,例如無法處理非線性問題,即使計算單元的作用函數不用閥函數而用其他較復雜的非線性函數,仍然只能解決線性可分問題.不能實現某些基本功能,從而限制了它的應用。增強網絡的分類和識別能力、解決非線性問題的唯一途徑是采用多層前饋網絡,即在輸入層和輸出層之間加上隱含層。構成多層前饋感知器網絡。
20世紀80年代中期,David Runelhart。Geoffrey Hinton和Ronald W-llians、DavidParker等人分別獨立發現了誤差反向傳播算法(Error Back Propagation Training),簡稱BP,系統解決了多層神經網絡隱含層連接權學習問題,并在數學上給出了完整推導。人們把采用這種算法進行誤差校正的多層前饋網絡稱為BP網。
BP神經網絡具有任意復雜的模式分類能力和優良的多維函數映射能力,解決了簡單感知器不能解決的異或(Exclusive OR,XOR)和一些其他問題。從結構上講,BP網絡具有輸入層、隱藏層和輸出層;從本質上講,BP算法就是以網絡誤差平方為目標函數、采用梯度下降法來計算目標函數的最小值。
代碼實現:
部分代碼展示:
%% Part1:BP神經網絡回歸擬合實現汽油辛烷值預測 % clear all % clc %% 訓練集/測試集產生 load xinwan_data.mat % 隨機產生訓練集和測試集 temp = randperm(size(NIR,1));%打亂60個樣本排序 disp(temp(1:50)) % 訓練集——50個樣本 P_train = NIR(temp(1:50),:)'; T_train = octane(temp(1:50),:)'; % 測試集——10個樣本 P_test = NIR(temp(51:end),:)'; T_test = octane(temp(51:end),:)'; N = size(P_test,2); %% 數據歸一化% 訓練集 %% 這里函數的作用就是對p_train數據進行歸一化處理 [Pn_train,inputps] = mapminmax(P_train); Pn_test = mapminmax('apply',P_test,inputps); % 測試集 %% 這里函數的作用就是對T_train數據進行歸一化處理 [Tn_train,outputps] = mapminmax(T_train); Tn_test = mapminmax('apply',T_test,outputps);預測結果如下圖所示:
?其中50個樣本作為訓練,10個樣本作為測試,代碼都是經過調節的,可以根據論文要求更換數據。
完整代碼:請見詳情🍞正在為您運送作品詳情
總結
以上是生活随笔為你收集整理的BP神经网络实现汽油辛烷值预测,《MATLAB源码+数据集》的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 外置MOS大功率升压芯片FP5207
- 下一篇: C#下载文件的方法包含本地下载,http