2010-06-03 39 views
4

我將涉及人工神經網絡的一些C代碼移植到Java。我決定使用Encog framework向Encog網絡添加一個偏差神經元

我想我的網絡有一個偏置神經元(它使用加權突觸,總是輸出1.0)連接到隱藏層和輸出層;它們在this graph中用綠色標記。

如何以編程方式創建這樣的網絡?每個偏見神經元都應該有自己的層?我試圖爲每個偏置神經元實例化一個BasicLayer,但即使該層通過WeightedSynapse連接,這似乎也沒有任何效果。

謝謝

馬丁Wiboe

回答

4

好吧,我知道這一個!我是Encog的主要開發人員之一。 :)

我們增強了對Encog 2.4(beta版)的支持,但是即使當前版本支持此功能。在Encog中2.3偏差被稱爲閾值。因此,創建你的圖層,指定你想要的閾值。基本上,這將爲您指定的每個圖層創建閾值的偏置輸入。我將它全部構建在同一圖層中,因爲它可以提高性能,但它們的工作原理完全相同。

我們實際上已經討論過這個問題,我們正在使用Encog 2.4進行更清晰的討論。你可以在這裏閱讀討論。

http://www.heatonresearch.com/node/1477