
v
序
在过去的几年中,机器学习已经渗透到企业、非营利组织和政府的日常运作中。随着机
器学习热度的增加,在对机器学习从业者的指导方面,涌现出一批高质量的文献。这些
文献培养了整整一代的数据科学家和机器学习工程师。这些文献提供了学习资源,为人
们讲解机器学习是什么及其工作原理。尽管这种方法富有成效,但却遗漏了一部分内容:
机器学习日常开发中的细节。这就是笔者写本书的动机——本书不是写给学生读者学习
机器学习理论的大部头,而是写给专业人士的“扳手型”工具书。我希望你把它放在书
桌上,把你感兴趣的某些页折起来,在日常开发中需要解决实际问题时就拿过来翻一翻。
更具体地说,本书采用基于任务的方式来介绍机器学习,有近
200
个独立的解决方案(你
可以复制并粘贴这些代码,它们都是可以正常运行的),针对的都是数据科学家或机器
学习工程师在构建模型时可能遇到的常见任务。
本书的最终目标是成为人们在构建真实的机器学习系统时的参考书。例如,假设你有一
个
JSON
文件,其中包含
1000
个数据分类特征和数值型特征,并且目标向量的分类不均
衡,你想得到一个可解释的模型,那么使用本书提供的解决方案可以帮助你解决如下问
题:
y
加载
JSON
文件(
2.5
节)
y
对特征进行标准化(
4.2
节)
y
对特征字典编码(
5.3
节)
y
填充缺失的分类值(
5.4
节)
y
使用主成分进行特征降维(
9.1
节)
y
使用随机搜索选择最佳模型(
12.2
节)
y
训练随机森林分类器(
14.4
节)
y
选择随机森林中的重要特征(
14.7
节)