BP算法的基本思想是學習過程由兩個過程組成:信號的前向傳播和誤差的後向傳播。在前向傳播中,輸入樣本從輸入層傳輸,由每個隱藏層逐層處理,然後傳輸到輸出層。如果輸出層的實際輸出與預期輸出(教師的信號)不匹配,誤差將傳遞到反向傳播階段。誤差反向傳播是指輸出誤差以某種形式通過隱含層逐層傳回輸入層,並將誤差分配到每層的所有單元,從而得到每層單元的誤差信號,以此作為校正各單元權重的依據。這種調整信號正向傳播和誤差反向傳播的每壹層的權重的過程被重復執行。不斷調整權重的過程也是網絡的學習和訓練過程。這壹過程持續進行,直到網絡輸出的誤差降低到可接受的水平,或者直到預設的學習次數。
1)正向傳播:輸入樣本-》;輸入層-》;每個隱藏層(處理)-》;輸出層
註1:如果輸出層的實際輸出與預期輸出(教師信號)不壹致,則轉到2)(誤差反向傳播過程)。
2)錯誤反向傳播:輸出錯誤(某種形式)-》;隱藏層(逐層)-》輸入層
其主要目的是通過將輸出誤差回傳並將誤差分配給每層中的所有單元來獲得每層單元的誤差信號,然後對每個單元的權重進行校正(該過程是壹個權重調整的過程)。
註2:權重調整的過程也是網絡的學習和訓練過程(即學習、權重調整的起源)。
具體公式及推導請參考相關教材,此處公式表述較難。