The Problem of Overfitting
如果有太多的 features,假设可能与训练数据太匹配了以致于预测未来的数据不准确。如下图:
解决 overfitting
1. 既然是由太多的 features 引起的,那么就排除一些 features
2. Regularization
不变动 features,因为 features 也是带有信息的,但是减少 θj 的数量级
Regularization Cost Function
Regularization
各个 θ 的参数越小,那么 h(θ) 会越简单,更不会 overfitting;
λ 叫做 regularization parameter,用来调节 regularization。注意,这里 j 是从 1 开始,所以 θ0 不需要包括进来。
如果 λ 很小,那我就当它为 0,会造成 overfitting;
如果 λ 很大,那么 θ 就会接近 0,然后是一条直线(θ0),造成 underfitting。
Regularized Linear Regression
J(θ)
只需要在 α 中加上 (θj / m ) * λ
Gradient descent
化简后,为
,因为 1 - αλ/m < 1,所以 θ 是一直减小的。
对 Normal Equation 使用,公式如下
Regularized Logistic Regression
J(θ)
与上方的一样,加上,在 α 中加上 (θj / m ) * λ,变成
Gradient Descent
与上方的一样。
所以这里与上面是一样的,只是 h(θ) 不同。
Advanced optimization
与之前一样。计算 J(θ) 、gradient 的方程,这里替换过去就可以。