????????哈嘍!小伙伴們,接著上篇回歸預(yù)測(cè)之支持向量機(jī)回歸預(yù)測(cè),今天給大家?guī)?lái)MATLAB實(shí)現(xiàn)bp神經(jīng)網(wǎng)絡(luò)回歸預(yù)測(cè),本文主要是陳述BP神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)過(guò)程,不在對(duì)原理進(jìn)行講解啦。需要代碼的小伙伴可以私聊我!無(wú)償。接下來(lái)進(jìn)入正題啦!
? ? ? ? bp神經(jīng)網(wǎng)絡(luò)回歸預(yù)測(cè)實(shí)現(xiàn)主要還是依賴MATLAB自帶的工具箱實(shí)現(xiàn)的,所以我們只要了解了工具箱的基本情況、使用格式以及參數(shù)設(shè)置,就可以使用工具箱實(shí)現(xiàn)回歸預(yù)測(cè)啦!
首先,清空變量和所以窗口,一般我們進(jìn)行編程的時(shí)候,都會(huì)進(jìn)行這一步操作,有利于釋放存儲(chǔ),加快計(jì)算輸出,也不容易因?yàn)樯弦淮芜\(yùn)行,影響本次運(yùn)行。
?第一步:讀取訓(xùn)練集的數(shù)據(jù)集,本文從Excel表格中利用xlsread函數(shù)讀取數(shù)據(jù),然后劃分輸入值和輸出值,假設(shè)有13列數(shù)據(jù),那么前12列為輸入,最后一列為輸出。
?第二步:同樣的方法讀取測(cè)試集的數(shù)據(jù),分好輸入值和輸出值,這個(gè)時(shí)候就可以設(shè)置一下bp神經(jīng)網(wǎng)絡(luò)的輸入、隱含層以及輸出層的節(jié)點(diǎn)數(shù)量。我這里只設(shè)置了隱含層的節(jié)點(diǎn)個(gè)數(shù),其他的默認(rèn)。
第三步:將訓(xùn)練集的數(shù)據(jù)進(jìn)行歸一化處理,本文將數(shù)據(jù)歸一化到【-1,1】 之間,用到歸一化函數(shù)mapminmax函數(shù),其實(shí)inputn和outputn是歸一化后的數(shù)據(jù),inputps和outputps是歸一化準(zhǔn)側(cè),目的是接下來(lái)的預(yù)測(cè)也按照這個(gè)方法來(lái)進(jìn)行歸一化。
第四步:搭建BP神經(jīng)網(wǎng)絡(luò),本文最簡(jiǎn)單的 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),主要參數(shù)有 訓(xùn)練集輸入輸出值,隱含層,傳遞函數(shù)等等。
第五步:網(wǎng)絡(luò)的參數(shù)配置,這里可以設(shè)計(jì)的參數(shù)有很多,為了方便學(xué)習(xí),我這里主要設(shè)置三項(xiàng),分別是迭代次數(shù)、學(xué)習(xí)速率以及訓(xùn)練的最小誤差。
?第六步:設(shè)置好所有參數(shù)之后,就可以進(jìn)行bp訓(xùn)練了。這里也可以利用save函數(shù)保存一下net,后期想用可以直接調(diào)用就行,不用再次訓(xùn)練了。
?第七步:訓(xùn)練好之后,其實(shí)已經(jīng)可以預(yù)測(cè)了,但是前面我們對(duì)訓(xùn)練集進(jìn)行了歸一化處理,所以我們?cè)陬A(yù)測(cè)之前也要利用同一方法進(jìn)行歸一化處理,inputn_test就是歸一化之后的測(cè)試集。inputps就是之前我們訓(xùn)練集歸一化所用的方法。
?第八步:等所有的參數(shù)條件設(shè)置好了之后,進(jìn)行仿真訓(xùn)練啦!
?第九步:對(duì)預(yù)測(cè)結(jié)果進(jìn)行反歸一化,得到預(yù)測(cè)的真實(shí)值并且計(jì)算絕對(duì)誤差。
第十步:得到結(jié)果之后,我們?yōu)榱酥李A(yù)測(cè)的效果,就需要做誤差評(píng)估,只要通過(guò)計(jì)算MSE,RMSE等參數(shù),在對(duì)結(jié)果進(jìn)行可視化。
?
?最后,給大家看一下運(yùn)行的效果:
?
?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-418832.html
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-418832.html
到了這里,關(guān)于BP神經(jīng)網(wǎng)絡(luò)回歸預(yù)測(cè)MATLAB實(shí)現(xiàn)超詳細(xì)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!