对于一个机器学习开发流程,可以归纳为以下几个步骤。

  1. 获取数据集。
  2. 进行数据预处理(也成为数据清洗)。一般进行数据清洗需要通过通过7个步骤进行处理: 选择子集,列名重命名,删除重复值,缺失值处理,一致化处理,数据排序处理,异常值处理[1]
  3. 特征工程。将原始数据转化成更好的表达问题本质的特征的过程,使得将这些特征运用到预测模型中能提高对不可见数据的模型预测精度[2]
  4. 机器学习算法训练,得到模型。
  5. 模型评估。如果评估结果不满意,则重新回到步骤 2 再训练一次。
  6. 应用训练好的模型

对于机器学习的学习框架与资料

我们需要明确的知道:算法是核心,数据与计算是基础。现在的机器学习这么火,是因为它的效率很高,归功于算法的进步,以及拥有数据给他进行训练。

确定自己在这样的过程中找到定位。大部分比较复杂的模型,算法都有算法工程师去开发。很多都是名校的研究学者发明出来的,一般上自学者很难去达到这样的能力。一般上工业界不需要这么牛的技能。通常只需要做一些数据清洗、模型训练的操作。我们只需要设计着一些工作内容:

  1. 分析大量的数据
  2. 分析具体的业务
  3. 应用常见的算法
  4. 特征工程、调参数、优化

一般上可以去读这么几本书,但参考书比较晦涩难懂,不建议直接去读,他确实会提升你的基础,但是会磨掉你的耐心:

  1. 概率论与数理统计
  2. 线性代数
  3. 高等数学

一般上我们需要怎么做?首先,需要入门,了解自己需要做什么,掌握算法的基本思想,学会对问题用相应的算法去解决,利用库或框架解决问题,然后去找找实战类书籍,了解框架底层原理,深入研究

机器学习库和框架

常见的机器学习框架有

  1. scikit learn
  2. pytorch
  3. caffe 2
  4. theano
  5. chainer

机器学习书籍资料

  1. Machine Learning 机器学习(西瓜书) - 周志华(讲的是机器学习的底层)
  2. Python 数据分析与挖掘实战
  3. 机器学习系统设计
  4. 面向机器智能 TensorFlow 实践
  5. TensorFlow 技术分析与实践

深入研究

  1. 统计学习方法 ISBN:9787302275954
  2. 深度学习(花书) ISBN:9787115461476

参考

[1] 数据分析(二):数据清洗步骤 - Hugh Kim的文章 - 知乎 https://zhuanlan.zhihu.com/p/109413107
[2] 深度了解特征工程 - 正阳的文章 - 知乎 https://zhuanlan.zhihu.com/p/111296130