天天看點

深度學習學習記錄一

深度學習學習記錄一

我這裡的規劃是,李宏毅的深度學習課程,然後林軒田的機器學習基石,機器學習技法,最後我們蘇老師的計算機視覺。後面就讀論文,複現程式了。

競賽,作業平台

讓機器自己學習來生産複雜的程式。如語音識别,圖像分類等。

Regression: 輸出一個數值的程式

Classification : 從設定好的資訊中,選擇一個輸出,例子alaf go,從19*19的棋盤中選擇一個最好的位置。

Structured Learning:讓機器學會創作。(黑暗大陸)

1.Function with unknown Parameters

<code>y = b + wx</code>

b: bias

w: weight

2.Define Loss from Training Data

<code>L(b,W)</code>

3.Optimization

Gradient Descent :have local minima 局部最優解

η:learning rate

<code>w = η * dL/dw</code>

李宏毅老師,這裡使用自己的2017-2020的youtube資料來預測第二天的觀看人數。用一個w來預測,等于用前一天預測,效果不好。發現曲線是七天一個循環,是以使用7個w預測。然後效果優化到極限,還是有誤差。是以線性函數(linear models)不夠用來預測。piecewise linear curves(分段線性函數),曲線也可以用piecewise linear curves來逼近。

y = c * (1 / 1 + e ^ -(b + wx1))

w:改變斜率

b:左右移動

c:改變高度

神經網絡原理

y = b + ∑c * (1 / 1 + e ^ -(b + wx1)) ci,bi,wi (通過多個sigmoid函數來相加生成piecewise linear curves )

y = b + ∑c * (1 / 1 + e ^ -(b + ∑wx)) ci,bi,wij,xj (通過多個sigmoid函數來相加生成piecewise linear curves ) 這個式子可以推出神經網絡

根據式子推到神經網絡

将式子矩陣化1

将式子矩陣化2

上圖的矩陣式子

L(θ) θ 是所有的 Unknown parameters

g :gradient : 梯度

batch 把資料分為多個batch,用小batch 來更新參數。一個epoch是把所有的batch過一遍的結果。

這個是hard sigmoid。

y = b + ∑c * max(0,b + ∑wx) ci,bi,wij,xj

效果比兩層多神經元好很多。是以叫深度學習。括弧笑

論文收集 alexnet vgg googlenet residualnet

繼續閱讀