作者:Tom M. Mitchell 页数:282 出版社:empty |
机器学习这门学科所关注的问题是:计算机程序如何随着经验积累自动提高性能?近年来,机器学习被成功地应用于很多领域,从检测信用卡交易欺诈的数据挖掘程序,到获取用户阅读兴趣的信息过滤系统,再到能在高速公路上自动行驶的汽车。同时,这个学科的基础理论和算法也有了重大的进展。 这本教材的目标是展现机器学习中核心的算法和理论。机器学习从很多学科吸收了成果和概念,包括统计学、人工智能、哲学、信息论、生物学、认知科学、计算复杂性和控制论等。我相信,研究机器学习的最佳途径是从这些学科的观点看待机器学习,并且以此来理解问题的背景、算法以及其中隐含的假定。这些在以往很难做到,因为在这一领域缺少包容广泛的原始资料。这本书的主要目的就是提供这样的一份资料。 由于素材的多学科性,这本书不要求读者具有相应的知识背景,而是在必要时介绍其他一些学科的基本概念,如统计学、人工智能、信息论等。介绍的重点是与机器学习关系最密切的那些概念。本书可以作为计算机科学与工程、统计学和社会科学等专业的大学生或研究生的教材,也可作为软件研究人员或从业人员的参考。指导这本书写作的两条原则为:1.它是在校大学生可以理解的;2.它应该包含博士生在开始研究机器学习前要掌握的内容。 指导这本书写作的第三条原则是:它应该体现理论和实践两者的平衡。机器学习理论致力于回答这样的问题“学习性能是怎样随着给定的训练样例的数量变化的?”和“对于不同类型的学习任务,哪个学习算法最适合?”利用来自统计学、计算复杂性和贝叶斯分析的理论成果,这本书讨论了这一类理论问题。同时本书也覆盖了很多实践方面的内容:介绍了这一领域的主要算法,并阐明了算法的运行过程。一些算法的实现和数据可以在互联网上通过网址http://www.cs.cmu.edu/~tom/mlbook.html得到。其中包括用于人脸识别的神经网络、用于信贷分析的决策树学习、及分析文本文档的贝叶斯分类器各自的源代码和所需数据。我很感谢那些帮助我创建这些在线资源的同事,包括Jason Rennie、Paul Hsiung、Jeff Shufelt、Matt Glickman、Scott Davies、Joseph O’Sullivan、Ken Lang、Andrew McCallum和Thorsten Joachims。 致谢 在写作这本书的过程中,我幸运地得到了机器学习领域很多学科分支的技术专家的帮助。没有他们的帮助这本书是不可能完成的。我深深地感激下面的科学家们,他们花时间检阅本书的草稿,并且以他们各自领域的专长对我进行了指导。 (……) 我也很感谢各所大学的很多讲师和学生,他们实地测试了本书的很多草稿并提出了他们的建议。尽管没有足够的版面来感谢上百名的学生、讲师和其他测试了草稿的人,我要感谢下面各位,感谢他们特别有帮助的建议和讨论。 我感谢Joan Mitchell建立了本书的索引。我也感谢Jean Harpley帮助编辑了很多插图。ETP Harrison的Jane Loftus帮助整理了本书的手稿。我的编辑,McGraw Hill出版社的Eric Munson在项目的整个过程中提供了鼓励和意见。 通常,一个人最该感谢的是他的同事、朋友和家庭。对于我,尤其要表达自己的感激。我很难想象有人比我在Carnegie Mellon拥有更好的智者云集的环境和更多的鼎力相助的朋友。在这些很多帮助过我的人当中,我特别感谢Sebastian Thrun,在这个项目的自始至终,他一直对我进行着精神鼓励、技术指导等各种支持。我的父母,与以往一样的鼓励我并在最恰当的时候问“已经完成了吗?”最后,我一定要感谢我的家人:Meghan,Shannon和Joan。他们在不知不觉中以各种方式对此书作出了贡献。这本书是献给他们的。
自从计算机被发明以来,人们就想知道它们能不能学习。如果我们理解了计算机学习的内在机制,即怎样使它们根据经验来自动提高,那么影响将是空前的。想象一下,在未来,计算机能从医疗记录中学习,获取治疗新疾病的最有效方法;住宅管理系统分析住户的用电模式,以降低能源消耗;个人软件助理跟踪用户的兴趣,并为其选择最感兴趣的在线新闻……。对计算机学习的成功理解将开辟出全新的应用领域,并使其计算能力和可定制性上升到新的层次。同时,透彻地理解机器学习的信息处理算法,也会有助于更好地理解人类的学习能力。 目前,我们还不知道怎样使计算机的学习能力和人类相媲美。然而一些针对特定学习任务的算法已经产生。关于学习的理论认识已开始逐步形成。人们开发出了很多实践性的计算机程序来实现不同类型的学习,一些商业化的应用也已经出现。例如对于语音识别这样的课题,至今为止,基于机器学习的算法明显胜过其他的方法。在数据挖掘领域,机器学习算法理所当然地得到应用,从包含设备维护记录、借贷申请、金融交易、医疗记录等类似信息的大型数据库中发现有价值的信息。随着对计算机的理解的日益成熟,机器学习必将在计算机科学和技术中扮演越来越重要的角色! 通过一些特定的成就我们可以看到这门技术的现状:计算机已经能够成功地识别人类的讲话(Waibel 1989;Lee 1989);预测肺炎患者的康复率(Cooper et al. 1997);检测信用卡欺诈;在高速公路上驾驶(Pomerleau 1989);以接近人类世界冠军的水平对弈西洋双陆棋① 表1-1 机器学习的一些成功应用这样的游戏(Tesauro 1992, 1995)。已有了很多理论成果能够对训练样例数量、假设空间大小、和学得假设错误率这三者间的基本关系进行刻画。我们正在开始获取人类和动物学习的原始模型,用以理解它们和计算机的学习算法间的关系(例如,Laird et al. 1986;Anderson 1991;Qin et al. 1992;Chi & Bassock 1989;Ahn & Brewer 1993)。在过去的十年中无论是应用、算法、理论,还是生物系统的研究都取得了值得注目的进步。机器学习最近的几种应用被归纳在表1-1中。Langley & Simon(1995)以及Rumelhart et al.(1994)调查了机器学习的一些其他应用。
本书针对机器学习这个领域,描述了多种学习范型、算法、理论以及应用。机器学习从本质上是一个多学科的领域。它吸取了人工智能、概率统计、计算复杂性理论、控制论、信息论、哲学、生理学、神经生物学等学科的成果。表1-2归纳了这些学科中影响机器学习的关键思想。本书的素材基于不同学科的成果,然而读者不必精通每一个学科。来自这些学科的关键理论将使用非专业的词汇讲解,其中不熟悉的术语和概念会在需要时加以介绍。
第2章包括基于符号和逻辑表示的概念学习。也讨论了假设的一般到特殊偏序结构,以及学习中引入归纳偏置的必要性。
• 第3章包括决策树学习和过度拟合训练数据的问题。这一章也剖析了奥坎姆剃刀——该原则建议在与数据一致的假设中选择最短假设。
• 第4章包括人工神经网络的知识,特别是研究已久的反向传播算法,以及梯度下降的一般方法。这一章包含一个详细的基于神经网络的人脸识别实例,该例子需要的数据和算法可以在万维网上得到。
• 第5章给出了来自统计和估计理论的基础概念,着重于使用有限的样本数据评估假设的精度。这一章包含了用于估计假设精度的置信空间,和对不同学习算法的精度进行比较的方法。
• 第6章介绍机器学习的贝叶斯观点。既包括了使用贝叶斯分析刻画非贝叶斯学习算法,又包括了直接处理概率的贝叶斯算法。这一章包括一个应用贝叶斯分类器来分类文本文档的详细例子,所需的数据和软件可以在万维网上得到。
• 第7章覆盖了计算学习理论,包括可能近似正确(Probably Approximately Correct,PAC)学习模型和出错界限(Mistake-Bound)学习模型。本章讨论了联合多个学习方法的加权多数(Weighted Majority)算法。
• 第8章描述了基于实例的学习方法,包括最近邻学习,局部加权回归,和基于案例的推理。
• 第9章讨论了根据生物进化建模的学习算法,包括遗传算法和遗传编程。
• 第10章覆盖了一组学习规则集合的算法,包括学习一阶Horn子句的归纳逻辑编程方法。
• 第11章包含了基于解释的学习,即一种使用以前的知识解释观察到的实例,然后根据这些解释泛化的学习方法。
• 第12章讨论了把以前的近似知识结合进现有的训练数据中以提高学习精度的方法。在其中符号算法和神经网络算法都有讨论。
• 第13章讨论了增强学习。这种方法是为了处理来自训练信息中的间接的或延迟的反馈。本章前面提及的下棋学习程序是增强学习的一个简单的例子。