本书主要对算法的原理进行了介绍,并融合大量的应用案例,详细介绍使用机器学习模型的一般方法,帮助读者理解算法原理,学会模型设计。
本书首先介绍数据理解、数据的处理与特征,帮助读者认识数据;然后从宏观、系统的角度介绍机器学习算法分类、一般学习规则及机器学习的基础应用;接着根据项目研发的流程,详细介绍了模型选择和结构设计、目标函数设计、模型训练过程设计、模型效果的评估与验证、计算性能与模型加速;最后通过多个应用案例帮助读者加强对前面知识点的理解。
统计学中的三要素是模型+策略+算法。
对于算法,用原理+示例进行讲解,做到学以致用。
对于模型,用表格对比各模型优缺点+适用场景+具体案例,读者可根据场景找到最适合的模型。
策略的具体呈现是损失函数,用公式+描述+适用问题对各损失函数进行对比介绍,并用案例详细展现具体应用。
前言
写作背景
我多年前参加了“百度深度学习公开课·杭州站”的活动,当时做了一个主题为“深度学习模型设计经验分享”的演讲,现场效果非常好,后来萌发了写机器学习算法的想法。于是我将一些工作内容进行沉淀总结,便形成了本书。
本书内容
本书主要对算法的原理进行了介绍,并融合大量的应用案例,详细介绍使用机器学习模型的一般方法,帮助读者理解算法原理,学会模型设计。
本书首先介绍数据理解、数据的处理与特征,帮助读者认识数据;然后从宏观、系统的角度介绍机器学习算法分类、一般学习规则及机器学习的基础应用;接着根据项目研发的流程,详细介绍了模型选择和结构设计、目标函数设计、模型训练过程设计、模型效果的评估与验证、计算性能与模型加速;最后通过多个应用案例帮助读者加强对前面知识点的理解。
读者对象
? 对数据分析、算法及机器学习领域感兴趣的开发者;
? 对人工智能产品、算法方案设计有不同层次需求的技术管理者;
? 软件工程或计算机相关专业的在校学生。
本书特色
本书紧密结合一线开发者的项目应用经验,对当前机器学习的各类算法原理进行了介绍,以方法论的形式连接原理和实践,指导读者设计机器学习模型。
本书结构
本书内容由浅入深,以宏观认识为基础,逐步深入算法体系、算法细节,全书共分为10章,具体内容如下。
第1章从宏观的角度介绍人工智能相关基础知识、机器学习的技术发展史,以及机器学习在计算机视觉、自然语言处理、语音识别等领域的发展历程,有助于读者了解宏观背景。
第2章重点介绍了数据的三个基本维度、统计推论的基本方法,以及数据分析中的一些关键技术点和可视化,帮助读者建立数据理解的思维。
第3章从数据处理与特征的角度重点介绍了数据的处理方法,以及数据的特征缩放和特征编码、图像的特征分析等,并对数据降维进行了深入介绍。
第4章重点对机器学习的理论基础进行介绍,并结合了应用辅助增强对机器学习理论基础的认识,包括机器学习的体系框架、一般学习规则等。
第5章重点介绍了模型选择和结构设计,对机器学习、深度学习中的经典模型进行了介绍,并详细介绍了模型的设计方向、设计技巧等。
第6章重点介绍了目标函数中的设计,包括各应用场景中常见的损失函数,以及设计的原则,并详细介绍了梯度下降法和牛顿法的目标求解过程。
第7章重点介绍了模型训练过程中的设计,包括数据选择、参数初始化、模型拟合状态、学习速率设定等,并结合迁移学习和分布式训练对模型训练的过程进行了介绍。
第8章从模型效果的角度分别对分类算法、聚类算法、回归算法等常见的效果评估指标进行了介绍,并通过交叉验证对模型效果进行评估,还从计算和数据的角度介绍了模型的稳定性。
第9章从算法应用落地的角度,重点介绍了计算性能和模型加速,包括计算平台的性能指标、模型的计算性能指标,以及模型的压缩与裁剪。
第10章通过数据准备、模型设计等关键环节,重点介绍了二元一次方程的数据拟合案例、鸢尾花的数据分类及聚类案例、形体识别的综合性案例。
由于时间仓促及水平有限,书中难免存在不足之处,恳请广大读者批评指正,可以通过邮箱(fanpingliu@live.com)联系我,谢谢!
致谢
感谢身边志同道合的同学、朋友、同事和曾经对我严厉要求的老师们,每次向他们请教学习、探讨交流,都能让我从不同角度看到新的观点。
衷心感谢我的家人,感谢他们在过去的时间里对我的理解和支持,为我营造了一个良好的写作环境,并鼓励我坚持认真写作,使得本书能够顺利编写完成。
在本书编写过程中得到了很多朋友的支持和帮助,限于篇幅,虽然不能一一对他们表示感谢,但是对他们同样心怀感激。
最后,感谢这个时代,给予每一个有理想的人赋予实现人生价值的机会!望不负自己,不负韶华!
刘凡平