您当前的位置:网站首页>牛蛙,机器学习第2天:什么是线性回归?为什么是间隔的平方不是绝对值,特工

牛蛙,机器学习第2天:什么是线性回归?为什么是间隔的平方不是绝对值,特工

2019-04-07 00:54:50 投稿作者:admin 围观人数:209 评论人数:0次

01 导言

人工智能和机器学习现已是时下炽热的技能。各行各业的人都想着怎样运用人工智能和机器学习使他们的作业变的愈加简略高效。

机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值

机器学习

机器学习常识需求由浅入深,一步一步的学习。

这篇文章,咱们一同学习一下线性回归吧!

02 线性回归是牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细什么?

函数的界说考究的是 独立参数 x 非独立参数 y之间的对应联系。

y = f(x)

学好了函数,也就无意中为咱们奠定了学习 回归(Regression)的根底。

怎样了解线性回归?

线性回归 = 线性 + 回归

榜首:先了解什么是回归?

机器学习的意图主要是找到方针吴建豪离婚值 T 和 一堆数据之间的金枝联系,而确认机器学习中的关民国投机者系的办法有:分类和回归

怎样去区别分类和回归呢?

看方针值 T 是定性的值仍是定理的值:

定量输出称为回归;

定性输出称为分类;

比方说:

  • A: 猜测明日是多少度?数据有今日的度数x,气候状况y(晴天,雨天,阴天);
  • B: 猜测明日是什么气候?数据有今日的度数x,气候牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细状况y(晴天,雨天,阴天);

一同来看看A和B两个比如;今日的度数x是一个接连的值;而气候状况的确一个类别,三种状况选其一;

也便是说A和B的输入数据类型是相同的!

A中猜测明日有多少度?A会给出一个详细的值,且这个值是在一个接连的范围内。咱们管这种叫做回归。也便是定量输出称为回归;

B中猜测明日是什么气候?B给出的成果是一个定性的成果,这种叫分类。定性输出称为分类;

雷区1: 很多人会经过输入数据的类型来判别分类仍是回归,其实这和输入数据真没啥联系!

第二:再了解什么是线性?

函数中,方针值T 和参数x,y,z之间的联系有很多种牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细。比方说,

y = x,这便是线性联系;x和y的联系能够由一条直线表明;

机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值

体重和糖摄入量的联系

y = x^2,这可不是线性联系了;因为x和y的联系是抛物线了;

一步一步学 线性回归

StatQuest上现已很好的介绍了线性回归的办法,我就借用一下啦!(因为感觉说的不会比他的好!)。

图片来历:StatQuest

在StatQuest比如中,需求找到老鼠体重和老鼠尺度巨细之间的联系,数据点如上图。看着线性联系挺显着的。

第天才皇妃买一送一一步:假定联系

老鼠巨细 = a * 老鼠体重 + b

怎样确认a和b的值便是线性回归的方针。

趁便提一下,这个便是假定函数 h(x),h代表的是假定英文的头字母(Hypothesis);

图gta5修改器片来历:StatQuest

第二步:确认一个规范

图片来历:StatQuest

图片来历:StatQuest

如上图,依据数据,咱们能够画出很多条线来表明这个线性联系。究竟怎样去挑选最优的呢?

不论画的线怎样变,数学表达式不会变。

老冯敬先鼠巨细 = a * 老鼠体重 + b

那么,经过这个式子,输出恣意一个老鼠奶奶逝世了孙女忌讳体重,就会给出一个老鼠巨细值。咱们界说为 despire猜测值_i;

在已知的数据中,老鼠体重是对应的一个实践值的,界说为 实践值_i

| 徐向前猜测值_i - 实践值_i | 不便是猜测差错嘛!

这样,科学家们又造出了一个 丢失函数(Cost Function),也便是说所决议的联系要使得 丢失函数最小。

线性回归的丢失函数如下:一切差错平方的平均值

J = sum((猜测值_i - 实践值_i)^2) / n

n是数据点的个数;sum是求和的意思。

图片来历:StatQuest

图片来历:StatQuest

咱们有了这个方针,就旋转直线(改动斜率a)和上下移动改动截距(改动b)。上图是只改动斜率a的图,最终在一个视点的时分,咱们使得 丢失函数 J最小了。而这个进程,能够经过梯度下降来求得,详细的今后的文章会重一代书圣行斌点解说。

对了,线性回归的丢失函数 J还有一个姓名,叫做Mean Squaneotvred Error(MSE)。

03 略微提一下Gradient Descent(梯度下降)

我期望我的朋友们,都是看过我之前文章的。因为讲这个需求点微积分,详细是偏微分的常识。

厌烦的公式来了。仍是这张图。

图片来历:StatQuest

咱们知道,丢失函数 J = sum((猜测值_i - 实践值_i)^2) / n。上图便是一个 J - a(斜率)的联系图。

知道微积分的朋友应该知道怎样去找最小值,不便是找到 极小值的办法吗?导数为0,切线水觉悟平。

公式

详细进程是假定一个a或许b,算出偏微分,然后对a或许b进行调整。详细调整的办法这儿不展开讨论了。

一起考虑a和b的话,其实是找三维图画的最低点,如下图:

三维图画

04 勤学要好问:为什么丢失函数里要用距离的平方而不是距离的绝对值?

咱们有想过这个问题吗?差错是| 猜测值_i - 实践值_i | ,那我取牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细差错绝对值的和的最小值不也能够称为一个丢失函数嘛。

千万不要以为这个平方是马马虎虎来的。背面的道理真的我不愿意讲,因为公式太多。

差错 = 猜测值_i - 实践值_i

这个差错是契合必定概率散布的。看过我之前的文章介绍海量数据的中心极限定理的朋友,应该知道这个差错 能够被假定为:

平均值 u = 0,方差为 的正态散布。

正态散布

那么在已知正太散布的状况下,每一个数据点都会对应一个差错,而差错呈现的概率,精确的说是Likelihood是能够经过 正态散布的函数求得的。

likelihood(概率)

一切数据点 差错概率相加

当咱们对上述函梦参长老批判净空数取对数可得:

取对数

最大似然剖析,不懂得看我之前的文章。咱们要确保 L 最大,只需确保上式 右边值最大。

式子右边 榜首项和第二项是定值,只需确保第三项最小就能够使 L最大。

因为篆颉尊 u = 0,只需 sum((差错值_i)^2) 最小就能够啦!

这便是为什么 丢失函数 J要选用平方的数李老鼠说车学解说啦!

05 Python完成线性回归

Python真的是搭上了 人工智能和机器学习的大船,开展是真的好。

Python中的 sklearn 包是能够用来处理 线性回归的问题的。

  • from sk牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细learn.linear_model import LinearRegression

首要咱们要从sklearn.linear_model中引进 LinearRegression 这个函数;

  • 逃学博士 = LinearRegression(n应该ormalize=True)

LinearRegression 赋给变量名庞龙 逃学博士;

  • 逃学博士.fit(x, y)

这样就能够做出线性回牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细归啦!

简略吧!

06 总结

对了,千万不要以为线性回归简略、好用,就能够乱用。

随意运用会出笑话的。

比方说:我国人口肥壮份额 = 10% * 十年的次数

期望咱们喜欢我的文章。

“逃学博士”:理工科直创世纪男一枚,在天寒地冻错嫁之绝世皇宠的加拿牛蛙,机器学习第2天:什么是线性回归?为什么是距离的平方不是绝对值,奸细大攻读工程博士。空闲之余共享点科学常识和学习干货。

the end
回答密码,神回复大全,有趣的对话