我真的需要幫助在一個非常基本的神經網絡中實現連續的tanh-sigmoid激活函數。如果你可以給出一個很好的基本例子,但如果你可以在我的source code中改變它,我會非常感激!而且,隨機權重應以什麼範圍開始(即什麼範圍)?神經網絡連續tanh-sigmoid激活函數和隨機權重
回答
重量範圍取決於您擁有的輸入數據範圍。在一些實現中,權重也可以是負的。
對於可能乙狀結腸功能,點擊這裏(正切不是唯一的可能性):
http://en.wikipedia.org/wiki/Sigmoid_function
提示:您可以用通常矩陣乘法計算NN。
http://en.wikipedia.org/wiki/Neural_network
P.S:可能不是一個好主意,在JavaScript來做到這一點。
你可以通過EXP(x)的實現它,請參閱:http://www.javascripter.net/faq/mathfunc.htm
sinh(x) exp(x) - exp(-x) exp(2x) - 1
tanh(x) = ------- = ------------------ = -------------
cosh(x) exp(x) + exp(-x) exp(2x) + 1
,讓你:
function tanh(x) {
e = Math.exp(2*x);
return (e - 1)/(e + 1) ;
};
另一個解決方案是將一個表的正切函數值,並定義一個JavaScript函數,該函數根據存儲在數組中的tanh值插值x的tanh值
通常人們不希望[-inf ... + inf]作爲輸入值的範圍,並且不希望[-1 ... + 1]作爲輸出值的範圍 - - 因此你可能需要一個不同的sigmoid函數!
您需要取預期的輸入值範圍和輸出值的預期範圍,並使用它們來移動實際的S形函數,權重範圍和閾值。
通常使用0.7或更大的閾值。你需要嘗試一下。
this.output = 2/(1 + Math.exp(-2 * input)) - 1;
這似乎不是我想要使用的功能(http://annet.eeng.nuim.ie/intro/course/chpt3/sigmoid.shtml,在「Tan Sigmoid」下)。但是一旦你有了這個價值,你對它做了什麼? –
做一個litte代數,你會發現當c = 1時,鏈接中的函數等於我發佈的函數。或者只是[問Wolfram Alpha](http://www.wolframalpha.com/input/?i=%28exp%28n%29+-+exp%28-n%29%29+%2F+%28exp%28n%29 +%2B + EXP%28-n的%29%29 +%3D%3D + 2 +%2F +%281 +%2B + EXP%28-2 + N%29%29 + - + 1)。 –
- 1. 訪問神經網絡權和神經元激活
- 2. OpenCV神經網絡權重
- 3. 神經網絡的激活/輸出
- 4. 神經網絡迴歸模型輸出層的激活函數
- 5. 這個神經網絡應該使用哪個激活函數?
- 6. 神經網絡中權重的意義和規範化函數
- 7. 經常性神經網絡的權重
- 8. 神經網絡中的連續輸出
- 9. 神經網絡訓練連續值
- 10. 用於神經網絡的變換不連續函數
- 11. 多層神經網絡中的權重
- 12. 神經網絡加權
- 13. 神經網絡和異或函數
- 14. 可以使用內置張量函數作爲神經網絡的激活嗎?
- 15. 神經網絡從零開始在python中使用sigmoid激活
- 16. 如何在神經網絡中使用Softmax激活功能
- 17. 神經網絡乙狀結腸激活與偏見更新
- 18. 神經網絡
- 19. 神經網絡
- 20. 卷積神經網絡中權重和輸出的值
- 21. 關於和神經網絡權重矢量的一般查詢
- 22. 建立一個已知權重和偏差的神經網絡
- 23. 爲什麼神經網絡需要權重和偏差?
- 24. 神經網絡正弦函數
- 25. 神經網絡逼近函數
- 26. 神經網絡(FFW,BP) - 函數逼近
- 27. 圖論和神經網絡
- 28. SIFT和神經網絡Matlab
- 29. 神經網絡和IDS
- 30. 神經網絡的加權輸入
是的,我知道我需要使用哪個函數,但您如何實際執行它?你如何處理返回的價值?你把它與什麼比較? –
對於我的情況tanh和javascript是必須的,忍耐着我:)但我真正感興趣的是它在代碼中的樣子。 –
看到上面的答案 – Tilo