首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

机器学习之线性回归模型

新年过后,小编就已进入机器学习旅程,经过大约一周的学习,学习了机器学习中最经典的模型:线性回归模型(LinearRegression)。今天小编就通过波士顿房价预测这个项目向大家介绍线性回归模型。

一、线性回归模型介绍

分析按照自变量和因变量之间的关系类型,可分为线性回归分析和非线性回归分析。如果在回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。

在波士顿房价预测中,有三个自变量:住宅平均房间数量、社区中低收入人群占比、镇上学生和老师的比例。故此为三元线性关系。

设房价y和三个自变量x1、x2、x3之间的关系如下

上面的公式在线性回归模型中,通常被称为假设,现在我们的任务就是求出公式中的未知参数θ。

二、梯度下降算法

怎样求出参数θ呢,小编在这里介绍 Gradient Descent算法。在梯度下降算法中首先有一个评价函数(cost function),在这里小编不证明的给出评价函数。

我们的任务就是求出θ,使得J(θ)最小。在Gradient Descent算法中,利用沿着梯度(偏微分)是下降最快的方向,这样经过有限步一定能达到全局最小值,即J(θ)最小。

每次下降的公式如下,其中α为学习速率:

为了能在计算机上执行,必须计算出上式的偏微分,计算结果如下:

三、编写代码

大家可以利用上述的知识一步一步的实现,也可以利用sklearn库的LinearRegression类来实现。为了让大家更好的理解Gradient Descent算法,小编附上自己写的Gradient Descent算法代码。

四、实验结果

小编一共有489个房价信息作为数据集,将数据集按8:2的比例分为训练集和测试集。在训练集上训练模型,并用测试集量化模型的拟合程度。

训练集散点图和训练集拟合效果图如下

测试集散点图和测试集拟合效果图如下

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180224G0HLSW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券