模型如何工作?

情境

你的表兄通过房地产投机赚了数百万美元。他因你对数据科学的兴趣,提出与您成为生意伙伴。他将提供资金,而你将提供预测各个房屋价值的模型。

你问你的表兄过去是如何预测房地产价值的,他说这只是直觉。但深入询问后发现,他已经从过去看过的房子中识别出了价格模式,并利用这些模式来预测他正在考虑的新房子的价值。

机器学习也是一样的原理。以最简单的决策树为例子。

决策树模型

在这里插入图片描述

它只将房屋分为两个类别。对于任何考虑中的房屋,其预测价格是同一类别房屋的历史平均价格。我们使用数据来决定如何将房屋分为两组,然后再使用数据来确定每组的预测价格。这个从数据中捕捉模式的步骤称为拟合或训练模型。用于拟合模型的数据称为训练数据。模型拟合的具体细节(例如如何划分数据)相当复杂,因此我们将留到以后再讲。模型拟合完成后,你可以将其应用于新数据,以预测其他房屋的价格。

使用拥有更多“分裂”的树来捕捉更多因素。这些被称为“更深”的树。一个还考虑每栋房子地块总面积的决策树可能看起来像这样:
在这里插入图片描述
你可以通过遍历决策树预测任何房子的价格,总是选择与该房子特征相对应的路径。房子的预测价格位于树的底部。我们做出预测的底部点被称为叶子节点。分裂点和叶子节点的值将由数据决定,因此现在该查看你将要处理的数据了。
任何一个机器学习项目,首先都必须熟悉数据。

数据

import pandas as pd
# 保存文件路径
data_path = '../input/melbourne-housing-snapshot/melb_data.csv' 
# 使用pd的read_csv(path)读取数据并存储在data
data = pd.read_csv(data_path)
#查看数据摘要,describe()
data.describe()

输出摘要如下:
在这里插入图片描述
计数(count),表示有多少行包含非缺失值。缺失值会因多种原因出现。例如,在调查一居室房屋时,不会收集第二卧室的面积。我们稍后会回到缺失数据的话题。

平均值(mean),就是平均数。

标准差(std),用于衡量数值的离散程度。

最小值(min)、25%、50%、75%和最大值(max): 可以想象将每一列从小到大排序。第一个(最小的)值就是min。如果你走到列表的四分之一处,就会找到一个比25%的值大、比75%的值小的数字。这就是25%值(读作“第25百分位”)。50百分位和75百分位以类似方式定义,最大值(max)则是最大数字。

更多推荐