ML常用技巧
ML常用技巧
- Regularization
- Modification of the logistic regression to the SVM
- 圖片鏈接和圖片上傳
- LaTex數(shù)學(xué)公式
- UML序列圖和流程圖
- 離線寫博客
- 導(dǎo)入導(dǎo)出Markdown文件
- 豐富的快捷鍵
Regularization
Overfitting
通常來說,當(dāng)feature的個(gè)數(shù)非常多時(shí),非常容易發(fā)生overfitting現(xiàn)象。先說underfitting,當(dāng)model不能很好的反應(yīng)數(shù)據(jù)中的規(guī)律時(shí),我們可以說發(fā)生了underfitting,正如下圖中最左側(cè)的圖一樣。而當(dāng)feature的個(gè)數(shù)非常多時(shí),可以通過調(diào)整參數(shù),使得訓(xùn)練后的模型剛好可以代表每一個(gè)點(diǎn)的特性。而如果此時(shí)的model又不具有描述新數(shù)據(jù)的關(guān)系,那么就發(fā)生了overfitting。正如下面最右側(cè)的圖。下面中間的圖可以認(rèn)為是一種“剛剛好”的狀態(tài)。
underfitting justright and overfitting for linear regression
上圖給了一個(gè)關(guān)于線性回歸的例子,下面可以再看一個(gè)邏輯回歸中發(fā)生underfitting 和 overfitting的例子。
underfitting justright and overfitting for logistic regression
有些時(shí)候我們有很多很多量可以供我們分析,來訓(xùn)練我們的model,比方說預(yù)測房子的價(jià)格。
然而,當(dāng)feature的個(gè)數(shù)特別多的時(shí)候,就容易發(fā)生overfitting。但也有一些相應(yīng)的解決辦法,比如
- 手動的選擇一些feature
- 使用model selection algorithm
- Regularization :
- 保留所有的feature,但是要降低feature對應(yīng)的參數(shù) θjθj的值
- 這種方法當(dāng)feature的個(gè)數(shù)非常多的時(shí)候很有效,每一個(gè)feature都對預(yù)測貢獻(xiàn)一點(diǎn)點(diǎn)而已。
于是我們可以再cost function中加入一項(xiàng)λ∑nj=1θ2jλ∑j=1nθj2,來約束這些參數(shù)的大小。對于線性回歸來說,新的cost function就變成了
而對于邏輯回歸來說,新的cost function就變成了。
J(θ)=?1m∑i=1m(y(i)log(1?hθ(x(i)))+(1?y(i))loghθ(x(i)))+λ2m∑j=1nθ2j.J(θ)=?1m∑i=1m(y(i)log?(1?hθ(x(i)))+(1?y(i))log?hθ(x(i)))+λ2m∑j=1nθj2.
需要注意的是,λ∑nj=1θ2jλ∑j=1nθj2中不包含bias term θ0θ0,即jj<script type="math/tex" id="MathJax-Element-759">j</script>的值是從1開始取的。
總結(jié)
- 上一篇: 表单提交成功后重置表单
- 下一篇: ar9331修改flash大小和df、c