Regression(回歸)
回歸可以用來做什么换淆?
- 股票預(yù)測:Input 股票歷史數(shù)據(jù),Output 明日股票數(shù)據(jù)
- 自動駕駛:Input 周圍障礙物情況形真,Output 方向盤角度
- 推薦系統(tǒng):Input 使用者A莉兰,商品B秦效,Output 購買商品的可能性
數(shù)學(xué)前提
- 中心極限定理:當(dāng)樣本數(shù)量很大的時候,樣本往往趨于正態(tài)分布
- 正態(tài)分布:呈樣本數(shù)量中間高恢氯、兩頭低的分布
- 最大似然估計:概率的反向带斑。“概率”是已知參數(shù)求概率勋拟,比如知道硬幣正反的參數(shù)都是0.5勋磕,來求得硬幣正面的概率是多少。最大似然估計是通過場景呈現(xiàn)的結(jié)果敢靡,來反求得這個對象的幾個參數(shù)是多少挂滓。
用Regression來預(yù)測Pokemon進(jìn)化后的CP值
Step1: Model
- Input 10只Pokemon的相關(guān)數(shù)值(當(dāng)前CP值,體重啸胧,種類等)赶站,Ouput它進(jìn)化后的Pokemon的CP值
Step2: Goodness of Function
- 需要有一個function來評估之前的functions的好壞,把這個function叫做 Loss Function (損失函數(shù))
- 數(shù)值越大表示function越不好(上標(biāo)代表是第幾只pokemon纺念,下標(biāo)代表pokemon的cp參數(shù))
- 所以每一次迭代都朝著損失函數(shù)減小的方向前進(jìn)贝椿,直到找到了當(dāng)前參數(shù)的損失函數(shù)極小值,那么損失函數(shù)的極小值就是最小值嗎陷谱?有沒有可能只找到了局部最優(yōu)解烙博,而不是全局最優(yōu)解。即烟逊,是否只找到了損失函數(shù)曲線上的極小值點渣窜,而非最小值點?
- convex function(凸函數(shù)):若一個函數(shù)最多只存在一個極小值點焙格,則該函數(shù)是convex function
- 在Linear Regression問題中图毕,損失函數(shù)就是一個凸函數(shù),所以眷唉,在當(dāng)前的參數(shù)下予颤,一定能找到全局最優(yōu)解。
Step3: Best Functon
-
基本步驟
- 基本思路:
- 即
- 即
- 找到使得損失函數(shù)最小的w和b冬阳,如何找到呢蛤虐,運用 Gradient Descent,梯度下降
- 梯度下降肝陪,對參數(shù)w求導(dǎo)驳庭,求出來損失函數(shù)的斜率,再乘上參數(shù)n,把值加在參數(shù)w上饲常,得到
- ...
- 不斷優(yōu)化迭代蹲堂,直到和的差值小于某一特定數(shù),或者迭代多少次以上
-
求導(dǎo)
梯度下降代碼:
epsilon = 0.00001
def GradientDescend(diff,w,y,x_cp):
while(diff>=epsilon):
w_next = 0
for y_n,x in y,x_cp:
w_next += w - n * ( 2 * (y_n - (b + w * x))) * -1 * x
diff = w - w_next
w = w_next
return w
- 但是也要注意模型的選擇贝淤,過于貼合當(dāng)前實驗值的曲線柒竞,有可能會造成overfitting(過擬合)因為當(dāng)前曲線也由其他因素(測量誤差,噪音播聪,和其他參數(shù))影響朽基。過于用現(xiàn)有的參數(shù)去模擬其他的參數(shù),會使得模型變得復(fù)雜并且不具備健壯的泛化能力离陶。
Step2 Optimised: Regularization(正則化)
- 優(yōu)化損失函數(shù)稼虎,期待一個參數(shù)值更加小的function,更加平滑的曲線(不要過于平滑)
- 越大招刨,實驗的誤差會越大 霎俩,但是對于測試的誤差可能會變小。
- 損失函數(shù)后面會添加一個額外項计济,這可以看作是損失函數(shù)的“懲罰項”茸苇,是用來解決模型過擬合問題的。通常有L2-Norm, L1-Norm,L0-Norm(L2范式或者L2正則化)
- L2-Norm
- L1-Norm
- L1-Norm和L2-Norm咋一看看起來好像差不多沦寂,都是讓參數(shù)變小学密,但其實有一定區(qū)別,兩者求導(dǎo)后传藏,L1-Norm會出現(xiàn)腻暮,L1-Norm會讓參數(shù)變稀疏,也就是會讓一些參數(shù)變?yōu)?.
通過和L2規(guī)范化的權(quán)重更新規(guī)則對比毯侦,可以看出在 L1 規(guī)范化中哭靖,權(quán)重通過一個常量向 0 進(jìn)行縮小。在 L2 規(guī)范化中侈离,權(quán)重通過一個和 w 成比例的量進(jìn)行縮小的试幽。所以,當(dāng)一個特定的權(quán)重絕對值 |w| 很大時卦碾,L1 規(guī)范化的權(quán)重縮小得遠(yuǎn)比 L2 規(guī)范化要小得多铺坞。相反,當(dāng)一個特定的權(quán)重絕對值 |w| 很小時洲胖,L1 規(guī)范化的權(quán)重縮小得要比 L2 規(guī)范化大得多济榨。最終的結(jié)果就是:L1 規(guī)范化傾向于聚集網(wǎng)絡(luò)的權(quán)重在相對少量的高重要度連接上,而其他權(quán)重就會被驅(qū)使向 0 接近绿映。
深度學(xué)習(xí)中的正則化技術(shù)—知乎專欄 - L0-Norm
- 由于L0-Norm主要用來衡量參數(shù)中的非零參數(shù)個數(shù)擒滑,對模型的正則化效果并不好腐晾,所以通常用L1-Norm來正則化
- 為什么只對w/Θ做限制,不對b做限制丐一?
- 因為限制是為了使得曲線的彎曲程度更加合理藻糖,b是截距,不會對彎曲程度造成影響库车。
- L2-Norm