![机器学习编程:从编码到深度学习](https://wfqqreader-1252317822.image.myqcloud.com/cover/201/38335201/b_38335201.jpg)
上QQ阅读APP看书,第一时间看更新
2.2.1 定义模型
要将线性回归转换为能够运行的代码,我们需要某种使用数量表示直线的方法。这就是数学的用武之地。
下面是一个表示经过坐标轴原点的直线的数学方程:
![](https://epubservercos.yuewen.com/432DF4/20180619108106606/epubprivate/OEBPS/Images/017-i.jpg?sign=1739522347-xWZWMttrUZ16ck29uFE9V4EBs774w35v-0-3f1f80f1b598fc08a766031be81c3aa5)
你可能学过这个方程,如果没有印象也没关系。它的含义是:经过原点的每条直线都可以由一个单独的数值进行唯一地表示。通常这个数值称为w,即权重(weight)单词的首字母。你也可以把w看成这条线的斜率,w值越大表示这条线越陡峭。如下图所示:
![](https://epubservercos.yuewen.com/432DF4/20180619108106606/epubprivate/OEBPS/Images/017-2-i.jpg?sign=1739522347-77T8QzAW7RIAt1vlkIVFp1TvdMMOOGkB-0-c3b1ddc74d8c5e390b8fac8938cb0146)
数学探究:线性方程
如果你不理解方程y=x*w,那么可以看看可汗学院关于线性方程的视频[1]。这些可选视频提供的内容比你阅读本书所需的时间还要多得多——所以你没有必要全部看完。
在我们继续进行下一步的讨论之前,先用一个稍微不同的符号改写一下上述直线方程:
![](https://epubservercos.yuewen.com/432DF4/20180619108106606/epubprivate/OEBPS/Images/017-3-i.jpg?sign=1739522347-KFtwvIgbPNCy6hsfY2CIewigc9OTBoO1-0-ce8afe7943a066c77cec90d3c9b1a3e4)
我们将符号y换成了(读作“y-hat”),这是因为不想将Roberto样本数据中的实际y值和预测y值相混淆。虽然这两个符号都代表比萨的销量,但是二者之间存在一个非常重要的差别。
是比萨销量的预测值,是我们期望能卖出多少比萨的预测值。相比之下,y是实际的比萨销量,机器学习专家将其称为实际值(ground truth)。
在这个关于符号的简短题外话之后,我们再回到这里的重要概念,即w这个表示直线的常数。换句话说,我们只需要使用w就足以表示代码中的一条直线。
现在我们来编写代码,从预测阶段开始,因为它比训练阶段简单。我们将在稍后解决训练阶段的代码。
[1] www.khanacademy.org/math/algebra/two-var-linear-equations。