深度学习在近年来取得了令人瞩目的发展,无论是传统的图像分类、目标检测等技术,还是以Sora、ChatGPT为代表的生成式人工智能,都离不开深度学习. 深度学习相关的图书有很多,但大部分都偏重理论推导及分析,缺少对深度学习内容的直观解释,而直观的解释恰恰对初学者非常重要. 理解深度学习方法的具体用途,以及掌握其基本的内部结构,有利于我们培养深度学习直觉,更好地将其作为工具,进而在其理论的基础上进行创新.
笔者在学习深度学习的过程中经常听人提及一门公开课,即李宏毅老师的“机器学习”公开课. 虽然名为“机器学习”,但该课程经过多年发展,内容已经几乎全部与深度学习相关了. 笔者也便选择其作为学习课程,获益匪浅,于是将所学内容结合笔者个人的理解和体会初步整理成笔记. 之后,在众多优秀开源教程的启发下,笔者决定将该笔记制作成教程,以让更多的深度学习初学者受益. 笔者深知一个人的力量有限,便邀请另外两位编著者(杨毅远、江季)参与教程的编写. 杨毅远在人工智能研究方面颇有建树,曾多次在中国计算机学会A类、B类会议中以第一作者的身份发表论文;江季对深度学习也有较深的理解,有丰富的深度学习研究经历,发表过顶级会议论文,也获得过相关专利. 杨毅远与江季的加入让教程的创作焕发出了新的生机. 通过不懈的努力,我们在GitHub 上发布线上教程,分享给深度学习的初学者. 截至目前,该教程被“标星”逾万次.
为了更好地优化教程,我们尝试把该教程作为教材,并组织上百人的组队学习活动,受到了一致好评. 不少学习者通过组队学习入门了深度学习,并给出了大量的反馈,这也帮助我们进一步改进了教程. 为了方便读者阅读,我们历时1年多制作了电子版的笔记,并对很多地方进行了优化. 非常荣幸的是,人民邮电出版社的陈冀康老师联系我们商量出版事宜. 通过出版社团队和我们不断的努力,本书得以出版.
本书主要内容源于李宏毅老师“机器学习”公开课的部分内容,在其基础上进行了一定的原创. 比如,为了尽可能地降低阅读门槛,笔者对公开课的精华内容进行选取并优化,对所涉及的公式给出详细的推导过程,对较难理解的知识点进行了重点讲解和强化,方便读者较为轻松地入门. 此外,为了丰富内容,笔者还补充了不少公开课内容之外的深度学习相关知识.
本书共 19 章,大体上可分为两个部分:第一部分包括第 1 ~ 11章,介绍深度学习基础知识以及经典深度学习算法;第二部分包括第 12 ~ 19章,介绍深度学习算法更加深入的方向. 第二部分各章相对独立,读者可根据自己的兴趣和时间选择性阅读.
李宏毅老师是台湾大学教授,其研究方向为机器学习、深度学习及语音识别与理解. 李老师的“机器学习”课程很受广大学习者的欢迎,其幽默风趣的授课风格深受大家喜爱. 此外,李老师的课程内容很全面,覆盖了深度学习必须掌握的常见理论,能让学习者对于深度学习的绝大多数领域都有一定了解,从而进一步选择想要深入的方向进行学习. 读者在观看“机器学习”公开课时,可以使用本书作为辅助资料,以进一步深入理解课程内容.
本书配有索引,方便读者根据自己的需求快速找到知识点所对应的篇幅高效学习. 此外,笔者认为,深度学习是一个理论与实践相结合的学科,读者不仅要理解其算法背后的数学原理,还要通过上机实践来实现算法. 本书配有Python代码实现,可以让读者通过动手实现各种经典的深度学习算法,充分掌握深度学习算法的原理. 值得注意的是,本书配套的Python 代码均可在异步社区本书页面的“配套资源”处下载. 本书经过 1年多的优化,吸收了读者对开源版教程的众多反馈. 相信本书一定会对读者的学习和工作大有裨益.
衷心感谢李宏毅老师的授权和开源奉献精神,李老师的无私使本书得以出版,并能够造福更多对深度学习感兴趣的读者. 本书由开源组织Datawhale 的成员采用开源协作的方式完成,历时 1 年有余,参与者包括 3 位编著者(笔者、杨毅远和江季)和3位 Datawhale的小伙伴(范晶晶、谢文睿和马燕鹏).此外,感谢付伟茹同学对本书初稿提出的宝贵建议. 在本书写作和出版过程中,人民邮电出版社提供了很多出版的专业意见和支持,使得本书较开源版本更加规范、更加系统化. 在此特向人民邮电出版社信息技术分社社长陈冀康老师和本书的责任编辑郭泳泽老师致谢.
深度学习发展迅速,笔者水平有限,书中难免有疏漏和表述不当的地方,还望各位读者批评指正.
王 琦
2024年5月22日