第10周 Lecture 17 大量數(shù)據(jù)機(jī)器學(xué)習(xí)
- 隨機(jī)梯度下降(stochastic gradient descent)
步驟:
a.)訓(xùn)練數(shù)據(jù)重新隨機(jī)排列(Randomly shuffle(reorder) training examples)
b.) 算法描述
//1 - 10 次
// (for every j=0, ...,n)
和正常的梯度下降比起來,下降是隨機(jī)的,但是最后還是可以到最低點(diǎn),但這個(gè)不需要每下降一步都對(duì)所有訓(xùn)練數(shù)據(jù)重新計(jì)算,所以速度會(huì)快很多。
image.png
c.) 對(duì)比批量梯度下降(batch gradient descent)
// (for every j=0, ...,n)
- 小批量梯度下降(Mini gradient descent)
- Batch gradient descent: 每一步使用所有的訓(xùn)練集
- stochastic gradient descent: 每一步使用1個(gè)訓(xùn)練集
- Mini gradient descent: 每一步使用b個(gè)訓(xùn)練集
算法描述:
// (for every j=0, ...,n)
- 隨機(jī)梯度算法如何知道在收斂
- 建議每1000次,計(jì)算一次代價(jià)函數(shù),畫出曲線,是否收斂
- 隨著運(yùn)算次數(shù),減少學(xué)習(xí)率(
),例如
image.png
- 在線學(xué)習(xí)(online learning)
- 每天的數(shù)據(jù)都比較大,按每天的數(shù)據(jù)重新計(jì)算
-
CTR 點(diǎn)擊率預(yù)測學(xué)習(xí) learning the predict
image.png
image.png
- Map-reduce and data parallelism
把數(shù)據(jù)分在不同的機(jī)器同時(shí)進(jìn)行計(jì)算,完成計(jì)算后,再求和
例如對(duì)于梯度下降
把400條數(shù)據(jù)分成4份,每份100條,分在4臺(tái)機(jī)器同時(shí)運(yùn)行,4臺(tái)完成后,再求和。只要算法可以拆分
其中對(duì)于機(jī)器1
合并后
image.png




