开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第9天,点击查看活动详情
线性回归是机器学习最基础的一个模型,也是能理解之后所有深度学习模型的基础,所以我们从线性回归开始。
美国买房
在开始之前,我们先来讲一个应用。这个就是说如何在美国买房?
首先在任何地方买房都是一样的,就是我们先得去看一下那个房子,了解一下房子的照片啊,各种信息。
他可能跟很多地方不一样的地方在于说我看中一个房之后。我要买他的话,我是需要竞价。举个例子啊。这里有一个房,能显示他的基本信息,售价是说五百五十万美金,有七个卧室,五个卫生间,居住面积折合大概是460平米的样子。但是呢,注意到这个价格,他不是你的成交价,而是标价和预估价。但这两个价格都是给你做参考用的。最终是你得去出一个价格,然后在给定的另一个时间窗里面,很多买家都去出价,最后价格高的那一个人得到这个房子。所以这是一个预测问题,就是说你得根据现在的行情预测出你大概多少钱能买下这个房子。
出价
然后呢,我们要出一个价。你的出价真的很重要,因为是真正的钱。
我们再来看两套房子,你的X轴是你的年份,然后这个曲线是说根据历史信息,系统对你的评估价格,然后做一个$是说,你在什么时候出了多少钱买下了这个房子。所以最好的当然是说你的出的价格是远低于系统的估计,那你就赚到了,这个房子还可以,就是它的估价跟出价和估价是差不多的,然后第二张图,假设是我们第一次买房,不懂那么多规矩,我们就多出了10万块钱,所以这个大概是10万美金的差价。
核心简化模型
接下来我们通过这个应用来引出线性回归。这里我们做一个简化的模型,我们要做两个假设,第一个假设是说影响房价的关键因素是三个,卧室的个数、卫生间的个数和居住面积,我们记为 ,当然其实还有很多别的因素,我们先做一个最简单的假设。
第二个是说我的成交价是我关键因素的加权和,我的成交价就 ,这里权重 和 偏差 的实际值我们之后再来决定。但是我们假设我们这些值已经有了,那么我们的成交价就是这四个加权和。这是我们的核心模型。
一般化线性模型
扩展到一般化的线性模型
线性回归可以看作单层神经网络
线性回归可以看作是一个单层的神经网络,通常用这样子的图来表示,输入的维度是N,输出的维度是一,每个箭头代表一个权重,这个神经网络是一个输入层,一个输出层。
衡量预估质量
我们已经有了模型,我们可以做预测,那么接下来一个很重要的事情,我们要衡量我们的预测的质量怎么样,我们要比较我们真实的值,就是卖房的成交价。估值,这是我对这个房子的估价。
需要比较它们的区别,区别越小,模型质量越高,区别越大,模型越差。这里采用平方损失,因为它衡量的是说我们没有完全猜中真实值所带来的损失,或者说是经济损失。之所所以是1/2,是因为在求导(求导总是往下降最快的方向(梯度下降))的时候可以很方便的把它消去。
训练数据
参数学习
显式解
线性回归是唯一一个有显式最优解的模型。梯度一定可以等于0。