本书介绍机器学习方法的原理及方法,同时引入了学习的计算复杂性、凸性和稳定性、PAC贝叶斯方法、压缩界等概念,以及*梯度下降、神经元网络和结构化输出等方法。作者既讲述最重要的机器学习算法的工作原理和动机,还指出其固有的优势和缺点,是有兴趣了解机器学习理论和方法以及应用的学生和专业人员的良好教材或参考书。
前 言
前言Understanding Machine Learning:From Theory to Algorithms“机器学习”旨在从数据中自动识别有意义的模式。过去几十年中,机器学习成为一项常用工具,几乎所有需要从大量数据集合中提取信息的任务都在使用它。我们身边的许多技术都以机器学习为基础:搜索引擎学习在带给我们最佳的搜索结果的同时,植入可以盈利的广告;屏蔽软件学习过滤垃圾邮件;用于保护信用卡业务的软件学习识别欺诈。数码相机学习人脸识别,智能电话上的个人智能助手学习识别语音命令。汽车配备了用机器学习算法搭建的交通事故预警系统。同时机器学习还被广泛应用于各个科学领域,例如生物信息学、医药以及天文学等。 这些应用领域的一个共同特点在于,与相对传统的计算机应用相比,所需识别的模式更复杂。在这些情景中,对于任务应该如何执行,人类程序员无法提供明确的、细节优化的具体指令。以智能生物为例,我们人类的许多技能都是通过从经验中学习而取得并逐步提高的(而非遵从别人给我们的具体指令)。机器学习工具关注的正是赋予程序“学习”和适应不同情况的能力。 本书的第一个目标是,提供一个准确而简明易懂的导论,介绍机器学习的基本概念:什么是学习?机器怎样学习?学习某概念时,如何量化所需资源?学习始终都是可能的吗?我们如何知道学习过程是成功或失败?本书的第二个目标是,为机器学习提供几个关键的算法。我们提供的算法,一方面已经成功投入实际应用,另一方面广泛地考虑到不同的学习技术。此外,我们特别将注意力放到了大规模学习(即俗称的“大数据”)上,因为近几年来,世界越来越“数字化”,需要学习的数据总量也在急剧增加。所以在许多应用中,数据量是充足的,而计算时间是主要瓶颈。因此,学习某一概念时,我们会明确量化数据量和计算时间这两个数值。 本书分为四部分。第一部分对于“学习”的基础性问题给出初步而准确的定义。我们会介绍Valiant提出的“概率近似正确(PAC)”可学习模型的通用形式,它将是对“何为学习”这一问题的第一个有力回答。我们还会介绍“经验风险最小化(ERM)”“结构风险最小化(SRM)”和“最小描述长度(MDL)”这几个学习规则,展现“机器是如何学习的”。我们量化使用ERM、SRM和MDL规则学习时所需的数据总量,并用“没有免费的午餐”定理说明,什么情况下学习可能会失败。此外,我们还探讨了学习需要多少计算时间。本书第二部分介绍多种算法。对于一些算法,我们先说明其主要学习原则,再介绍该算法是如何依据其原则运作的。前两部分将重点放在PAC模型上,第三部分将范围扩展到更广、更丰富的学习模型。最后,第四部分讨论最前沿的理论。 我们尽量让本书能够自成一体,不过我们假设读者熟悉概率论、线性代数、数学分析和算法设计的基本概念。前三部分为计算机科学、工程学、数学和统计学研究生一年级学生设计,具有相关背景的本科生也可以使用。高级章节适用于想要对理论有更深入理解的研究者。 致谢Understanding Machine Learning:From Theory to Algorithms本书以“机器学习入门”课程为蓝本,这门课程由Shai ShalevShwartz和Shai BenDavid分别在希伯来大学和滑铁卢大学讲授。本书的初稿由Shai ShalevShwartz在2010至2013年间在希伯来大学所开课程的教案整理而成。感谢2010年的助教Ohad Shamir和2011至2013年的助教Alon Gonen的帮助,他们为课堂准备了一些教案以及许多课后练习。特别感谢Alon在全书编写过程中所做出的贡献,此外他还撰写了一册习题答案。 我们由衷地感谢Dana Rubinstein的辛勤工作。Dana从科学的角度校对了书稿,对原稿进行了编辑,将它从章节教案的形式转换成连贯流畅的文本。 特别感谢Amit Daniely,他仔细阅读了本书的高级部分,并撰写了多分类可学习性的章节。我们还要感谢耶路撒冷的一个阅读俱乐部的成员们,他们认真阅读了原稿的每一页,并提出了建设性的意见。他们是:Maya Alroy, Yossi Arjevani, Aharon Birnbaum, Alon Cohen, Alon Gonen, Roi Livni, Ofer Meshi, Dan Rosenbaum, Dana Rubinstein, Shahar Somin, Alon Vinnikov和Yoav Wald。还要感谢Gal Elidan, Amir Globerson, Nika Haghtalab, Shie Mannor, Amnon Shashua, Nati Srebro和Ruth Urner参与的有益讨论。