机器学习之线性回归 – 最基础的模型
我们通过一个最基础的 线性回归 模型 ,来对 机器学习 获得一些初步认识。
问题:
根据多个特征值,得到一个预测值。
例如:广告投入金额、广告时间长短对销售量的影响;房屋所在的地理位置、土地价格、中长期贷款利率、居民消费价格指数对房价的影响
输入:
多个特征值(x1、x2…、xn),xi可以是实数。当n为1时,称为一元回归。
n表示变量的数量
比如,x1是房屋距市中心的距离,x2是土地价格,x3是利率,… …。
输出:
预测值y。y为实数。比如,y是房价。
预测值为值的问题,称为回归问题。
结构:
a0,a1, a2, …, an是参数。如果使用机器学习,则这些参数是训练获得的,这些参数决定了模型。
这是一个线性关系,所以称为线性回归。
训练:
训练的过程,就是用训练集中的m组训练数据,i=1,2,3。。。,m,来获得较优的参数的过程。
这些训练数据带有标签,例如:销售量、房价
在训练中,可以一轮轮进行。每一轮中:
- 用当前的参数,基于第i组训练数据得到对应的预测值
- 计算预测值与标签值的差异。这个计算方法就称为损失函数。现如今有多种损失函数(可参见https://zhuanlan.zhihu.com/p/58883095),但在回归问题中,我们常使用平方损失函数,其公式如下:
- 延伸阅读:损失函数与代价函数 https://blog.csdn.net/UESTC_C2_403/article/details/77387780
- 调整参数,使损失函数变小。
重复上述过程,直到达到可接受的程度。
解读:
线性回归是最简单的机器学习模型之一。它比较容易理解,因此往往作为机器学习的入门内容。
线性回归具有局限性,它要求特征与预测值之间具有接近线性的关系。所以它难以处理比较复杂的问题。
历史上有一些技巧性的方法,比如通过特征工程将线性关系转化为非线性关系(例如,以代替)。但在神经网络出现后这种处理的实用意义就不大了,神经网络可以更轻松地解决这类问题。