神經(jīng)網(wǎng)絡(luò)對訓(xùn)練數(shù)據(jù)的要求 用同一數(shù)據(jù)集訓(xùn)練神經(jīng)網(wǎng)絡(luò),每次訓(xùn)練結(jié)果不一樣,有時正確率很高,有時很低,為什么?
用同一數(shù)據(jù)集訓(xùn)練神經(jīng)網(wǎng)絡(luò),每次訓(xùn)練結(jié)果不一樣,有時正確率很高,有時很低,為什么?其實這個問題的實質(zhì)是,如果我們用機器學(xué)習(xí)算法在數(shù)據(jù)集上訓(xùn)練一次數(shù)據(jù)模型,保存模型,然后用同樣的算法和同樣的數(shù)據(jù)集和數(shù)據(jù)排
用同一數(shù)據(jù)集訓(xùn)練神經(jīng)網(wǎng)絡(luò),每次訓(xùn)練結(jié)果不一樣,有時正確率很高,有時很低,為什么?
其實這個問題的實質(zhì)是,如果我們用機器學(xué)習(xí)算法在數(shù)據(jù)集上訓(xùn)練一次數(shù)據(jù)模型,保存模型,然后用同樣的算法和同樣的數(shù)據(jù)集和數(shù)據(jù)排序再訓(xùn)練一遍,第一個模型和第二個模型是一樣的嗎?
這可能是因為神經(jīng)網(wǎng)絡(luò)用增益或權(quán)重的隨機值初始化,然后每個模擬在訓(xùn)練階段有不同的起點。如果您希望始終保持相同的初始權(quán)重,可以嘗試為初始權(quán)重修復(fù)種子以消除問題。
如果我們深入研究這個問題,我們可以根據(jù)ml算法的“確定性”來對其進行分類。當(dāng)從同一個數(shù)據(jù)集進行訓(xùn)練時:
一個是總是生成相同的模型,并且記錄以相同的順序呈現(xiàn);
另一個是總是生成不同的模型,并且記錄順序不同。
在實踐中,大多數(shù)是“不確定的”。模型變化的原因可能是機器學(xué)習(xí)算法本身存在隨機游走、不同權(quán)值的隨機初始化、不同分量的概率分布抽樣來分配優(yōu)化函數(shù)。
雖然模型的“不確定性”可能會對單個訓(xùn)練結(jié)果造成干擾,但我們也可以用“不確定性”來確認(rèn)模型的穩(wěn)定性,如決策樹、支持向量機(SVM)、神經(jīng)網(wǎng)絡(luò)等,最終可以通過多次迭代來確認(rèn)模型的穩(wěn)定性。
BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練集需要大樣本嗎?一般樣本個數(shù)為多少?
訓(xùn)練集樣本的不同必然會影響權(quán)重的變化。您要訓(xùn)練的數(shù)據(jù)是您希望系統(tǒng)在輸入某些數(shù)據(jù)時獲得的數(shù)據(jù)。如果訓(xùn)練集是隨機的,那么它將毫無意義。神經(jīng)網(wǎng)絡(luò)權(quán)值的初始值可以是隨機的,但隨著訓(xùn)練的繼續(xù),權(quán)值會趨于穩(wěn)定,從而達(dá)到神經(jīng)網(wǎng)絡(luò)的效果。