Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >机器学习虾扯淡之线性回归No.39

机器学习虾扯淡之线性回归No.39

作者头像
大蕉
发布于 2018-02-05 10:28:23
发布于 2018-02-05 10:28:23
5990
举报

今天晚上,整理了一下线性回归的完整的数学推导过程以及应用。

0x00甩定义

首先什么是线性回归?

就是面包屑嘛,我们跟着一个一个面包屑走,然后duang~~在脑里脑补出一条路,然后预测下一个面包屑的位置。

"鲁迅曾经说过:世界上本没有路,走的人多了也就成了路,因为草长不起来。"

鲁迅:我没说过这句话。

线性回归就是要找出这条笔直的路,来拟合数据,然后预测未来。

“JoeJoe老师你这图好丑啊”

“你信不信我疼你一百次啊?!!”

假设我们有N个面包屑。N等于5.

小一 ( x1 , y1 )

小二 ( x2 , y2 )

小三 ( x3 , y3 )

小四 ( x4 , y4 )

小五 ( x5 , y5 )

怎么找到这条路呢?

思考人生ing。

去他妈的思考人生。

啊啊啊啊,找路要紧找路要紧。

好了,就决定这条线,就

f(x) = wx + b

完美!!!完美符合一切情况。

(本文完)

等等等等,啥玩意叫完美符合一切情况?这尼玛啥也没干啊等于。w是几啊?b又是几啊?bbbbb就你bb。

好嘛。。

那我们肯定是误差越小越好,越符合情况越好啊。搬出小学课本查了查,嗯,最小二乘法。

简单来说,就是尽量让直线上预测的点跟实际的点欧拉距离最小。

啥玩意叫欧拉距离啊大蕉,你能不能别卖关子了?

就是我们现在所有说的空间距离,都是欧拉距离,比如,大蕉和小蕉,距离只有1毫米,这样。

也就是要这样。

L(w,b) = ∑ ( f(x) - y )^2

使上面这个值最小。

喔!!!!!我知道了,那这样就可以让曲线完美符合了。

知道你个大头鬼啦!!

作为一个小学生,我知道上面这个是一元二次方程,我直接抛物线求最小值就可以了。完美。

但是吖,我们生活中,遇到的可不仅仅是一元二次吖,可能是N元N次啊,你怎么求?

0x01求最优解

今天只介绍一种解法,就是梯度下降法。

我们定义一个学习率,也叫步长就是每一次走的步伐,步子大了会扯到什么你们自己知道的,我们叫做 α 。首先随便初始化一个w和b。

L(w,b) = ∑ ( f(x) - y )^2 = ∑ (wx + b - y) ^ 2

上面这里x和y都是已知的定值,所以直接代进去就可以求啦。

然后我们分别对w和b求导。

d(w) = dL / dw

d(b) = dL / db

然后令w = w - α * d(w) , b = w - α * d(b)

每次挪一步每次挪一步,总结找到一个局部最小值的,至于能不能找到全局最小值呢?

看运气,步子不要太大,不扯到,有可能可以喔。但是步子大了,又可能跳出局部最小值,找到另外一个局部最小值喔,万一找到了呢?

这里会有三种模式,上面说的是Batch - Gradiant Descent,批量梯度下降,也就是每次把所有的值都代进去算一遍。

第二种是 Stochastic - Gradiant Descent。随机梯度下降,每一次只代入一个值。随机算法随机解,解到哪里算哪里。

还有一种折中算法 Mini-Batch Gradiant Descent。小批量梯度下降。每次代入一小批,然后算一下。

第三种其实是最常用的。第一种把耗时太长,第二种吧太随机了。第三种,马马虎虎,多算几次还是能算好的。

谁叫人丑就要多学习呢?

0x01核函数

有时候我们会发现,这他妈直线哪能描述我的想法啊?不行,我要换,换换换。

我们可以这样,用一个叫核函数的东西,把低维的东西,映射到高维上。

map ( x , y ) => exp ( x , y)

啥叫映射呢?就是我们反过来想。

你关上灯,然后拿起小电筒,照在墙上。

墙就是你这束三维的光在墙这个二维面上的投影。

反过来,我们人脑也可以用一个映射,把这个小投影,还原想象成这束三维的光。

哈?你问我这样做有什么用?

比如说,桌子上猪肉中间有一小块肥肉(二维问题),你要把他挑出来(分类),只能切一刀,还只能切直线,咋办?

机智的小蕉,会把猪肉提起来(变成三维的),然后横着一切,完美。最中间的肥肉就飞了飞了。

从分类来说。

有线性核,多项式核,高斯核,径向基核。

越复杂的核函数,越容易过拟合喔,小心为妙。

0x02正则化

我从两个方面来说这个东西吧,分别是防止过拟合要怎么办?以及为什么这样能防止过拟合。

好了,怕过拟合,咋办?加正则项咯。有这三种,可以单独用也可以打组合拳。

L0 = ||w||0 使得参数非零的个数最小

L1 = ||w||1 使得参数的绝对值的和最小

L2 = ||w||2 使得参数的平方的和最小

这三个都可以防止过拟合,但是L0比较难受,是一个NP-Hard问题,所以一般都用L1或者L2。

好那我们要使得

||w|| <= C 也就是 ||w|| - C <= 0

C是某一个常数。这样怎么去求解呢?

拉格朗日乘子法。

不熟悉的小朋友自行度娘,简单来说就是把约束条件也丢到损失函数里边。

所以损失函数就变成了

L(w,b) = ∑ ( f(x) - y )^2 - λ * (||w|| - C)

然后跟上面一样去求最小值就可以啦。

下面这些听起来很炫酷的算法,其实就是加正则项啦

Lasso 回归 -> 加了L1正则项的线性回归

Ridge 回归 -> 加了L2正则项的线性回归

ElasticNet -> 加了L1和L2正则项混合双大的线性回归

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一名叫大蕉的程序员 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Linear Regression/线性回归与正则化(Andrew Ng 机器学习 一 )
本文介绍了线性回归及其在机器学习中的应用,通过具体编程实例和算法步骤讲解了线性回归的原理和实现方法,包括特征标准化、正则化、梯度下降和正规方程等关键概念。
码科智能
2018/01/02
1.1K0
Linear Regression/线性回归与正则化(Andrew Ng 机器学习 一 )
好记忆的机器学习面试--线性回归
对大量的观测数据进行处理,从而得到比较符合事物内部规律的数学表达式。也就是说寻找到数据与数据之间的规律所在,从而就可以模拟出结果,也就是对结果进行预测。解决的就是通过已知的数据得到未知的结果。例如:对房价的预测、判断信用评价、电影票房预估等。
mantch
2019/07/30
5590
好记忆的机器学习面试--线性回归
【Python机器学习】系列之线性回归篇【深度详细】
谢谢大家的支持!现在该公众号开通了评论留言功能,你们对每篇推文的留言与问题,可以通过【写评论】给圈主留言,圈主会及时回复您的留言。 本次推文介绍用线性模型处理回归问题。从简单问题开始,先处理一个响应变量和一个解释变量的一元问题。然后,介绍多元线性回归问题(multiple linear regression),线性约束由多个解释变量构成。紧接着,介绍多项式回归分析(polynomial regression问题),一种具有非线性关系的多元线性回归问题。最后,介绍如果训练模型获取目标函数最小化的参数值。在
量化投资与机器学习微信公众号
2018/01/29
4.4K0
BAT机器学习面试1000题系列(第150~279题)
长文~可先收藏再看哟~ 150、在感知机中(Perceptron)的任务顺序是什么?深度学习 DL基础 易 1 随机初始化感知机的权重 2 去到数据集的下一批(batch) 3 如果预测值和输出不一致,则调整权重 4 对一个输入样本,计算输出值   A. 1, 2, 3, 4   B. 4, 3, 2, 1   C. 3, 1, 2, 4   D. 1, 4, 3, 2   答案:(D) 151、假设你需要调整参数来最小化代价函数(cost function),会使用下列哪项技术?深度学习 DL基础 易
用户1332428
2018/03/09
11.8K0
BAT机器学习面试1000题系列(第150~279题)
文科生都能看懂的机器学习教程:梯度下降、线性回归、逻辑回归
把复杂的东西简单化,让非专业人士也能短时间内理解,并露出恍然大悟的表情,是一项非常厉害的技能。
新智元
2019/05/08
7660
文科生都能看懂的机器学习教程:梯度下降、线性回归、逻辑回归
【V课堂】机器学习系列:(二)线性回归
线性回归 本章介绍用线性模型处理回归问题。从简单问题开始,先处理一个响应变量和一个解释变量的一元问题。然后,我们介绍多元线性回归问题(multiple linear regression),线性约束由多个解释变量构成。紧接着,我们介绍多项式回归分析(polynomial regression问题),一种具有非线性关系的多元线性回归问题。最后,我们介绍如果训练模型获取目标函数最小化的参数值。在研究一个大数据集问题之前,我们先从一个小问题开始学习建立模型和学习算法。 一元线性回归 上一章我们介绍过在监督学习问题
小莹莹
2018/04/23
1.5K0
【V课堂】机器学习系列:(二)线性回归
机器学习(8)之范数正则与Lasso详解
关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第二 【Python】:排名第三 【算法】:排名第四 线性回归及L2正则 大家对于线性回归以及带有二范数正则的线性回归已经比较熟悉
昱良
2018/04/04
1.5K0
机器学习(8)之范数正则与Lasso详解
【机器学习】一文读懂线性回归、岭回归和Lasso回归
本文介绍线性回归模型,从梯度下降和最小二乘的角度来求解线性回归问题,以概率的方式解释了线性回归为什么采用平方损失,然后介绍了线性回归中常用的两种范数来解决过拟合和矩阵不可逆的情况,分别对应岭回归和Lasso回归,最后考虑到线性回归的局限性,介绍了一种局部加权线性回归,增加其非线性表示能力
yuquanle
2019/09/30
6210
【机器学习】一文读懂线性回归、岭回归和Lasso回归
机器学习算法_线性回归
线性回归模型是利用线性函数对一个或多个自变量和因变量(y)之间关系进行拟合的模型。
Datawhale
2019/07/08
5610
【NLP机器学习基础】从线性回归和Logistic回归开始
古语常云:“大道至简”,万事万物纷繁复杂,最终却归至几个最简单的道理。我常常在想,如今很火的AI领域是否也是如此。将AI真正学懂学会的过程就像一场遥不可及的漫长攀登,起始于晦涩难懂的数学领域(高数/线代/概率论),踉跄于公式满篇的机器学习,还要翻越神经网络、编程与数据科学库等重重大山,最终抵达应用的那个分岔路口,也从不是彼岸,只是新的开始。
用户1508658
2020/02/19
1.1K0
机器学习从0入门-线性回归
机器学习有许多不同的算法,每个算法都有其特定的应用场景和优缺点。然而,最简单的机器学习算法可能是线性回归。
皮大大
2023/08/25
6370
机器学习从0入门-线性回归
机器学习中的线性回归,你理解多少?
机器学习中的线性回归是一种来源于经典统计学的有监督学习技术。然而,随着机器学习和深度学习的迅速兴起,因为线性(多层感知器)层的神经网络执行回归,线性回归的使用也日益激增。
AI科技大本营
2020/02/25
1.2K0
线性回归:这可能是机器学习中最简单的一个模型了
在《机器学习宝典》前 6 篇的内容主要都是聊一些关于机器学习中的一些基础常识、模型评估指标、模型评估方法以及数据泄露问题,从这一篇开始聊一些模型的原理的事情。这篇带来的是关于线性回归模型的原理介绍。
abs_zero
2019/05/17
9310
【机器学习与实现】线性回归分析
如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。
Francek Chen
2025/01/22
1500
【机器学习与实现】线性回归分析
机器学习之线性回归算法
标签矩阵是这样一个矩阵:对应类别的位置为1,其他位置为0,例如,数字1对应0100000000,数字0对应1000000000,数字3对应0010000000。
叶茂林
2023/07/30
2220
机器学习之线性回归算法
机器学习总结(一):线性回归、岭回归、Lasso回归
其中λ称为正则化参数,如果λ选取过大,会把所有参数θ均最小化,造成欠拟合,如果λ选取过小,会导致对过拟合问题解决不当,因此λ的选取是一个技术活。 岭回归与Lasso回归最大的区别在于岭回归引入的是L2范数惩罚项,Lasso回归引入的是L1范数惩罚项,Lasso回归能够使得损失函数中的许多θ均变成0,这点要优于岭回归,因为岭回归是要所有的θ均存在的,这样计算量Lasso回归将远远小于岭回归。
全栈程序员站长
2022/07/01
8390
机器学习总结(一):线性回归、岭回归、Lasso回归
机器学习算法系列(一):logistic回归
定义:X是连续随机变量,X服从logistic分布,则X具有下列的分布函数和密度函数:
磐创AI
2019/05/05
5940
机器学习算法系列(一):logistic回归
线性回归算法、L2正则化(岭回归)
对大量的观测数据进行处理,从而得到比较符合事物内部规律的数学表达式。也就是说寻找到数据与数据之间的规律所在,从而就可以模拟出结果,也就是对结果进行预测。解决的就是通过已知的数据得到未知的结果。例如:对房价的预测、判断信用评价、电影票房预估等。
大数据技术与机器学习
2019/11/20
1.9K0
线性回归算法、L2正则化(岭回归)
【机器学习】第二部分上:线性回归
线性模型是自然界最简单的模型之一,它描述了一个(或多个)自变量对另一个因变量的影响是呈简单的比例、线性关系.例如:
杨丝儿
2022/02/17
2K0
【机器学习】第二部分上:线性回归
BAT机器学习面试1000题系列
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/article/details/78796328
大黄大黄大黄
2018/09/14
2.8K0
BAT机器学习面试1000题系列
相关推荐
Linear Regression/线性回归与正则化(Andrew Ng 机器学习 一 )
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档