问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

波士顿房价预测

创作时间:
作者:
@小白创作中心

波士顿房价预测

引用
1
来源
1.
https://docs.uniplore.com/docs/user-manual-aistudio/best-case/basic/bostom-housing

案例介绍

本案例使用经典的波士顿房价数据集来训练模型,然后用模型来测算房价。

数据集介绍

数据集来源:http://www.cs.toronto.edu/~delve/data/boston/bostonDetail.html

房价和哪些因素有关?很多人可能对这个问题特别敏感,随时可以列出很多,如房子面积、房子地理位置、周边教育资源、周边商业资源、房子朝向、年限、小区情况等。在波士顿房价数据集里,它总共收集了14个属性,具体如下表所示。

名称
说明
CRIM
城镇人均犯罪率
ZN
城镇超过25,000平方英尺的住宅区域的占地比例
INDUS
城镇非零售用地占地比例
CHAS
是否靠近河边,1为靠近,0为远离
NOX
一氧化碳浓度
RM
每套房产的平均房间个数
AGE
在1940年之前就盖好,且业主自住的房子的比例
DIS
与波士顿市中心的距离
RAD
周边高速公道的便利性指数
TAX
每10,000美元的财产税率
PTRATIO
小学老师的比例
B
城镇黑人的比例
LSTAT
地位较低的人口比例
MEDV
房价中位数

从这些指标里可以看到中美文化的一些差异。当然,这个数据是在1993年之前收集的,可能和现在会有差异。不要小看了这些指标,实际上一个模型的好坏和输入特征的选择关系密切。大家可以思考一下,如果要在中国测算房价,你会收集哪些特征数据?这些特征数据的可获得性如何?收集成本多高?

案例操作

“线性回归”组件实现了线性回归算法。我们使用该组件来进行模型训练,工作流如下图所示。首先使用“加载文件”来读取本案例所需的数据,其次使用“数据预处理”进行数据标准化操作,并使用“数据抽样”进行数据抽样,抽样比例为80%,即训练数据为80%,测试数据为20%,然后“线性回归”组件使用默认参数,最后将数据和模型连接至“测试和评分”进行评分。首先从左边的组件列表中选择对应组件,将其拖拽至右侧的画布中,然后设置其参数即可。

  1. 我们可以使用“加载文件”组件来读取本案例所需的数据,在“加载文件”的“样例数据”tab页选择“housing”数据集。此时我们可以看见该数据集的基本信息:共有506个样本,每个样本有14个特征(13个特征,1个目标特征)

  2. 在运行“加载文件”组件后,我们可通过右键菜单查看数据。通过观察数据,我们发现特征数据的范围相差比较大,最小的在10-3级别,而最大的在102级别,看来我们需要先把数据进行归一化处理(或称为标准化处理)。“数据预处理”是一个集成了多种数据预处理方法的组件,其中就包括标准化处理,我们使用该组件来对所有属性进行处理。


下图为“数据预处理”组件的参数设置,我们选择“标准化属性”并点击“添加预处理”,此处我们使用默认参数。

  1. 为了评估模型的性能和泛化能力,我们还需将数据划分为训练集和测试集。其中训练集用于训练模型,测试集用于评估模型在未知数据上的表现,避免过拟合。“数据抽样”方便用户把一个数据拆分为两个集合(抽样数据及剩余数据),拆分后的数据其中一个可用于模型训练即作为训练集,另一个可作为测试集使用。我们使用该组件来对数据进行拆分。

下图为“数据抽样”组件的参数设置,我们选择“固定比例”进行抽样,并设置比例为80%,即训练数据为80%,测试数据为20%。

  1. 将数据处理好之后我们就需要将其传送给模型来进行房价预测。分析本案例的数据,我们可以得到要预测的因变量是连续的,因此我们可以选择回归模型来实现需求。我们使用“线性回归”组件进行建模分析。

下图为“线性回归”组件的参数设置,此处我们使用默认参数。

  1. 最后我们还需对模型的性能进行一系列评估。运行“测试和评分”组件,并点击“查看结果”,分别在训练集和测试集上进行测试,得到如下一些分数。例如:第一个度量指标是“MSE(均方误差)”,它用于评价数据的变化程度,其值越小则说明模型拟合实验数据的能力越强;第二个度量指标是“RMSE(均方误差)”,其是均方误差的算术平方根,其值越小则说明模型拟合实验数据的能力越强。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号