赞
踩
目录
1、波士顿房价预测介绍
2、线性回归算法
3、调用scikit-learn库实现房价预测
问题描述:波士顿房价数据集统计的是20世纪70年代中期波士顿郊区房价的中位数,统计了城镇人均犯罪率、不动产税等共计13个指标,统计出房价,试图能找到那些指标与房价的关系。数据集中一共有506个样本,每个样本包含13个特征信息和实际房价,波士顿房价预测问题目标是给定某地区的特征信息,预测该地区房价,是典型的回归问题(房价是一个连续值)。波士顿房价数据集中主要的指标名称及其含义如下。
机器学习库scikit-learn中自带了波士顿房价数据集,可直接加载。房价预测可采用线性回归算法。
线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,通过属性的线性组合进行预测的线性模型,其目的是找到一条直线或者一个平面或者更高维的超平面,使得预测值与真实值之间的误差最小化。
线性回归分析中,如果只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。线性回归算法的公式如下,xi表示样本,可以是多维的,w为系数矩阵,b为偏置。目标是学习w和b两个参数,使得计算结果和真实结果之间的误差最小。
直接调用scikit-learn中的相关函数,实现波士顿房价简单预测的代码如下,主要步骤包括:
这里主要是给大家演示了下机器学习库中相关函数的调用,并没有对数据进行分析,接下来通过数据可视化技术来分析单个指标与房价之间的关系。关键代码如下。
各个指标与房价之间的关系可视化效果如下:
通过可视化图表分析,可以看到不同特征的取值范围有较大差异,有些取值范围从0到1,有些从1到100,还有0到400等等,为了消除不同量纲的影响,可对数据进行标准化处理。一般采用将数据减去数据组的平均数再除以标准差。z = (x - u) / s (u表示均值,s表示标准差)
此外,通过图表效果可知,部分指标与房价之间存在明显的线性关系(例如RM、LSTAT等),而有些指标与房价之间的关系则不那么明显(例如CHAS、B等)。可调用机器学习库中相关方法获取最相关的特征,关键代码如下:(首先对数据进行标准化,然后获取最相关的3个特征)
选择最相关的三个特征,结果为: RM、LSTAT、PTRATIO
最后使用最相关的特征数据进行房价的预测,关键代码如下:
将预测结果和真实结果画在同一个图上,如下图所示,可以清楚的看到它们之间的关系。
思考:通过预测值和真实值对比,可知有一些异常点,如何去除这些异常点?例如删除房价为50的样本。
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析学习等教程。带你从零基础系统性的学好Python!
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
上述这份完整版的Python全套学习资料已经上传CSDN官方,如果需要可以微信扫描下方CSDN官方认证二维码 即可领取
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。