互联网技术 / 互联网资讯 · 2023年10月31日 0

机器学习模型在房价预测中的新进展

机器学习在人工智能领域引发了巨大的变革,从驾驶汽车到语音识别和翻译,软件正在不断预测复杂的现实世界。

那么,什么是机器学习呢?

机器学习是一个让计算机系统通过以往的数据进行预测的过程,简单来说,就是训练计算机利用历史数据来预测未来。这些预测的难度各不相同,既可以是简单的任务,如识别照片中的动物,也可以是复杂的任务,如准确识别语音以生成网站字幕或播放视频和音乐。

机器学习的分类

机器学习主要可以分为两类:监督学习和无监督学习。

监督学习采用示例来教会机器。这些机器通过大量的数据训练,学习识别模式,从而能够根据训练数据进行数据的识别和区分。

而无监督学习则是通过算法识别未标记和未分类的数据集中的模式。算法从数据中提取有用的信息或特征,以分析其内在结构并进行数据分类。

接下来,我们来看如何利用监督学习构建机器学习模型。

第一步:了解数据

在任何机器学习项目中,第一步都是熟悉数据。这可以通过Pandas库实现。Pandas是数据科学家在探索和处理数据时的主要工具。

机器学习模型在房价预测中的新进展

Pandas库中最重要的组成部分是DataFrame,它类似于SQL数据库中的表格,用于存储数据。Pandas提供了强大的方法来处理DataFrame中的数据。以加利福尼亚房价数据为例。(文件路径:../input/califoRnia-hoUSing-pRices/hoUSing.csv)使用以下命令加载和浏览数据:

机器学习模型在房价预测中的新进展

第二步:选择建模数据

在研究DataFrame的数据后,我们发现它包含10列,其中9列为数字数据。由于我们只需使用数字数据来构建模型,因此可以直接删除“Ocean Proximity”列。

机器学习模型在房价预测中的新进展

接下来,删除包含空值的列,如下所示:

机器学习模型在房价预测中的新进展

第三步:选择预测目标(Y)和特征(X)

随后,我们选择预测目标(Y),也就是“Median_house_value”列。因此,将Y分配为“Median_house_value”。剩余的特征将作为X。从数据集中移除“Median_house_value”列,然后将其余部分分配给X,如下所示:

机器学习模型在房价预测中的新进展

机器学习模型在房价预测中的新进展

第四步:构建模型

使用scikit-learn库来创建模型。该库在代码中以sklearn形式出现。当用DataFrame中的数据进行建模时,Scikit-learn是最受欢迎的库。建立和使用模型的步骤包括:

定义:模型的类型是什么?是线性回归还是其他? 拟合:从现有数据中获取模式(建模的核心)。 预测:进行目标预测。 评估:确定模型预测的准确性。

现在,我们将使用scikit-learn定义一个线性回归模型,并将其与特征和目标变量进行拟合,以获得“Median_house_value”的预测值。导入以下库以使用scikit-learn:

机器学习模型在房价预测中的新进展

接着,为线性回归模型创建一个变量,并使用train_test_split函数将数据分为训练集和测试集。在这里,我使用了25%的数据进行测试,剩余的75%用于训练模型。

机器学习模型在房价预测中的新进展

第五步:拟合模型

使用训练数据来拟合线性回归模型。

机器学习模型在房价预测中的新进展

完成后,通过使用X的测试值来预测房价。随后,使用得分功能来评估模型预测的准确性,如下所示:

机器学习模型在房价预测中的新进展

可以看到,模型的预测准确率大约为66%。

第六步:绘图

现在,我们用X的测试值和预测值(输出)进行绘图,如下:

机器学习模型在房价预测中的新进展

一个拟合的模型已经完成,我们可以用它进行预测。在实际应用中,我们能够对即将上市的新房产进行价格预测。

本例展示了如何在数据集上拟合线性回归模型并进行房价预测。我们还可以将相同的数据应用于决策树或支持向量机,并比较哪种模型的预测效果更佳。

希望这篇文章能够帮助那些正在尝试建立第一个机器学习线性回归模型的人。