訓練集、測驗集、驗證集
training, testing, and verification sets.
測驗集:用于測量網路泛化,并在泛化停止改進時停止訓練,
驗證集:(不用于創建網路的資料)將用于評估網路的性能,
確定隱層的節點數
隱層節點數往往根據前人設計所得的經驗和自己進行試驗來確定,一般認為,隱層節點數與求解問題的要求、輸入輸出單元數多少都有直接的關系,而且,隱層節點數過少,則無法產生足夠的連接權組合數來滿足若干樣本的學習;隱層節點數過多,則學習以后網路的泛化能力變差,確定隱層的節點數有如下幾種方法:
1)如果要求逼近的樣函式變化劇烈、波動很大,則要求可調整地連接權數多,從而隱層的節點數也應該多一些;
2)如果規定的逼近精度高,則隱含層單元數也應該多一些;
3)可考慮開始時放入較少的隱含層單元,根據以后的學習情況逐漸增加;或一開始就加入足夠多的隱層節點,通過學習把不太起作用的連接權和隱層節點刪去,
此外,下面還有一些關于關于隱層節點數計算的經驗公式:
1.1
式中,k為樣本數, 為隱節點數,n為輸入層單元數,當i〉 時,取 ,
1.2
式中,m為輸出節點數,常數 ,
1.3
kolmogorov定理:給定任一連續函式f : Un->Rm,f(X)=Y,這里U是閉單位區間[0,1],f可以精確的用一個三層前向網路實作,該網路的第一層(即輸入層)有n個處理單元,中間層有2n+1個處理單元,第三層(即輸出層)有m個處理單元,
也可以通過神經網路訓練來確定隱含層的個數,首先根據經驗公式確定隱含層中節點數目的范圍,設計一個隱含層神經元數目可變的BP網路,通過誤差對比,確定最佳的隱含層神經元的個數,
如輸入變數p和輸出變數t:
p=-1:0.1:1;
t=[-0.9602 -0.5770 -0.0729 0.3771 0.6405 0.6600 0.4609 0.1336 -0.2013 -0.4344 -0.5000 -0.3930 -0.1647 0.0988 0.3072 0.3960 0.3449 0.1816 -0.0312 -0.2189 -0.3201];
由經驗公式知隱層節點數為3~8之間,因此設計一個隱含層節點數可變的BP神經網路,其結果如下:
表1.1 網路訓練誤差
神經元個數 3 4 5 6 7 8
訓練誤差 0.1568 0.1544 0.1152 0.0989 0.1567 0.0988
表1.1表明,在經過2000次訓練后,隱含層的神經元個數為8的BP網路對函式的逼近效果最好,因為它的誤差最小,
“讀文獻要讀出作者的觀點,要找出作者基于什么事實、方法和經驗得出這些觀點,這些事實、方法和經驗有沒有問題?其他學者在哪些方面發展或批判了這位學者的觀點,依據是什么……”
小周 好好讀一下這篇綜述性文章,寫個簡單的總結,作為你開題的文獻綜述部分
Dropout是在訓練程序中以一定概率1-p將隱含層節點的輸出值清0,而用bp更新權值時,不再更新與該節點相連的權值,
而DropConnect的思想也很簡單,與Dropout不同的是,它不是隨機將隱含層節點的輸出清0,而是將節點中的每個與其相連的輸入權值以1-p的概率清0,(一個是輸出,一個是輸入)
訓練資料集將被拆分為 k 個大小相同的獨立檔案,選擇K-1 作為訓練資料集,其余作為測驗資料集,建模程序將重復 k 次,并選擇 k 次迭代后的 mse 平均值來估計預期的泛化誤差,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/228099.html
標籤:AI
