1 介绍
1.1 机器学习的错误的想法
- 一定要对python 编程和python语法非常了解
- 深入学习scikit learn使用的机器学习算法的理论和参数
- 避免或者不能接触实际项目中的其他部分。 对某些人可能是适用的, 但是对于很多人, 这样会让人觉得望而生畏,经过很长的准备过程学习理论和算法 , 才能开始实际的项目。 很遗憾的是, 这是市面上大部分书籍所采取的办法。
1.2 python 机器学习
这本书主要介绍机器学习的一个子领域叫做预测模型。这个是机器学习在工业界最有用的应用。 本书的组织主要是三种:
- 课程: 学习一个机器学习项目的子任务如何用python来实现, 以及对于这个任务的最佳实践。
- 项目:把所有的子任务通过实际的项目串联起来, 用于具体的预测模型问题。
- 代码段: 展示一些python的代码段,这样你可以直接拷贝粘贴用于新的项目。
1.2.1 课程
你需要知道如何用python生态系统来完成机器学习中的每个子任务。 一旦你知道如何使用这个平台来完成一个完整的任何, 并且取得一个可靠的结果,你就可以在以后的项目中重复这个过程。 让我们从一个机器学习项目的一般流程开始。 一个预测模型机器学习项目可以分成六个大的任务:
- 定义问题: 调查并且特性化问题为了更好的理解项目的目标。
- 分析数据: 使用描述性的统计以及可视化来更好的理解你所拥有的数据
- 准备数据: 使用数据的转化来更好的暴露预测问题的结构给建模的算法。
- 评估算法: 设计一个测试套件来评估各种标准算法, 并且选择最好的算法来进行下一步的研究。
- 提升结果: 使用算法的调优和提升方法来得到你的数据集上最好表现的算法。
- 展示结果: 确定模型, 实施预测并且展示结果。
好处是有如此之多的技术和方法来用这个平台做同样的事情。 在第二部分你会找到一个简单或者最好的实践办法来完成通用机器学习项目的每个子任务。 下面是第二部分的一个摘要以及你可以学习到的子任务
- 第一课: 机器学习的python生态系统
- 第二课:python和scipy 十分钟课程
- 第三课: 从CSV 来导入数据集
- 第四课: 使用描述统计方法来描述数据 - 分析数据
- 第五课: 使用可视化来理解数据- 分析数据
- 第六课: 预处理数据- 准备数据。
- 第七课: 特征选择 - 准备数据
- 第八课: 重组方法 - 评估算法
- 第九课: 算法评估的度量 - 评估算法
- 第十课: 抽样分类算法 - 评估算法
- 第十一课: 抽样回归算法 - 评估算法
- 第十二课: 模型选择 - 评估算法
- 第十三课: 流水线 - 评估算法
- 第十四课: 提升算法 - 提升结果
- 第十五课: 算法参数调优 - 提升结果
- 第十六课: 确定模型 - 展示结果
你可以通过这些课程了解整个机器学习的过程, 每个课程都应该可以在30分钟以内完成。 这本书是可能一个周末完成的, 你也可以深入研究某些章节,使用本书作为一个参考。
1.2.2 项目
代码段是很重要的, 在上面的课程中你可以获得这些,但是这些对于你的实际应用是不够的, 因为你需要一个从头到尾的完整的项目来理解如何使用python来做整个模型的预测。 这本书使用小的容易理解的数据集来向你展示这一点:
- 项目很小。
- 很容易操作。 数据集不需要太多的特征工程就可以得到比较好的结果。
- 有基准。 很多人都用过这些数据集, 这样你可以体会好的算法的效果, 并理解你可以期望的准确性。 你可以看到三个项目:
- hello wold 鸢尾花
- 回归 波士顿房价
- 二分类- 声纳数据集 这些项目使用了第二部分的所有的步骤, 然后让你可以对整个机器学习过程有一个理解。 你未来的工程就可以从这里开始。
1.2.3 代码段
代码段可以帮助你从一个初学者到一个快学习着, 可以很快的开始对任何新的工程开始预测。
1.2.4 你可以学习到的
- 如何从头到尾的工作从一个小数据集到一个中等规模的数据集
- 如何交付一个可以在未知数据上可以准确预测的数据集
- 用python 完成所有的步骤
- 如何python学习新的技术
1.3 这部书不是
- 不是教科书。 没有基本理论。 - 这个用到了需要加上。 毕竟如果不懂基本的概念, 其实是没有办法理解他想干什么的。
- 不是算法书 - 没有算法的介绍。 - 这个自己有一些理解。
- 不是python 编程书。