最近,彪悍的上海交大 ACM 班俞勇教授团队推出了一本重量级新书——《动手学机器学习》。这对于技术人来说是难得的福音,因为它一次性讲明白了机器学习这回事。上海交大 ACM 班到底有多彪悍?看看它的杰出校友们吧。科研领域有在斯坦福任教的杨笛一,有在卡耐基梅隆大学任教的陈天奇,他也是 XGBoost 作者、TVM发起人。企业界则有依图科技联合创始人林晨曦,第四范式创始人戴文渊。MXNet 的作者大神李沐,其所著的《动手学深度学习》更是诸多技术人的必读经典。因此 ACM 班在业界享有中国 AI 人才的“黄埔军校”之称。了不起的成就背后是伟大的愿景,ACM 班的创立者俞勇教授一直在为培养中国的图灵奖得主而努力。颁发图灵奖的机构就是 ACM(美国计算机协会),可见俞勇教授给 ACM 班取名时就寄予了多么深切的期望。ACM 班总教头:俞勇教授
《动手学机器学习》的内容来自于 ACM 班的一线教学实践。本书作者之一张伟楠根据自己讲授机器学习课程的体会与学生反馈,将理论知识与练习代码进行体系化整理形成初稿。随后在主创团队的精心审阅编排下,最终交付了这本机器学习领域的力作。这本书的书课包同步开启预售,扫码加助手微信即可书课包优惠价99元购买!
《动手学机器学习》的定位是在引领初学者入门,在内容设置上是从讲解基础理论算法开始,逐渐进入有监督学习模型与无监督学习模型的论述,力求让学习者系统化掌握机器学习的主干知识。本书的主创团队有三位作者,除了总教头俞勇教授,还有将教学成果整理成书的张伟楠副教授,他在强化学习、数据挖掘、知识图谱等领域颇有建树。作者赵寒烨也在强化学习、机器学习方面有着深入的研究。实力如此强劲的技术天团,为本书在业界树立了权威的标杆。下面对书中四个主要部分的内容进行说明。
在基础部分,主要是帮助学习者抓住最核心的概念和原理,讲解了最基础的两个算法:KNN(K 近邻算法)和线性回归。基于这两个算法讨论了机器学习的基本思想与实验原则。扎实掌握好这部分内容,就具备了在大部分机器学习场景中上手实践解决问题的能力。本部分主要是讨论监督学习任务的参数化模型,包括逻辑斯谛回归、双线性模型、神经网络与多层感知机、卷积神经网络、循环神经网络等内容。这些方法的共通特征,主要是基于数据的损失函数对模型参数求梯度,进而更新模型。
这部分聚焦在监督学习的非参数化模型上,包括支持向量机、决策树、集成学习与梯度提升决策树等内容。之所以将非参数模型单独作为一个部分,是为了让学习者从原理和代码方面更好地体会与参数化模型的区别、优劣。
本部分讨论了对于没有标注的数据进行处理的无监督学习方法,包括 K 均值聚类、主成分分析、概率图模型、EM 算法、自动编码器等内容。对无监督学习进行了不同任务、不同技术角度的讨论,让学习者可以充分体会与监督学习的区别。《动手学机器学习》的最大亮点就是为动手实践提供了傻瓜式的体验环境,主创团队将 ACM 班的实践成果精炼出来,理论与代码相结合,让学习者可以平滑上手。书中包括机器学习的概念定义、理论分析和算法过程和可运行代码。学习者可根据自己的学习状况,灵活选择想要阅读的内容。不过,毕竟不是零基础入门,在动手之前学习者要具备两项基础能力,一是数学概念和数理统计知识,包括矩阵运算、概率分布和数值分析方法等;二是基本的 Python 的编程能力,能看懂代码并调试运行。本书丰富的技术案例涵盖了基础算法、监督学习的参数化模型与非参数化模型,以及非监督模型。对于书中提到的知识点,学习者都可以亲手实践。主创团队对代码示例进行了精心选择,力求功能简洁且易修改。所有示例代码按章节分类,生成为 ipynb 格式,学习者可从https://github.com/boyu-ai/Hands-on-ML地址下载。书中提供的代码都是基于 Python 3 与 PyTorch 框架实现,可用任意支持 ipynb 格式的在线或本地工具运行。示例中用到的 Python 工具库都有简要说明,每一份示例代码中都包含可以由学习者自行设置的变量,学习者可以实时修改并运行观察结果。以下是在 Visual Studio Code 环境中运行 KNN 算法的实例。运行输出结果
是不是意犹未尽?还有更多惊喜的富媒体学习资料,让我们来看一下。在线教学视频:主创团队贴心地录制了视频课程。观看方式:看到书中出现“扫码观看视频课程”的图示,就立即拿起手机扫码吧。配套 PPT 课件:方便学习者温习主干知识,也有利于教师备课。课后习题:看看自己学得牢不牢,千万不要当半桶水先生,题目都要会做。
学习社群:三人行,必有我师。书中为大家提供了入群学习的方式,可随时随地与同行们交流。
《动手学机器学习》的内容在成书之前就经过了 ACM 班的教学检验,书中的原理讲解、算法说明、代码案例都在教与学的互动中去芜存菁,可以说这本书就是思考与实践的淬炼结晶。当先进的教学成果走出校园,在业界传播普及机器学习知识,推动了产业的发展时,也引得大佬们交口称赞。本书从机器学习的基本概念入手,结合sklearn机器学习算法库,以大量示例和代码带领读者走进机器学习的世界。
——周志华 南京大学计算机科学与技术系主任
兼人工智能学院院长
本书源自上海交通大学 ACM 班机器学习课程讲义,着力帮助读者融会贯通,深入理解机器学习原理并提高动手实战能力,是培养新一代人工智能实战型人才不可多得的好书。
——朱军 清华大学计算机科学与技术系博世人工智能冠名教授、IEEE会士
本书是全面、系统的机器学习教材,主要介绍机器学习的核心概念及代表性方法。本书不仅涵盖神经网络、集成学习等经典的机器学习理论,还配备可在线运行的代码,帮助读者通过动手实战来加强对机器学习技术的理解。无论是初学者还是行业人士,都能从本书中得到有价值的帮助和指导。
——李文新 北京大学计算机学院教授、北京市教学名师、北京大学计算机实验教学中心主任
本书形态新颖、丰富。纸质图书对机器学习的知识体系进行系统介绍,理论解读视频课程对疑难知识点进行更透彻的讲解,代码支持在线运行、修改,习题帮助读者检验、巩固学习效果,教学课件帮助高校教师备课。本书既能为行业人士自学机器学习提供体系化的学习资源,又能通过动手学的方式帮助高校教师和学生完成机器学习的教学与学习。
——黄萱菁 复旦大学计算机科学技术学院、现代语言学研究院教授
智能化升级已成为当代企业在数字化转型后攀登的新阶梯。为此,需要大量具备专业知识的人工智能人才,他们不仅要深入理解人工智能的理论和算法,更应具备实战能力,以应对实际应用场景中的挑战。本书正是为培养这种实战型人工智能人才而编写的,内容详实、示例丰富、代码清晰,强烈推荐给所有希望深入了解人工智能并进行动手实战的读者。
——刘铁岩 微软杰出首席科学家、微软研究院科学智能中心亚洲区负责人、微软亚洲研究院副院长
上海交通大学ACM班注重培养学生扎实的专业基础和动手实战能力。俞勇老师团队编写的这本书体现了上海交通大学ACM班在人工智能基础模块人才培养方面的特色理念,在此推荐给各位读者。
——陈天奇 卡内基梅隆大学机器学习系、计算机科学系助理教授
从根本上说,机器学习是一门研究算法的学科,而这些算法的作用,就在于能够通过非显式编程(non-explicit programming)的形式,利用经验数据提升某个任务的性能指标。所以这里的难度在于,即使我们理解了算法,也无法从结果倒推回去,这是难以还原的。显式编程则直观得多,直接针对问题给出解答,例如要对一组数据排序,就实现一个快速排序算法。对于学习者来说,要将机器学习在自己的业务领域内应用好,就要转变思维,“往后站一步”,从显式编程转为编写机器学习算法程序。这就是非显式编程的含义,在不同任务中,基于任务自身的数据,训练出一个解决问题的模型。1-1 传统的显式编程与机器学习的非显式编程
《动手学机器学习》就是要帮助学习者系统化地理解机器学习,弄明白算法原理,学会用非显式编程解决自己的问题。书中对每种算法都给出了开箱即用的示例代码,学习者轻松扩展一下就可以用在实际工作中。▲ 点击封面,即可5折购书
现在,分析一下手头上的任务和数据,赶紧把机器学习方法用起来,成为智能时代的超级个体吧!