2013-09-25 184 views
0

我對Matlab神經網絡工具箱比較陌生。我正在訓練神經網絡,模式識別和3x8670的目標矩陣包含1和0,使用一個隱藏層,40個神經元,其餘的默認設置。當我得到新輸入集的模擬輸出時,數值大約在0和1之間。然後按降序排列它們,並在8670個觀察值中選擇一個固定數字(這是我所知道的)爲1,然後依次爲爲零。神經網絡輸出的精度 - Matlab神經網絡工具箱

我每次運行該程序,模擬輸出的第一行總是有接近100%的準確率和下面的行不表現出相同類型的精度。

有一般一個合理的解釋?我明白,最終回答這個問題可能需要對程序和問題的理解,但是它由幾個功能組成,以便清楚地解釋。我可以在培訓中進行一些更改以獲得一致性輸出嗎?

如果您有任何建議,請與我分享。

感謝,

NISHANT

回答

0

您的問題聲明並不清楚我。例如,你的意思是:「我將其安排在降序排列,並選擇固定數目的......」

據我所知,你沒有從你的NN相比,真正的目標得到適當的輸出。我的意思是,NN的輸出與目標不同。如果是這樣,則應考慮不同的可能性:

  1. 如何劃分訓練/測試/驗證集合以用於訓練階段?大部分師應被分配到培訓(約75%),並休息以進行測試/驗證。

  2. 如何設置你的訓練數據?它可以像你期望的那樣支持大多數場景嗎如果您的訓練數據集與您的測試數據集沒有多少相似性(例如,您在測試數據集中有一些新的記錄/樣本未出現在訓練階段(接近出現),則將其解釋爲「異常值」,NN不能使用這些類型的樣本進行高效工作,因此您需要聚類方法而不是NN分類方法),NN的結果超出範圍,NN無法根據需要提供理想的精度。 NN對於那些訓練數據集和測試數據集之間沒有太大差異的數據集訓練是很好的。否則,NN不適用。

  3. 有時候你有一個適當的訓練數據集,但問題是訓練本身。在這種情況下,您需要其他類型的NN,因爲像MLP這樣的前饋NN不能很好地處理壓縮的數據區域和沒有很好分離的區域。您需要強函數逼近,如RBF和SVM。