面试时让你手推公式不在害怕 | 线性回归

2019 年 1 月 18 日 计算机视觉life

点击“计算机视觉life”关注,置顶更快接收消息!

本文阅读时间约10分钟

一、例子

本故事纯属虚构如有雷同那肯定是巧合。

A去银行办信用卡,柜台的漂亮妹子询问:"请问您的年龄和月收入是多少?"A:"20岁,月收入2万元"。妹子:“您可办理的额度为1万元”。此时,B同样办信用卡,妹子同样询问:“请问您的年龄和月收入是多少?”B:“19岁,月收入1.9万元”。妹子:“您可办理的额度为1.1万元”。A此时就郁闷了,我月收入比他高,为什么额度比他低呢。别问为什么!机器算的!那么机器怎么算的呢?这个时候我们就可以拿出机器学习中最基本也是最重要的算法之一线性回归


岁数 月收入/万元 信用卡额度/万元
A 20 2 1
B 19 1.9 1.1

(左右滑动试试)

这个图可以看出机器如何进行预测的,它会根据大量的之前办理信用卡的人的数据就是图中红色的点(年龄、工资、信用卡额度)找出来最好的拟合线(面)来进行预测,这样你的数据来了之后直接带入进去就可以得出来该给你多少额度。

ps:有同学可能说不是线性模型么,咋图是个面呢?

线性不等于直线,特征是一维的,线性模型在二维空间构成一条直线;特征是二维的,线性模型在三维空间中构成一个平面;若特征是三维的,则最终模型在四维空间中构成一个体;以此类推……好呗,后面的需要大家自己想象啦。

二、模型推导

那么,线性回归的原理是什么呢?我们接下来从机器学习的三板斧(模型,代价函数,优化算法)开始分析。

1、模型

假设是年龄,则是年龄的参数;是工资,则是工资的参数。则,拟合的平面为:(其中b是偏移量)

当然实际情况中,银行的漂亮妹妹会让你填大量的信息,也就是模型不止两个特征和参数,可以把模型改写为通用形式:

其中,

至此我们得到线性回归的模型。

2、代价函数

1.误差项分析:

真实值和预测值之间肯定是存在差异的(用ε来表示误差)也就是说A去银行办信用卡,本应该给1万元,但实际可能给9千或者1万,这样就不可避免的产生误差。对于每个样本:

既然说到误差了,咱们就来好好唠一下,首先银行的目标得让误差越小越好,这样才能够使得我们的结果是越准确的。那么这个误差有什么规律可循吗?

误差 是独立并且具有相同的分布,并且服从均值为0方差为ε的高斯分布。

独立:A和B的信用卡额度不会相互影响,不会因为给A额度高了,就给B低。

同分布:都是一家银行,一家预测系统

高斯分布:银行可能会多给,也可能会少给,但是绝大多数情况下这个浮动不会太大,极小情况下浮动会比较大,符合正常情况,所以我们认为该误差是可以服从高斯分布的。

误差项ε是独立且具有相同的分布,服从均值为0方差为的高斯分布

2.推导

(1)预测值和误差:

(2)由于误差服从高斯分布:

(3)将(1)带入(2):

上式的意思就是我去办信用卡,得到的额度恰好是等于真实情况下就该给我这么多的概率。(预测值和真实值对应的可能性大小)那么银行当然希望这个概率越大越好呀,越大代表越准确呀。

(4)又因为设定样本是独立同分布的,对其求似然函数:

似然函数最大化是为了逼近我们的数据。

(5)上式,是一个累乘,多难求对不对,我们可以转换成加法啊,于是引入对数即,对数似然函数:

(6)上式展开后得到:

因为常数,所以只要求,我们想要上式最大,但公式前一部分是常数,后面一部分是非负数,要让最大,即让减号后面部分最小。

所以,我们定义代价函数:(7),其中 保留是为了后续求导系数约分。

结:到这里我们终于推导出来了,银行只需要做一件事就可以了,那就是最小化这个函数,其实说白了就是要让我们的预测值和真实值之间的差异越小越好,这就是最小二乘法!

3、优化算法

对损失函数进行优化也就是求出参数w,b,使的损失函数最小化。有两种求解方法:

(1)求导法

  • 对各参数求偏导,并使其偏导为0,进而求出最优的参数。但此方法不适用于不可导函数,且计算量过大。

  • 矩阵求导运算常用公式(有么有很贴心,如果大家记不得可以参考):

    首先我们把展开方便求导:

    求上面式子的最小值该怎么办呢?求导啊,另导数等于0

    以上就是按矩阵方法优化损失函数,但上面方法有一定的局限性,就是要可逆;下面我们来说一说另外一个优化方法梯度下降法。

    (2)梯度下降法

    梯度下降法基于的思想为:要找到某函数的极小值,则沿着该函数的梯度方向寻找。若函数为凸函数且约束为凸集,则找到的极小值点则为最小值点。 梯度下降基本算法为: 首先用随机值填充(这被称为随机初始化),然后逐渐改进,每次步进一步(步长α),每一步都试图降低代价函数,直到算法收敛到最小。这两种方法的优缺点对比:

梯度下降 方程求解
需要选择学习率,可能由于学习率选择的不合适,导致模型效果差 不需要
需要多次迭代 一次运算得出
特征维数较大时,同样适用 因为矩阵求逆计算度比较复杂,一般N<10000时可以采用。
适用于各种模型 有局限性,比较逻辑回归就不适用

(左右滑动试试)

相关文章

原来CNN是这样提取图像特征的。。。

欢迎关注公众号:计算机视觉life,一起探索计算机视觉新世界~

登录查看更多
4

相关内容

线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为y = w'x+e,e为误差服从均值为0的正态分布。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【新书册】贝叶斯神经网络,41页pdf
专知会员服务
177+阅读 · 2020年6月3日
【干货书】机器学习Python实战教程,366页pdf
专知会员服务
338+阅读 · 2020年3月17日
【经典书】精通机器学习特征工程,中文版,178页pdf
专知会员服务
354+阅读 · 2020年2月15日
一文读懂线性回归、岭回归和Lasso回归
CSDN
34+阅读 · 2019年10月13日
面试时让你手推公式不在害怕 | 梯度下降
计算机视觉life
14+阅读 · 2019年3月27日
从零推导支持向量机 (SVM)
AI科技评论
9+阅读 · 2019年2月7日
已删除
将门创投
6+阅读 · 2019年1月2日
博客 | 机器学习中的数学基础(凸优化)
AI研习社
14+阅读 · 2018年12月16日
面试整理:关于代价函数,正则化
数据挖掘入门与实战
8+阅读 · 2018年3月29日
机器学习面试题精讲(一)
七月在线实验室
4+阅读 · 2018年1月11日
BAT机器学习面试1000题系列(第51~55题)
七月在线实验室
10+阅读 · 2017年10月8日
BAT机器学习面试1000题系列(第36~40题)
七月在线实验室
8+阅读 · 2017年10月3日
Image Captioning: Transforming Objects into Words
Arxiv
7+阅读 · 2019年6月14日
Arxiv
10+阅读 · 2018年4月19日
Arxiv
4+阅读 · 2018年3月19日
Arxiv
4+阅读 · 2016年12月29日
VIP会员
相关资讯
一文读懂线性回归、岭回归和Lasso回归
CSDN
34+阅读 · 2019年10月13日
面试时让你手推公式不在害怕 | 梯度下降
计算机视觉life
14+阅读 · 2019年3月27日
从零推导支持向量机 (SVM)
AI科技评论
9+阅读 · 2019年2月7日
已删除
将门创投
6+阅读 · 2019年1月2日
博客 | 机器学习中的数学基础(凸优化)
AI研习社
14+阅读 · 2018年12月16日
面试整理:关于代价函数,正则化
数据挖掘入门与实战
8+阅读 · 2018年3月29日
机器学习面试题精讲(一)
七月在线实验室
4+阅读 · 2018年1月11日
BAT机器学习面试1000题系列(第51~55题)
七月在线实验室
10+阅读 · 2017年10月8日
BAT机器学习面试1000题系列(第36~40题)
七月在线实验室
8+阅读 · 2017年10月3日
Top
微信扫码咨询专知VIP会员