社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

如何用算法预测你的下一次托福成绩?|全世界最简单机器学习指南(二)

TFT小组 • 6 年前 • 736 次点击  

点击上方蓝字,关注最有趣的TFT小组

你上过统计学课程吗?你看过关于机器学习的视频吗?那么你一定听过"线性回归"。线性回归可以说是机器学习中最简单的算法,但它也是机器学习中最重要的一种算法。线性回归是学习其他更复杂机器学习算法的的基础。所以如果你想要深入学习机器学习,请跟着我们这篇文章学习一下线性回归吧~


1

-THE FIRST-

什么是线性回归?


线性回归, 是回归分析中的一种, 其表示自变量与因变量之间存在线性关系。换种方式来说,如果我们根据一些点生成一个散点图,线性回归的目标是在这个散点图上画一条尽可能接近所有点的直线。



线性回归最常见应用是:预测一个给定数据集的结果。举个例子:现在有3间房子,大小分别是400、800和1200平方英尺,这3间房子的价格分别是100、200和300美元。我们想买一个大小为600平方英尺的房子,那这间房子的价钱是多少呢?我们很容易用我们的初中数学知识算出来答案:150美元。(大天朝培养出来的孩子们还是非常优秀的)


线性回归的基本等式是:y=mx+b。在所有的例子中,左边的值总是因变量,它依赖于自变量乘以斜率(m)加上或减去b的值。


以托福为例,我们假设每认真学习10个小时可以提高1分,如果这次考试你的托福成绩是90分,你希望下一次考试你能考100分,需要再花多少时间准备托福?


根据你的情况列出等式:

0.1x+90=100

x=100


也就是说,如果你想下一次提高10分,那么还需要再花100小时准备托福。




2

-THE SECOND-

线性回归的优点与缺点


优点:

当自变量和因变量之间是线性关系时,我们实现算法变得十分简单。而且线性回归的理解和解释也都非常直观。


缺点:

处理非线性关系表现糟糕:

在现实生活中,许多问题中自变量和因变量之间的关系往往不像我们希望的那样:存在完美的线性关系。让我们再回到房子大小 vs 价钱的例子,现实生活中存在很多影响价钱的因素。那么有人可能会想到:如果我们只是把它们看成更多的独立变量呢?比如说:房子周围交通,犯罪率等等。但是即使如此,我们也无法确定这个600平方英尺的房子只需要150美元,因为还有很多不可避免的因素存在, 所以对付复杂的问题,我们并不只能用简单的线性关系表示。


容易忽略异常值:

线性回归在大多数情况下只能处理看起来像是直线的图像关系,因为从数学图形定义角度来说,“线性”就是直线的意思。异常值的存在也使线性回归更加受限。例如:假设我们认为:一个人的智商和他在TOEFL考试中的得分有关系,且关系为如果他的智商越高,他在TOEFL考试中的得分也越高。但如果有一个学生智商高达160,但是并没有复习就去考TOEFL只得了40分。因为这是一个异常值,在线性回归中会自动忽略该值,但是这种情况下,会影响我们建立模型。


3

-THE THIRD-

我们如何创建最合适的“线”?


在进行线性回归时,最小二乘法least square method)是最优的建模方法。


最小二乘法等式


xi和yi是数据集中的某一个点,x and y with a dash分别是所有x、所有y的均值。


4

-THE FOURTH-

线性回归的应用


线性回归的应用超乎我们的想象。线性回归实际上是来自统计学的一个方法,但被广泛应用于:机器学习,趋势预测,经济学等等。


在机器学习中,因为线性回归的简单性,它已成为最常用的监督机器学习方法。


线性回归被广泛应用于趋势预测,因为回归是对连续输出结果的预测。线性回归可以被用于预测未来石油或股票价格。


在经济学方面,我们可以用线性回归来预测很多事情,如劳动力需求和供给,消费支出等等。



由此可以看出,不管你是学什么专业,掌握线性回归,都能帮助你解决很多专业问题。快来继续跟我们往下学习机器学习吧~



记得长按关注:TFT机器学习

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/44110