以下內容爲本人學習Stanford Andrew Ng的課程Machine Learning的筆記,如有問題,歡迎指出與討論
機器學習框架
機器學習的目標就是對訓練集(Training Set)施加一定的學習算法(Learning Algorithms)獲取
當模型建好後,輸入測試集或驗證集(Test Set\Validation Set)到
梯度下降 (Gradient Descent)
最簡單的
若記
補充一些常見的符號:
m爲訓練集中樣本對
n爲特徵(feature)的維度;
下面定義損失函數,
梯度下降中更新
可以很形象地把這個想象成下山問題,取此次迭代位置的梯度的反向,走一個步長*梯度的距離,如圖:
當然在線性情況下,我們不用考慮局部最優解的情況。Andrew已經給出圖例,在線性情況下的
隨機梯度下降 (Stochastic Gradient Descent)
但是梯度下降的代價太大,每次都需要掃完整個訓練集才能更新一次
雖然,SGD每次不是朝着梯度最大的方向行進,但大致方向還是會趨向於最優解的。
神經網絡 (Neural Network)
神經網絡簡單說就是由許多個神經元構成的網絡,可以理解成中間生成了許多的中間