乐趣区

关于机器学习:MindSpore跟着小Mi一起机器学习单变量线性回归一

几天不见,能源不减!话说回来,咱们要正式开始挑起大梁干小事了,后面一段时间,小 Mi 曾经带大家初步理解了机器学习,温习了机器学习中须要用到的线性代数知识点,这次咱们就要开始正式学习监督学习下的单变量线性回归(那么前面是不是还有多变量线性回归?Bingo!答对了!)啦。那就废话不多说,抓紧时间跟小 Mi 一起机器学习吧~

1 模型形容

在介绍篇中,小 Mi 就曾经给大家大抵介绍过监督学习下的线性回归算法了,咱们所参考的例子仍旧是之前提到的预测住房价格模型:有这么一个数据集,蕴含了屋宇面积大小以及其对应的价格,首先依据这组数据咱们能够在图像中先把它标出来。那么,咱们须要做的就是构建一个模型进行数据拟合,这个模型兴许是条直线,兴许是条抛物线等等,而后依据这个数据模型预测房价,从而给咱们提供了一个绝对比拟正当并且合乎房价市场的参考。这就是一个监督学习算法线性回归的整个过程。

这个算法模型被称作监督学习是因为对于每个数据来说,咱们给出了“正确的答案”,即通知咱们:依据咱们的数据来说,房子的理论价格是多少,而且更具体来说,这是一个回归问题。回归一词指的是,依据之前的数据预测出一个精确的输入值,对于这个例子来说就是价格,当然啦,想要预测离散的输入值时,小 Mi 之前也提到过,这就是分类问题啦。

更正式地,在监督学习中咱们称数据集为训练集。以房价为例,咱们就有一个房价的训练集,咱们的工作就是从这个训练集中学习如何预测房价,符号 m 示意训练样本的数量,x 示意输出变量 / 输出特色,y 示意输入变量 / 要预测的指标变量,(x,y)示意一个训练样本,示意特定的训练样本,也就是第 i 个训练样本,h(hypothesis)则示意学习算法的解决方案或函数也称为假如。

从上图咱们能够理解到学习算法的工作就是输入一个函数 h,那么怎么示意这个函数 h 呢?咱们再来好好捋一下,要解决房价预测问题,咱们实际上是要将训练集传送给咱们的学习算法,进而学习失去一个假如 h,而后将咱们要预测的屋宇大小作为输出变量输出给 h,预测出该屋宇的交易价格作为输入变量输入为后果。一句话,参考 h 依据输出的 x 值来得出 y 值,y 值对应房子的价格,最可能的表达方式:,因为只含有一个特色 / 输出变量,而且又是线性函数的表白关系,这样的问题就叫做单变量线性回归问题。单变量就是指繁多变量,接下来,咱们就能够晓得如何手动实现上述学习算法模型咯!

2 代价函数

在线性回归中,咱们有这样的一个训练集,m 代表了训练样本的数量,比方 m =47。而咱们的假如函数,也就是用来预测的函数模型,是这样的线性函数模式:。咱们须要做的就是要为咱们的模型抉择适合的参数和,在房价问题这个例子中便是直线的斜率和在 y 轴上的截距。咱们须要做的就是弄清楚如何把最可能的直线与咱们的数据相拟合。

咱们抉择的参数决定了咱们失去的直线绝对于咱们的训练集的精确水平,模型所预测的值与训练集中理论值之间的差距就是指建模误差。得出两个参数的值,来让假如函数示意的直线尽量地与这些数据点很好地拟合。

那么又如何确定参数的值呢?当初提出的想法就是,要抉择能使 h(x),也就是输出 x 时咱们预测的值最靠近该样本对应的 y 值的两个参数,数学上来说就是要解决一个最小化的问题,使得 h(x) 与 y 之间的差值尽可能的小。于是就选取了能够使得建模误差的平方和可能最小的模型参数。即:使得最小,这样的一个函数咱们也称之为代价函数。

代价函数也被称为平方误差函数,或平方误差代价函数。之所以要求出误差的平方和,是因为误差平方代价函数,对于大多数问题,特地是回归问题,都是一个正当的抉择。还有其余的代价函数也能很好地发挥作用,然而平方误差代价函数可能是解决回归问题最罕用的伎俩了。

2.1 代价函数图形解释(一)
为了不便了解,小 Mi 率领大家从非凡状况到规范模式一起过一遍,首先咱们先看下非凡模式下的代价函数以及如何获取其最小值的。

取多个不同值,求出不同的对应 J 值,….. 在进行描点之后,咱们能够发现当只有这一个参数的时候,其实代价函数的图像是一个抛物线的模式。

2.2 代价函数图形解释(二)

在规范模式下,小 Mi 感觉大家能够设想一下,既然一维参数是抛物线,那么二维参数是不是就是一个平面空间上的碗状模式?没错,下图能够参考下,高度即为代价函数的值,能够看到它依然有着最小值的,而达到更多的参数的时候就无奈像这样可视化了,然而原理都是类似的。

咱们还能够把下面的这个三维图像映射到二维立体上,这样的图像叫做等高图像,每一条色彩线上的点都具备雷同的值。

通过这些图形,咱们可能更好地了解这些代价函数 J 所代表的值是什么样的,它们对应的假如是什么样的,以及什么样的假如对应的点,更靠近于代价函数 J 的最小值。

当然,咱们真正须要的是一种无效的算法,可能主动地找出这些使代价函数 J 取最小值的参数来。小 Mi 认为编个程序把这些点画进去,而后人工的办法来读出这些点的数值,这仍然无奈真正实现机器学习,隔靴搔痒一样。咱们也会遇到更简单、更高维度、更多参数的状况,而这些状况是很难画出图的,因而更无奈将其可视化,因而咱们真正须要的是编写程序来找出这些最小化代价函数的的值。

在下一节,小 Mi 将介绍一种算法,可能主动地找出能使代价函数 J 最小化的参数的值, 是不是很开心,这才是真正的机器学习嘛!好了,明天小 Mi 带着大家学习了单变量线性回归算法的模型表示,并且从数形联合的角度形容了代价函数的存在意义,然而更精彩的还在等着大家,咱们下期再见~

退出移动版