机器学习之线性回归(Linear Regression)

1、线性回归概念

    机器学习中的两个常见的问题:回归任务和分类任务。那什么是回归任务和分类任务呢?简单的来说,在监督学习中(也就是有标签的数据中),标签值为连续值时是回归任务,标志值是离散值时是分类任务。而线性回归模型就是处理回归任务的最基础的模型。

线性:两个变量之间的关系一次函数关系的——图象是直线,叫做线性;

非线性:两个变量之间的关系不是一次函数关系的——图象不是直线,叫做非线性。

回归:人们在测量事物的时候因为客观条件所限,求得的都是测量值,而不是事物真实的值,为了能够得到真实值,无限次的进行测量,最后通过这些测量数据计算回归到真实值,这就是回归的由来。

2、线性回归解决问题

     对大量的观测数据进行处理,从而得到比较符合事物内部规律的数学表达式。也就是说寻找到数据与数据之间的规律所在,从而就可以模拟出结果,也就是对结果进行预测。解决的就是通过已知的数据得到未知的结果。例如:对房价的预测、判断信用评价、电影票房预估等。

3、线性回归基本形式

 在只有一个变量的情况下,线性回归可以用方程:y = ax+b 表示。而如果有多个变量,也就是n元线性回归的形式如下:

n元线性回归

在这里我们将截断b用θ0代替,同时数据集X也需要添加一列1用于与θ0相乘,表示+b。最后写成矩阵的形式就是θ的转置乘以x。其中如果数据集有n个特征,则θ就是n+1维的向量并非矩阵,其中包括截断b。

4、线性回归目的

线性回归的目的就是求解出合适的θ,在一元的情况下拟合出一条直线(多元情况下是平面或者曲面),可以近似的代表各个数据样本的标签值。所以最好的直线要距离各个样本点都很接近,而如何求出这条直线就是本篇文章重点要将的内容。

5、线性回归模型计算

为了容易理解模型,假设该模型是一元一次函数,我们把一组数据x和y带入模型中,会得到如下图所示线段:

image

是不是觉得这条直线拟合得不够好?显然最好的效果应该是这条直线穿过所有的点才是,需要对模型进行优化,这里我们要引入一个概念。

损失函数:是用来估量你模型的预测值 f(x)与真实值 YY 的不一致程度,损失函数越小,模型的效果就越好。它的具体形式如下:

另一种写法如下:

其中hθ(x^(i))代表每个样本通过我们模型的预测值,y^(i)代表每个样本标签的真实值,m为样本个数。因为模型预测值和真实值间存在误差e,可以写作:

 

(预测值-真实值)的平法和的平均值,换句话说就是点到直线距离和最小。

6、梯度下降法(GD)

      在一元函数中叫做求导,在多元函数中就叫做求梯度。梯度下降是一个最优化算法,通俗的来讲也就是沿着梯度下降的方向来求出一个函数的极小值。比如一元函数中,加速度减少的方向,总会找到一个点使速度达到最小。通常情况下,数据不可能完全符合我们的要求,所以很难用矩阵去求解,所以机器学习就应该用学习的方法,因此我们采用梯度下降,不断迭代,沿着梯度下降的方向来移动,求出极小值。梯度下降法包括批量梯度下降法和随机梯度下降法(SGD)以及二者的结合mini批量下降法(通常与SGD认为是同一种,常用于深度学习中)。

用一幅图来表示:

image

7、过拟合一欠拟合(underfitting and overfitting)

在机器学习模型训练当中,模型的泛化能力越强,就越能说明这个模型表现很好。什么是模型的泛化能力?

模型的泛化能力:机器学习模型学习到的概念在它处于学习的过程中时模型没有遇见过的样本时候的表现。

模型的泛化能力直接导致了模型会过拟合与欠拟合的情况。让我们来看看一下情况:

image

我们的目标是要实现点到直线的平方和最小,那通过以上图示显然可以看出中间那幅图的拟合程度很好,最左边的情况属于欠拟合,最右边的情况属于过拟合。

欠拟合:训练集的预测值,与训练集的真实值有不少的误差,称之为欠拟合。

过拟合:训练集的预测值,完全贴合训练集的真实值,称之为过拟合。

欠拟合已经很明白了,就是误差比较大,而过拟合呢是训练集上表现得很好,换一批数据进行预测结果就很不理想了,泛化泛化说的就是一个通用性。

解决方法:

使用正则化项,也就是给梯度下降公式加上一个参数,即:

加入这个正则化项好处:

  • 控制参数幅度,不让模型“无法无天”。

  • 限制参数搜索空间

  • 解决欠拟合与过拟合的问题。

 

  • 7
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值