其實(shí)就是把多變量假設(shè)函數(shù)帶入梯度下降算法之中:
梯度運(yùn)算的使用技巧1:特征縮放(feature scaling)
使特征值在一個(gè)相近的范圍袍榆,這樣的話更容易收斂從而更快的找到全局最優(yōu)解剃氧。
Once again宾肺,使特征值在一個(gè)相近的范圍以清,從而使梯度下降更快典格。只要范圍相近就OK廓潜。
歸一化(mean normalization):
特征值的范圍的標(biāo)準(zhǔn)差做分母(也可以是最大值減去最小值),然后每個(gè)特征值減去它們的的平均值做分子余耽。(因?yàn)橹灰沟锰卣髦捣秶嘟蚈K)
目的是使特征在一個(gè)相近的范圍缚柏,更快的收斂。
上圖中的bedrooms特征那里的分母應(yīng)該是4碟贾。但是就算是5币喧,對梯度下降計(jì)算來說影響也不大,因?yàn)樘卣骺s放并不需要非常精確袱耽,只要范圍相近就OK杀餐。
梯度運(yùn)算的使用技巧2:學(xué)習(xí)率(learning rate)α
其實(shí)就是選擇合適的學(xué)習(xí)率α。
查看代價(jià)函數(shù)曲線扛邑,選擇合適的α。
通常選擇合適的閾值ε是相當(dāng)困難的铐然,為了檢查梯度下降算法是否收斂蔬崩,常選擇查看代價(jià)函數(shù)曲線,而不依靠自動收斂測試搀暑。
α過大會導(dǎo)致代價(jià)函數(shù)振蕩或者發(fā)散沥阳,α過小會導(dǎo)致代價(jià)函數(shù)收斂太慢。
為了選擇更好的學(xué)習(xí)率α自点,所以通常選擇相差10倍的值來測試桐罕,然后查看代價(jià)函數(shù)圖,從而找到合理的值桂敛。(下圖中選擇還有3倍的數(shù)字)