Scikit-learn机器学习详解(上)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前 言

Scikit-learn是基于Python的开源免费机器学习库,起源于发起人David Cournapeau在2007年参加谷歌编程之夏GSoC(Google Summer of Code)的一个项目,目前已经成为最受欢迎的机器学习库之一。

笔者将通过上、下两册把这个内容丰富、功能强大的机器学习框架进行系统条理的讲解,帮助有志于从事人工智能,特别是机器学习的开发者快速掌握Scikit-learn,并有效应用于工作中。本书是上册,首先简要介绍了机器学习的基础知识以及学习Scikit-learn的预备知识,然后重点讲解学习和掌握Scikit-learn的基础知识和基本功能,包括数据变换、特征抽取和降维技术等功能,这些都是高效应用Scikit-learn的必备知识。下册将以Scikit-learn提供的算法和模型为基础,讲解各种算法的原理、实现技术和应用案例,使读者在高效应用Scikit-learn技术方面更上一层楼。

第1章:介绍了机器学习的概念,并概述了机器学习与人工智能、机器学习与大数据以及机器学习与数据挖掘的关系。作为人工智能的一个子集,机器学习目前已经在各个领域开花结果,默默地影响着我们的日常生活。

第2章:介绍了Scikit-learn的预备知识,主要包括四个基础模块:NumPy、Pandas、SciPy库和Matplotlib,由于它们功能丰富、便于使用,目前已经广泛应用于数学、科学和工程领域,成为最受欢迎的Python扩展工具包。

第3章:学习掌握Scikit-learn的基础应用,在机器学习的基础上介绍了弄懂Scikit-learn首先需要掌握的最为常见的、全局性的先验知识,为方便实训演练,提供了模型训练和预测的例子。

第4章:介绍了Scikit-learn数据变换相关知识,包括评估器(estimator)、转换器(transformer)和管道(pipeline)等常用的概念,它们均属于数据预处理的范畴。其中转换器(transformer)可以实现数据预处理、缺失值处理、降维等各种数据变换功能。

第5章:介绍了Scikit-learn特征抽取和特征降维相关知识,它们都是数据预处理的一部分。特征抽取是指从原始数据中抽取特定特征变量的过程;特征降维不仅能够在不丢弃任何数据样本的情况下提高模型构建的效率,减少模型的规模,同时还能增强模型预测的效果。

附录:包含精选的Scikit-learn实用拓展学习资源,包括互操作和框架增强包、评估器和任务扩展包、推荐引擎扩展包等非常实用的资源。每个扩展包包含了概要描述和网址链接,便于读者访问。

本书特点

■ 内容由浅入深,循序渐进

本书从机器学习的起源和概念讲起,在引出了机器学习的标准开发步骤之后,讲述了Scikit-learn的外围预备知识(包括NumPy、Pandas、SciPy等)和基础知识,并逐步讲解了Scikit-learn的数据变换、特征抽取和降维功能,这是进行机器学习算法训练、模型应用的基本知识。一方面遵循初学者对机器学习的认知规律,另一方面也便于熟悉机器学习基本知识的学习者有选择地阅读。

■ 语言通俗易懂,轻松易学

讲解时尽量用通俗易懂的语言,配以足量图片和代码,形象化地把抽象内容呈现给读者,使读者很快理解、掌握每个章节的内容,有效降低学习的门槛。内容虽多,但不枯燥,轻松易学。

■ 讲解主干明确,脉络清晰

贯彻机器学习算法训练和应用这一主题。上册内容主要在于构建实际模型之前的工作,即数据预处理和特征抽取等知识,这是进行算法训练和模型应用不可或缺的流程环节,是后续内容的必要铺垫。内容一环接着一环,主干脉络清晰。

■ 案例精心挑选,实用性强

如何实现数据的标准化和规范化?对于缺失值如何处理?特征哈希如何实现?通过典型案例,读者可以轻松地处理这些在构建机器学习模型时必须面对的问题,有效地应用于后续的模型训练和实践应用中。

本书主要是面向有志于从事机器学习开发以及对人工智能领域感兴趣的读者而编写的,包括但不限于如下人员:

(1)具备一定Python基础知识,希望在机器学习领域进阶升级的开发人员;

(2)想要了解和实践Scikit-learn学习包的开发工程师;

(3)有志于从事大数据及人工智能的分析人员;

(4)对大数据和人工智能领域感兴趣的相关读者。

本书例子运行的Python版本号是Ver3.8.1。所有实例都可以通过化学工业出版社网站下载,也可以通过QQ:420165499联系在线下载实例包。读者在阅读和使用过程中,如有任何问题,可通过QQ在线咨询,笔者将竭诚为您服务。

著者

2020年8月