之前的博客里,跟大家分享了归一化(Regularization)的概念:保留所有的特征,但是减小参数的大小(Magnitude)。

这一次捏,跟大家讨论讨论,归一化线性回归模型和归一化逻辑回归模型。

首先跟大家明确一件事,为什么有些机器学习的模型需要用到归一化这个方法呢?答案有两条:

* 归一化能够加快梯度下降的步伐,也就是获得最优解的速度
* 归一化能够提交模型的精度 具体的分析我们可以后续来讨论,这里就不赘述了。

归一化线性回归模型(Regularized Linear Regression)

我们之前讨论过,归一化代价函数。线性回归的代价函数和归一化代价函数的表达式是一样的:

如果我们使用梯度下降算法使得这个代价函数最小,那么我们得到的梯度下降算法将表现为以下形式:(我们未对ø0进行归一化)

对于上面的算法,j=1,2,3,...,n 时,更新的表达式可以进行调整得到:

可以看出来,归一化线性回归的梯度下降算法与之前的变化在于,每次在原有算法更新规则的基础之上都令ø的值减少了一个额外的值。

同样的,如果利用正规方程(Normal Equation)来求解归一化线性回归模型,表达式如下:

表达式中,矩阵的大小为n+1*n+1

归一化逻辑回归模型(Regularized Logistic Regression)

同样的,对于逻辑回归模型,我们也给代价函数增加一个归一化的表达式,便得到了如下的表达式:

要得到这个代价函数的最小值,通过求导,得到的梯度下降算法表达式如下:

注:只是看上去和线性回归一样,但是这里面的假设函数  ,所以与线性回归是不同的。

以上,便是归一化两个回归模型的内容了。至此,我们学习到的机器学习中回归模型的相关内容基本都涉及到了。下面将会讨论机器学习中重要的一个算法——神经网络(
Neural Network)。

技术
©2019-2020 Toolsou All rights reserved,
错误集:redis重启服务出错(Waiting for Redis to shutdown ...)C语言中数据的存储Python-基于OpenCV的轮廓填充 泛洪算法 孔洞填充【C#】实现学生成绩信息管理系统Python 实现js与Django后台的前后台交互java获取两个日期之间的所有日期vue中的axios拦截器拦截302状态码Python中的pycharm编辑器 界面风格修改【Golang 基础系列十】Go 语言 条件语句之ifAndroid开发中实现从一个页面跳转到另一个页面