您的位置:首页 > 其它

【Stanford机器学习笔记】4-Regularization for Solving the Problem of Overfitting

2016-04-30 16:41 351 查看
前面讲了机器学习的两种应用:回归和分类。两种主要模型:线性回归模型和逻辑回归模型。为了使训练出来的机器学习模型具有普遍的泛化能力,需要对模型进行优化,例如欠拟合和过拟合问题,正则化算法正是用于解决机器学习算法中的拟合问题。

1. The problem of Underfitting and Overfitting

(1)线性回归和逻辑回归均存在过度拟合和欠拟合的问题

过度拟合的问题是,如果我们有很多特征变量,则训练出来的假设函数模型会对训练样本拟合的很好,但是对于新加入的数据,假设函数模型不能拟合的很好,又称为High Variance。

欠拟合则是假设函数不能对训练样本进行很好的拟合,又称为High Bias。





(2)如果训练样本较少,特征变量较多,则就可能出现过度拟合的问题,解决过度拟合的方法有两种:

减少特征变量的数量,但是这样也减小了数据的信息

手动减小特征变量数量

利用算法自动减小特征变量数量

正则化算法

正则化算法主要是保留所有特征变量,但是对所有参数加上权重限制每个参数的贡献度



2. Cost Function with regularization term

(1)加入正则化项的代价函数变为:

J(θ)=12m[∑i=1m(hθ(x(i))−y(i))2+λ∑j=1nθ2j]



(2)正则化参数λ的使用

如果λ过大,则对于参数的惩罚就会增大,使得参数接近0,使得假设函数模型变得过于简单,就会出现欠拟合问题。

如果λ过小,则对于参数的惩罚就会影响不大,原模型复杂,使得假设函数模型变得过于复杂,就会出现过拟合问题。

(3)如何选择正则化参数λ

在接下来的课程中将会介绍一些算法用于正则化参数λ的自动选择。



3. Regularized Linear Regression

加入了正则化项后,线性回归模型的代价函数J(θ)发生了改变,

J(θ)=12m[∑i=1m(hθ(x(i))−y(i))2+λ∑j=1nθ2j]所以在进行训练时,也发生了改变,前面讲了,线性回归模型有两种优化方法:一是梯度下降法;二是正规方程法,下面分别介绍。

(1)梯度下降法

J(θ)改变以后,主要改变了梯度下降算法中的导数项求解过程,优化的基本过程是:

θ0:=θ0−α1m∑i=1m(hθ(x(i))−y(i))x(i)0θj:=θj(1−αλm)−α1m∑i=1m(hθ(x(i))−y(i))x(i)j

Notes: 正则化不对第一个参数项θ0进行正则化,只对后面的参数进行正则化。



(2)正规方程法

J(θ)改变以后,主要改变了参数解的形式,具体如下:

θ=(XTX+λ⎡⎣⎢⎢⎢⎢⎢0000010000⋱00001⎤⎦⎥⎥⎥⎥⎥(n+1)∗(n+1))XTy



(3)不可逆的情况

当不使用正则化项时,利用正规方程解算线性回归模型时,且当m≤n时,就会出现XTX不可逆的问题,所以此时不能利用正规方程进行求解。但是当加入了正则化项时,就不存在这个问题。



3. Regularized Logistic Regression

(1)加入正则化项后,逻辑回归模型的代价函数变为:

J(θ)=−[1m∑i=1my(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i)))]+λ2m∑j=1nθ2j

前面讲了两种逻辑回归模型算法:一是梯度下降法;二是高级优化算法,下面分别介绍。



(2)梯度下降法

J(θ)改变以后,主要改变了梯度下降算法中的导数项求解过程,优化的基本过程是:

θ0:=θ0−α1m∑i=1m(hθ(x(i))−y(i))x(i)0θj:=θj−α[1m∑i=1m(hθ(x(i))−y(i))x(i)j+λmθj]

Notes: 正则化不对第一个参数项θ0进行正则化,只对后面的参数进行正则化。



(3)高级优化算法

利用高级优化算法求解逻辑回归模型,主要是将正则化项加入到解算代价函数和求导函数的代码中,然后利用高级优化算法解算最优参数。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息