我從this blog使用的,而不是雙曲正切激活功能乙狀結腸失敗 - 神經網絡
查看以下code它給使用的選項均sigmoid
和tanh
激活功能。
的XOR測試似乎好工作與tanh
功能產生〜(0,1,1,0)
但是一旦轉到sigmoid
我得到錯誤的輸出〜(0.5,0.5,0.5,0.5)
我已經與another piece of code我在網上找到和嘗試這個完全相同的問題發生。
似乎唯一改變的是激活函數(及其派生)。改變這種方式是否需要其他改變,比如後向推演?
非常感謝您的幫助!
您是否嘗試過增加sidmoid-only網絡的大小來驗證它是否能夠學習XOR?嘗試一些像2-10-1那樣的矯枉過正。 tanh輸出間隔'[-1,1]'傾向於將SOR更快地與sigmoid輸出層相結合。使用sigmoid不會改變底層反向傳播計算。 – jorgenkg