一些琐碎+分不清的知识点
生活随笔
收集整理的這篇文章主要介紹了
一些琐碎+分不清的知识点
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
機器學習部分
反向傳播 (Back propagation)vs 梯度下降(Gradient descent)
反向傳播算法是用來訓練ANN的。簡而言之,訓練ANN就是通過反向傳播代價,以減少代價為導向,調整參數。
調參的方式是采用梯度下降算法(Gradient descent),沿著梯度方向調整參數大小。
反向傳播算法的推導可以看博客:反向傳播算法具體推導過程
交叉熵
其中在soft target時,用到了raise the temperature策略,來提高soft target對應的cross entropy。
熵,說白了就是信息量。在dark knowledge論文中,Hinton提到利用soft target來提高交叉熵,就是要增大模型學到的信息量。(存疑)
為何CNN中的激活函數采用的是ReLU?
神經網絡中常見的激活函數有sigmoid, tanh,而在CNN中我們最常使用的是ReLU。原因有一下三點:
1. 采用sigmoid等函數,算激活函數時(指數運算),計算量大,反向傳播求誤差梯度時,求導涉及除法,計算量相對大,而采用ReLU激活函數,整個過程的計算量節省很多。
2. 對于深層網絡,sigmoid函數反向傳播時,很容易就會出現梯度消失的情況(在sigmoid接近飽和區時,變換太緩慢,導數趨于0,這種情況會造成信息丟失,無法完成深層網絡的訓練。
3. ReLU會使一部分神經元的輸出為0,這樣就造成了網絡的稀疏性,并且減少了參數的相互依存關系,緩解了過擬合問題的發生。
C++部分
字符串處理函數
總結
以上是生活随笔為你收集整理的一些琐碎+分不清的知识点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度神经网络模型压缩方法总结
- 下一篇: python以什么表示代码层次_pyth