当前位置: 首页 > 数据分析师 > 数据分析师学习教程 > 机器学习系列(三)——简单的决策树预测模型的构建过程

机器学习系列(三)——简单的决策树预测模型的构建过程

发布时间:2019年09月27日 10:34:50 来源:环球网校 点击量:

【摘要】上一篇中,我们对利用pandas数据的使用方法有一个概括性的了解,可能会觉得这太基础了,不过不要担心,本篇中将分4步介绍一个简单的决策树预测模型的构建过程,让你对建模过程有初步了解。如果你已经做过一些统计模型或者机器学习相关的工作,就将容易很多。

1.选择数据集

你的数据集中变量太多了,让人摸不着头脑,即便是打印出来也看不清楚。怎样才能把这些庞大的数据集简化为能看得懂的东西呢?

在这篇中我们先依据直觉选择几个变量。稍后的篇章中将介绍如何利用统计类技巧优化变量。

为了挑选一些特征变量,我们先要看一下数据集中有哪些字段。通过DataFrame的columns属性来查看即可,代码如下所示:

import pandas as pd
...
melbourne_file_path = '../input/melbourne-housing-snapshot/melb_data.csv'
melbourne_data = pd.read_csv(melbourne_file_path)
melbourne_data.columns

Melbourne数据集中有一些缺失值,即有一些房子的特征值没有被记录。在后面的章节中将介绍如何处理缺失值,此处我们采取最简单的操作,即剔除数据中的缺失值。

需要注意的是参数:axis=0表示的是删除含有缺失值的行记录。

选择数据子集的方法有多种,通常使用的是以下两种操作:

点操作,可以用来选择目标变量

列表操作,用来选择特征变量

2.选择预测目标变量

你可以使用点操作来提取变量。一个单一的数据列被存储在一种叫Series的结构中,Series结构与DataFrame类似,你可以将其理解为一种特殊的,只有一列数据的Dataframe。

我们将利用点操作来选择即将要预测的数据列,即预测目标。一般来说,预测目标变量被称为y。因此利用以下代码来将Melbourne数据集中的房价预测字段存储在变量y中。

3.选择特征变量

这些被输入到模型中用来实现预测的变量就叫做“特征”。在我们的案例中,被用来预测房价的数据列就是特征。有些时候,你可以将数据集中除了预测目标之外的数据列都作为特征,而有些时候可能使用较少一些的特征,模型表现的会更好。

4.构建模型

你将利用scikit-learn库来创建模型。在编码过程中,这个库通常被简写为sklearn,如以下代码中所示。Scikit-learn是对存储在Dataframe中的数据进行建模的简单常用工具库。

构建和使用模型一般分为4步:

定义模型:搞清楚要使用什么类型的模型,是一个决策树模型还是其他模型?模型中的参数如何配置?

拟合模型:捕获数据集中所包含的模式,这一步是建模的核心步骤。

预测:利用模型来输出预测结果

模型评价:评价模型预测结果的好与差。

代码如下所示:

from sklearn.tree import DecisionTreeRegressor
# 定义一个决策树模型,设置随机参数
melbourne_model = DecisionTreeRegressor(random_state=1)
# 拟合模型
melbourne_model.fit(X, y)

许多机器学习模型在模型训练时都是具有随机性的。对参数random_state赋予一个特定的值可以让模型每次运行的结果都是一致的。这被认为是一种很好的做法。你可以对它赋予任何数值,因为无论你选择什么数值,都不会对模型的质量产生本质影响。

通过以上我们已经拟合好了一个模型,可以直接用来预测。

在实践中,你将用模型来预测市场上新的房子的价格,而不是用来预测那些我们已经知道它价格的房子。以下对训练数据中前几行数据的预测,只是为了让你看一下模型是如何工作的。

print("Making predictions for the following 5 houses:")
print(X.head())
print("The predictions are")
print(melbourne_model.predict(X.head()))

对于机器学习来说,决策树预测模型的构建过程,应该属于机器学习的实践理论,至此,一个完整的建模过程就完成了,如果需要深入的学习有关于机器学习的内容,后期也会整理给大家,环球网校小编祝大家学习顺利。

分享到: 编辑:吴晨辉

数据分析师相关文章推荐

|

数据分析师最新文章推荐

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球网校移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球小过-环球网校官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

返回顶部