Hands on Machine Learning with Scikit-learn and TensorFlow 读书笔记
Chapter 2 End-to-End Machine Learning Project
在这一章,你将会走完一个完整的机器学习项目。主要步骤如下:
- 对所需解决的问题有一个总体的思路
- 获取数据
- 通过数据可视化来得到对数据潜在规律的一些思考
- 在训练模型之前先对数据进行预处理
- 选择一个合适的模型进行训练
- 调整并找到最合适的模型参数
- 长期监督并维护你的学习系统
上一篇写了1和2,这篇来写后面的。(怎么感觉这篇也写不完???哈哈哈算了先写着吧)
-
通过数据可视化来得到对数据潜在规律的一些思考:
上一篇文章我们已经对数据集有了大致的了解,第三步我们要做的是把测试集扔在一边不要管,然后来探索一下训练集的数据潜在逻辑,我们复制一份训练集数据以免破坏原数据:housing = strat_train_set.copy()我们观察到数据集中包含了一个地理信息(经纬度),让我们可视化来看看:

这样其实还是不好分辨他的分布规律,我们可以设置参数 alpha:

我这里的 alpha 设置的是0.2,原书是0.1,大家可以自己试试别的数值,越接近零,透明度越高;设置了 alpha 以后,分布规律就变得很显然了,颜色深的地方密度更大。
现在我们加入更多的属性来看,设置每个圆点半径表示某地区的人口,圆点颜色表示房价,用一个定义好的colormap(jet)来表示房价的高低:

这一轮探索让我们发现房价跟地理位置以及人口数量的关系。
接下来我们进一步探索属性之间的相关性,可以用 corr() 方法来简单的计算 Pearson 相关系数,然后查看每个属性与房价的相关性:

本文是《Hands on Machine Learning with Scikit-learn and TensorFlow》的读书笔记,详细介绍了如何走完一个完整的机器学习项目,包括理解问题、获取数据、数据可视化、预处理数据和特征工程。通过数据可视化发现房价与地理位置、人口数量的关系,以及属性之间的相关性,特别是中值收入对房价的影响。接着,探讨了如何处理缺失值、编码类别变量以及进行特征缩放。最后,使用Pipeline实现数据预处理流程的自动化。

480

被折叠的 条评论
为什么被折叠?



