美文网首页数据科学学习笔记
我的数据科学之路-线性回归

我的数据科学之路-线性回归

作者: 人间一咸鱼 | 来源:发表于2018-12-09 21:14 被阅读0次

    机器学习已经学了很多次了,拿起又放下,每次都是从“房价预测”开始,希望此次有所改变,就从记录开始。

    线性回归是典型的监督学习过程,通过已有(带标记)的数据训练一个模型,然后用这个模型来根据新的输入预测结果。还是从房价预测开始。

部分sklearn中的波士顿房价数据

    图中是从sklearn库中的波士顿房价数据取了一部分房间数量与房价的数据,最简单的线性回归便是找到一条直线尽可能的拟合数据分布。设定y为房价,x为房间数,那么在这拟合曲线便是y=wx+b。w,b就是我们最后需要的模型,那么找到合适的w,b的过程就是训练了。下面是训练的过程。

    一开始w和b都是一个随机的值,对一个输入,y1=wx+b是预测的值,那么w,b是否合适的判断标准就是y1和实际的值y之间的差异大小了,这个差异大小可以有不同的表现,最简单的比如|y1-y|或者(y1-y)^2

设定这个差异为E,暂定E=(y1-y)^2,那么训练的过程就是找到合适的w,b使E足够的小。具体方法就是经典的梯度下降法了。\frac{∂E}{∂​w} 代表E对w的偏导,w在这个方向前进就是最快减少E的方向,但是此方法只能找到局部最优解,所以如果前进过多就可能越过的局部最优解,所以需要增加一个步长系数α,那么最终一次训练的过程就是w=w-α\frac{∂E}{∂​w} ,b=b-\frac{∂E}{∂​b} 。那么经过一些数学推导可得  

                         \frac{∂E}{∂​w} =\frac{∂(y1-y)^2}{∂​w} =2(y1-y)\frac{∂y1}{∂​w} =2(y1-y)x

因为最后都会乘一个系数,所以前面的2并不重要,所以把E定义为\frac{1}{2} (y1-y)^2更方便,前面说E可以有多重不同的表达式,选择这个表达式的原因也可以揭晓了,就是求出的偏导式便于计算。

实际情况中x和y都是把样本一起纳入计算的,E也就是所有点的损失函数之和,因此需要把上述的运算过程换成矩阵的计算,但过程是一致的。下面是简单的python代码完成一步梯度下降过程。

y_pred = np.matmul(X, W) + b

error = y - y_pred

# compute steps

W_new = W + learn_rate * np.matmul(error, X)

b_new = b + learn_rate * error.sum()

也可以使用sklearn库的线性回归模型,下面是简单的示例代码:

from sklearn.linear_model import LinearRegression

model = LinearRegression()

model.fit(x, y)

model.predict(new_x)

这样就完成了最简单的训练和预测过程。

训练结果

相关文章

  • 我的数据科学之路-线性回归

    机器学习已经学了很多次了,拿起又放下,每次都是从“房价预测”开始,希望此次有所改变,就从记录开始。 线性回归是...

  • 线性回归与逻辑回归

    一、线性回归 (1) 线性回归的数学定义 数据 模型 (2)线性回归的数学定义(矩阵表达) 数据 模型 解析解 (...

  • 数据科学“内战”:统计VS机器学习

    讲师介绍: 主讲人: 唐亘 猛犸反欺诈 数据科学家 数据科学家,《精通数据科学:从线性回归到深度学习》一书作者。复...

  • 【机器学习概述】第三篇、监督学习

    线性回归 首先,用线性回归的前提,线性线性,他是能区分可由一个直线(面)来回归模拟的数据。如果训练数据包含非线性关...

  • 2020-02-14

    线性回归:线性回归分为一元线性回归和多元线性回归,一元线性回归用一条直线描述数据之间的关系,多元回归是用一条曲线描...

  • 【机器学习快速入门教程4】线性回归

    章节4:线性回归 本章节,我们将介绍线性回归问题,机器学习中最基础的问题。 线性回归 线性回归是指在一组数据中拟合...

  • 数据科学(机器学习: 线性回归)

    对连续型的数据做出预测 回归的目的是预测数值型的目标值。最直接的办法是依据输入写出一个目标值的计算公式 假如你想预...

  • 线性回归

    单变量线性回归 多变量线性回归 局限性 梯度下降法 优点 缺点 单变量线性回归 模型线性回归假设数据集中每个yi和...

  • 线性分类|机器学习推导系列(四)

    一、从线性回归到线性分类 线性回归的特性 线性回归具备线性、全局性和数据未加工的特性。 线性包括三个方面,其中属性...

  • 100天机器学习实践之第3天

    多重线性回归 多重线性回归试图在两个或更多特征与结果之间建立线性模型以拟合数据。多重线性回归的步骤与简单线性回归非...

网友评论

    本文标题:我的数据科学之路-线性回归

    本文链接:https://www.haomeiwen.com/subject/ipnvqqtx.html