前言
从机器学习的产生到现在,短短的几十年时间,机器学习技术得到了飞速发展,尤其是近年来,以机器学习为代表的人工智能技术日新月异,取得了举世瞩目的成就。它的应用已经遍及到图像处理、语音识别、机器翻译、个性化推荐、人机交互等诸多领域,极大地改变了我们的生活和工作方式。在计算机教育领域,随着大数据技术和计算机技术的发展,机器学习作为人工智能的一个非常重要的分支,逐渐受到各高校师生的重视,并作为一门专业选修课在国内众多高校开设,受到越来越多学生的青睐。目前,机器学习已成为计算机、软件工程等相关专业非常重要的专业课程,是今后研究生学习的必修课和从事软件开发的主要方向。
机器学习与普通算法的不同之处在于它是以数据为驱动的智能算法。机器学习是一门建立在数学理论基础上的应用学科,算法的实现固然重要,它正是建立在强大的数学基础之上,因此,严密的数学推导对于机器学习者来说也是必不可少的。作为一名算法爱好者,从事算法研究已经许多年了,但笔者深知机器学习、人工智能领域不乏建树颇丰的理论与实践皆通的大师,也有众多技艺精湛的有识之士,正是这些无数学者的贡献,才有今天日新月异的机器学习技术和美好生活。对于机器学习的学习与研究,需要常怀着敬畏之心,不断虚心向学,提高理论与实践能力,才能跟上机器学习发展的脚步。作为一名计算机专业人员,算法的实现又要求具备深厚的Python语言基础、数据结构与算法设计能力。这就要求读者在学习机器学习的过程中,以理论深厚、技艺精湛的大师为榜样,既要仰望星空,又要脚踏实地,内外兼修,方得始终。
本书比较系统地介绍了机器学习常见的经典算法,从算法的原理、算法实现、案例应用三个角度进行由浅入深地讲解。本书理论与技术并重,结合作者个人学习、工作中的实践经验,参考众多著作、案例,试图从原理上让读者清楚每个算法的由来,并能实现该算法,最后能利用算法解决目前实际生活中有关数据处理的问题,比如西瓜分类、垃圾邮件分类、手写数字识别、个性化推荐等。通过这些典型的案例,读者不仅能学会机器学习算法的应用,而且还能掌握将需要处理的问题抽象出来,转换为机器学习中的分类、回归问题并加以解决的思维方法。
全书案例都给出整体思路讲解,并给出完整的Python实现,所有代码均上机调试通过,并给出程序的运行结果,方便读者理解,并提高综合解决实际问题的能力。
本书内容
本书共分为14章,内容分别为机器学习基础、k近邻算法、贝叶斯分类器、聚类、EM算法、支持向量机、决策树、线性回归、逻辑回归、人工神经网络、垃圾邮件分类、手写数字识别、零售商品销售分析与预测、基于协同过滤的推荐系统。
第1章,机器学习概述,如果你是一名机器学习初学者,本章将告诉你机器学习是什么,机器学习的发展历史、基本概念、工作流程及Python语言基础。
第2章主要介绍kNN算法。首先讲解kNN算法原理、非参数估计方法,然后通过实例介绍三文鱼和鲈鱼的分类。
第3章主要介绍朴素贝叶斯算法。首先讲解朴素贝叶斯定理,然后利用朴素贝叶斯以西瓜数据集为例进行分类实践。
第4章主要介绍聚类算法。介绍k均值、基于密度的聚类、基于层次的聚类算法思想及实现。
第5章主要介绍EM算法。首先介绍EM算法思想,然后利用EM算法对西瓜数据集进行聚类,还以抛掷硬币为例估计其概率。
第6章主要介绍支持向量机。首先介绍感知机模型,然后讲解支持向量机原理,以及支持向量的线性分类和非线性分类、支持向量机回归,最后利用支持向量机对鸢尾花进行分类。
第7章主要介绍决策树。首先介绍决策树算法原理,然后以相亲为例构造决策树,并对其进行分类。
第8章主要介绍线性回归。首先介绍回归的概念,然后分别介绍单变量回归、多变量回归和多项式回归算法及实现。
第9章主要介绍逻辑回归。首先介绍sigmoid函数和逻辑回归推导过程、算法实现,然后使用逻辑回归对良性肿瘤和恶性肿瘤进行预测。
第10章主要介绍人工神经网络。首先介绍BP神经网络原理,然后以具体实例介绍BP神经网络训练过程中参数的学习,最后对鸢尾花数据进行分类。
第11章主要介绍垃圾邮件分类。首先介绍中文分词、去除停用词、文本向量化等文本预处理和特征提取,然后使用贝叶斯算法、SVM算法等对垃圾邮件进行分类。
第12章主要介绍手写数字识别。首先介绍图像的存储表示、图像预处理,然后分别使用kNN和BP神经网络对手写数字进行识别。
第13章主要介绍零售商品的分析与预测。以零售商品的分析与预测为例,讲解属性特征数值化、缺失值处理、特征选择等,然后使用线性回归、岭回归、Lasso回归、多项式回归等对商品销售额预测。
第14章主要介绍基于协同过滤的推荐系统。首先介绍协同过滤推荐原理、推荐系统的评估方法,然后介绍基于近邻用户和近邻项目的协同过滤推荐算法及实现,最后介绍隐语义分析的推荐系统算法思想及实现。
配套教学资源下载
本书配套的教学资源,包括示例源代码、PPT课件、课后习题答案、开发环境等。读者需要用微信扫描右侧的二维码,可按页面提示填写你的邮箱,把链接转发到邮箱中下载。如果阅读过程中发现问题,请联系booksaga@163.com,邮件主题写“Python机器学习实践”。
本书作者与鸣谢
参与本书编写的有张建伟、陈锐、马军霞、王鹏、梁树军、张亚洲、谷培培。其中,张建伟编写第1章,陈锐编写第3章和第14章,马军霞编写第5章和第6章,王鹏编写第12章,梁树军编写第2章、第7章和第8章,张亚洲编写第9章和第10章,谷培培编写第11章和第13章。
本书为郑州市大数据人才培养校企合作专业教材。在本书的写作过程中,得到了郑州轻工业大学和清华大学出版社的大力支持,在此表示衷心感谢。
在本书编写的过程中,参阅了大量相关论文、教材、著作,个别案例也参考了网络资源,在此向各位原著者致敬!
由于作者水平有限,加上时间仓促,书中难免存在一些不足之处,恳请读者批评指正。
作者
2022年5月