我開發了一個ANN BP的代碼來分類打鼾片段。我有10個輸入功能和1個隱藏層,有10個神經元和一個輸出神經元。我將1表示爲無打鼾,0表示爲打鼾部分。我有3000個網段,其中2500個是沒有打鼾的網段,標記爲1和500個打鼾網段,標記爲0.我已經將數據集分爲三組(70%的訓練,15%的驗證和15%的測試) 。人工神經網絡後向傳播測試
現在,在訓練網絡時,首先我洗牌訓練集並將打鼾和無打鼾的段混合在一起。所以,在我訓練了網絡之後,當我驗證它(僅通過前饋網絡)時,我發現它只能對其中的一個進行分類。讓我進一步澄清,假設在訓練集中最後一個元素是沒有打鼾(這是1)。所以,它爲最後一次輸出訓練網絡。然後在驗證階段,即使對於打鼾區段(它是0),它總是使輸出接近1。如果最後一個元素是打鼾(0),則會發生同樣的情況。然後它在驗證階段始終將輸出接近於0。
我該如何解決這個問題?爲什麼我的網絡不能記住先前段的輸出。它只能保存最後一段?我應該在網絡中改變什麼來解決它?
它應該與0和1一起工作,與-1和1相同,問題在於神經元和聯會的數量在隱藏的laye河 –