机器学习入门之R-机器学习【一】 线性回归(一元)
小标 2018-10-18 来源 : 阅读 1008 评论 0

摘要:本文主要向大家介绍了机器学习入门之R-机器学习【一】 线性回归(一元),通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。

本文主要向大家介绍了机器学习入门之R-机器学习【一】 线性回归(一元),通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。

一、R安装

R for Mac OS
//mirror.bjtu.edu.cn/cran/ 
RStudio

二、线性回归基础
翻阅《高中数学必修三 --- 变量的相关性》
eg1:
凭我们的学习经验可知,物理成绩确实与数学成绩有一定的关系。但是除此之外,还存在其他影响物理成绩的因素,例如,,是否喜欢物理,用再物理学习上的时间等
eg2:
商品销售收入与广告支出经费之间的关系,商品销售收入与广告支出经费有着密切的联系。但是还有很多其他因素
eg3:
粮食产量与施肥量之间的关系。在一定范围内,施肥量越大,粮食产量就越高,但是施肥量并不是影响粮食产量的唯一因素。

人体的脂肪含量与年龄之间的有怎样的关系?
首先我们做散点图。以x轴表示年龄,y轴表示脂肪。(自己做散点图,)
从散点图,可以看出,它们散布在从左下角到右上角的区域。对于两个变量的这种相关关系,我们称之为正相关。还有一些变量,例如汽车的重量和汽车每消耗lL汽油所行驶的平均路程,称为负相关。
从散点图可以看出,这些点大致分布在通过散点图中心的一条直线附近。如果散点图中心分布从整体上看大致在一条直线附近,我们就称这两个变量之间具有线性相关关系,这条直线称为回归直线(regression line).如果能够求出这条回归直线的方程(回归方程),那么我们就比较清楚了解年龄与脂肪的关系。

最小二乘法
实际上,求回归方程的关键是如何用数学的方法刻画“从整体上看,各点到此直线的距离最小”
假设该直线为 y = bx + a
注意:
(x1,y1)(x2,y2)...(xi,yi).. 一个个点。到直线的距离,我们可以用点到直线的距离算出,但是这个比较复杂。
所以第一个简化==> 点(xi,yi) ,垂直向上,或垂直向下到直线的距离  yi - y = yi - (bxi + a)
但是yi - y 有正负之分,所以我们第二次简化,算平方
Q = (y1 - bx1 - a)^2 + (y2 - bx2 - a)^2 + .... + (yi - bxi - a)^2 + ...
只要计算出使得Q的最小的a和b,就能得到该回归方程。 
可以使用偏导数计算得出a,b
a = ...
b = ...

b是回归直线的斜率,a是截距

相关关系的强弱
我们知道不是所有两个变量的关系都是线性的,如何判断是否能使用线性回归呢?
统计中用相关系数r来衡量两个变量之间的线性关系强弱。
r = ...
统计学认为 如果 r <- [-1,-0.75] 那么负相关很强, r<- [-0.75,-0.30] 负相关性一般, r<- [-0.25,0.25] 相关性弱,
 r <- [0.75,1] 那么 正相关很强, r<- [0.30,0.75]  正相关性一般,

三、RStudio测试
数据:
研究婴儿生理发育issue,并收集了10名婴儿在出生后一年内的月龄和体重数据。

我们用c()函数以向量的形式输入月龄和体重

> x_age=c(1,3,5,2,11,9,3,9,12,3)
> y_weight=c(4.4,5.3,7.2,5.2,8.5,7.3,6.0,10.4,10.2,6.1)

> mean(y_weight)            => 计算平均数
[1] 7.06
> sd(y_weight)              => 计算标准差
[1] 2.077498
> cor(x_age,y_weight)       => 计算相关性
[1] 0.9075655
> plot(x_age,y_weight)      => 画散点图

> cor_xy = lm(y_weight~x_age + 1)  => 设置拟合曲线方程式
> plot(cor_xy)                    => 画回归直线

> coef(cor_xy)                    => 计算回归直线的斜率和截距
(Intercept)       x_age 
  4.3596206   0.4655827
  
> z = data.frmae(x_age=13)     
> predict(cor_xy,z)            => 我们来预测13个月的 婴儿的体重

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标人工智能机器学习频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程