Machine Learning
Stanford Univ, Coursera
Solving the Problem of Overfitting
The Problem of Overfitting
Cost Function
Regularized Linear Regression
Reqularized Logistic Regression
3-8 test
腫瘍を悪性か良性かをclassifyする医学診断問題を考える。
「$h_{\theta}(x)$ がtraining setにoverfitした」というのはどういうこと?
- □ training set に対して正しいpredictを返すし、新しいデータに対しても正しいpredictを返す。
- □ training set に対して正しいpredictを返さないが、新しいデータに対しては正しいpredictを返す。
- 〆 training set に対して正しいpredictを返すが、新しいデータに対しては正しいpredictを返さない。
- □ training set に対して正しいpredictを返さないし、新しいデータに対しても正しいpredictを返さない。
3-9 test
regularized linear regression において、$J(\theta)$を最小jにする$\theta$ を選ぶ。
$\displaystyle
J(\theta) = \frac{1}{2m} [
\sum_{i=1}^{m}(h_{\theta}(x^{(i)}) - y^{(i)})^2
+ \lambda \sum_{j=1}^{n} \theta_{j}^{2}
]
$
$\lambda$ が大き過ぎると(たとえば $\lambda=10^2$とか)どうなるか?
← [自分へのメモ] $\theta$が小くなるので、結果としてunderfittingになる。
- □ アルゴリズムはうまく動作する。とても大きい $\lambda$ の悪影響はない。
- □ overfittingを排除するのに失敗する。
- 〆 underfinttingとなり、training set にすらfitting できない
- □ gradient descentが収束しない
3-10 test
$m>0$ 個のtraining set で gradient descentを行う。
lerning rate $\alpha$は比較的小さく、
regularization parameter $\lambda > 0$ はある値を選ぶとする。
update ruleは次の式である。
$\theta_j := \theta_j (1-\alpha \frac{\lambda}{m}) + \alpha\frac{1}{m}\sum_{i=1}^{m}(
h_{\theta}(x^{(i)}) - y^{(i)}
)x_j^{(i)}$
$(1-\alpha\frac{\lambda}{m})$ の項について正しいのはどれ?
- □ $1 - \alpha \frac{\lambda}{m} \gt 1$
- □ $1 - \alpha \frac{\lambda}{m} = 1$
- 〆 $1 - \alpha \frac{\lambda}{m} \lt 1$
- □ 上のどれでもない
3-11 test
regularized logistic regression を使うとき、gradient descent が正しく動いているのを確認するのに最もよい方法は?
- □ $-[
\frac{1}{m} \sum_{i=1}^{m} y^{(i)} \log h_{\theta}(x^{(i)}) + (1-y^{(i)}) \log(1 - h_{\theta}(x^{(i)}))
]$
を繰返し回数の関数としてプロットし、減少することを確認する。
- □ $-[
\frac{1}{m} \sum_{i=1}^{m} y^{(i)} \log h_{\theta}(x^{(i)}) + (1-y^{(i)}) \log(1 - h_{\theta}(x^{(i)}))
]
- \frac{\lambda}{2m} \sum_{j=1}^{n} \theta_j^2$
を繰返し回数の関数としてプロットし、減少することを確認する。
- 〆 $-[
\frac{1}{m} \sum_{i=1}^{m} y^{(i)} \log h_{\theta}(x^{(i)}) + (1-y^{(i)}) \log(1 - h_{\theta}(x^{(i)}))
]
+ \frac{\lambda}{2m} \sum_{j=1}^{n} \theta_j^2$
を繰返し回数の関数としてプロットし、減少することを確認する。
← $\theta$ ベクトルの長さを小くすることでoverfitting を抑えるので、$\theta$の長さを損失に+する。
- □
$\frac{\lambda}{2m} \sum_{j=1}^{n} \theta_j^2$
を繰返し回数の関数としてプロットし、減少することを確認する。
Yoshihisa Nitta
http://nw.tsuda.ac.jp/