- 在线时间
- 1302 小时
- 最后登录
- 2026-4-11
- 注册时间
- 2022-2-27
- 听众数
- 34
- 收听数
- 0
- 能力
- 90 分
- 体力
- 175750 点
- 威望
- 9 点
- 阅读权限
- 255
- 积分
- 55577
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1837
- 主题
- 1208
- 精华
- 4
- 分享
- 0
- 好友
- 35
TA的每日心情 | 奋斗 2025-12-21 09:15 |
|---|
签到天数: 626 天 [LV.9]以坛为家II 网络挑战赛参赛者 - 自我介绍
- 我是普大帝,拼搏奋进,一往无前。
 |
序 言7 \& W- N0 Z* c
机器学习这门学科所关注的问题是:计算机程序如何随着经验积累自动提高性能?近年来,机器学习被成功地应用于很多领域,从检测信用卡交易欺诈的数据挖掘程序,到获取用户阅读兴趣的信息过滤系统,再到能在高速公路上自动行驶的汽车。同时,这个学科的基础理论和算法也有了重大的进展。这本教材的目标是展现机器学习中核心的算法和理论。机器学习从很多学科吸收了成果和概念,包括统计学、人工智能、哲学、信息论、生物学、认知科学、计算复杂性和控制论等。我相信,研究机器学习的最佳途径是从这些学科的观点看待机器学习,并且以此来理解问题的背景、算法以及其中隐含的假定。这些在以往很难做到,因为在这一领域缺少包容广泛的原始资料。这本书的主要目的就是提供这样的一份资料。由于素材的多学科性,这本书不要求读者具有相应的知识背景,而是在必要时介绍其他一些学科的基本概念,如统计学、人工智能、信息论等。介绍的重点是与机器学习关系最密切的那些概念。本书可以作为计算机科学与工程、统计学和社会科学等专业的大学生或研究
) n( p' L7 v9 B0 c2 O) Z: c* |8 D生的教材,也可作为软件研究人员或从业人员的参考。指导这本书写作的两条原则为:1.它是在校大学生可以理解的;2.它应该包含博士生在开始研究机器学习前要掌握的内容。指导这本书写作的第三条原则是:它应该体现理论和实践两者的平衡。机器学习理论致力于回答这样的问题“学习性能是怎样随着给定的训练样例的数量变化的?”和“对于不同类型的学习任务,哪个学习算法最适合?”利用来自统计学、计算复杂性和贝叶斯分析的理论成果,这本书讨论了这一类理论问题。同时本书也覆盖了很多实践方面的内容:介绍了这一领域的主要算法,并阐明了算法的运行过程。一些算法的实现和数据可以在互联网上通过网址 http://www.cs.cmu.edu/~tom/mlbook.html 得到。其中包括用于人脸识别的神经网络、用于信贷分析的决策树学习、及分析文本文档的贝叶斯分类器各自的源代码和所需数据。我很感谢那些帮助我创建这些在线资源的同事,包括 Jason Rennie、PaulHsiung、Jeff Shufelt、Matt Glickman、Scott Davies、Joseph O’Sullivan、Ken Lang、Andrew McCallum 和ThorstenJoachims。$ f! d. b2 Q+ S8 \ E# u
. r G5 u% L1 s2 \: o; p. G
绪论% P1 ^4 I) \2 }& |0 ?' K
自从计算机被发明以来,人们就想知道它们能不能学习。如果我们理解了计算机学习的内在机制,即怎样使它们根据经验来自动提高,那么影响将是空前的。想象一下,在未来,计算机能从医疗记录中学习,获取 治疗新疾病的最有效方法;住宅管理系统分析住户的用电模式,以降低能源消耗;个人软件助理跟踪用户的兴趣,并为其选择最感兴趣的在线新闻……。对计算机学习的成功理解将开辟出全新的应用领域,并使其计算能力和可定制性上升到新的层次。同时,透彻地理解机器学习的信息处理算法,也会有助于更好地理解人类的学习能力。
6 U7 I' Z" e4 F7 p: P/ w' V目前,我们还不知道怎样使计算机的学习能力和人类相媲美。然而一些针对特定学习任务的算法已经产生。关于学习的理论认识已开始逐步形成。人们开发出了很多实践性的计算机程序来实现不同类型的学习,一些商业化的应用也已经出现。例如对于语音识别这样的课题,至今为止,基于机器学习的算法明显胜过其他的方法。在数据挖掘领域,机器学习算法理所当然地得到应用,从包含设备维护记录、借贷申请、金融交易、医疗记录等类似信息的大型数据库中发现有价值的信息。随着对计算机的理解的日益成熟,机器学习必将在计算机科学和技术中扮演越来越重要的角色!4 w% A, @# C1 I0 B& d9 z
. r! _) ]7 M: C; j2 B
通过一些特定的成就我们可以看到这门技术的现状:计算机已经能够成功地识别人类的讲话(Waibel 1989;Lee 1989);预测肺炎患者的康复率(Cooper et al. 1997);检测信用卡欺诈;在高速公路上驾驶(Pomerleau 1989);以接近人类世界冠军的水平对弈西洋双陆棋①表 表 1-1 机器学习的一些成功应用这样的游戏(Tesauro 1992, 1995)。已有了很多理论成果能够对训练样例数量、假设空间大小、和学得假设错误率这三者间的基本关系进行刻画。我们正在开始获取人类和动物学习的原始模型,用以理解它们和计算机的学习算法间的关系(例如,Laird et al. 1986;Anderson1991;Qin et al. 1992;Chi & Bassock 1989;Ahn & Brewer 1993)。在过去的十年中无论是应用、算法、理论,还是生物系统的研究都取得了值得注目的进步。机器学习最近的几种应用被归纳在表 1-1 中。Langley & Simon(1995)以及Rumelhart et al.(1994)调查了机器学习
/ Q! }8 M& P: C- J- g3 _# `( M的一些其他应用。4 f3 Z" t) A. ` y# O: k4 y, t
• 学习识别人类的讲话
( H2 M/ s/ j5 Y' C所有最成功的语音识别系统都使用了某种形式的机器学习技术。例如,Sphinx 系统(参见Lee 1989)可学习特定讲话者的语音识别策略,从检测到的语音信号中识别出基本的音素(phoneme)和单词。神经网络学习方法(例如 Waibel et al. 1989)和隐式 马尔可夫模型(hiddenMarkov model)的学习方法(例如 Lee 1989)在语音识别系统中也非常有效,它们可以让系统自动适应不同的讲话者、词汇、麦克风特性和背景噪音等等。类似的技术在很多信号解释课题中有应用潜力。
6 t4 h4 U0 t9 x h# g• 学习驾驶车辆
% |( u. p( }0 ^& C& l7 |
: u, o' B5 m' S" D3 K机器学习方法已被用于训练计算机控制的车辆,使其在各种类型的道路上正确行驶。例如ALVINN 系统(Pomerleau 1989)已经利用它学会的策略独自在高速公路的其他车辆之间奔驰,以 70 英里的时速共行驶了 90 英里。类似的技术可能在很多基于传感器的控制问题中得到应用。7 J& P% ?* q; l! \" S
• 学习分类新的天文结构5 `, K" k G% {( V T; c% C+ ^
机器学习方法已经被用于从各种大规模的数据库中发现隐藏的一般规律。例如,决策树学习算法已经被美国国家航空和航天局(NASA)用来分类天体,数据来自第二帕洛马天文台太空调查(Fayyad et al. 1995)。这一系统现在被用于自动分类太空调查中的所有天体,其中包含了 3T 字节的图像数据。
: y+ V; B( p3 [" G p5 i5 W" L• 学习以世界级的水平对弈西洋双陆棋& c" h* [7 D+ {# N, \: s9 ]! N
最成功的博弈类(如西洋双陆棋)计算机程序是基于机器学习算法的。例如,世界最好的西洋双陆棋程序TDGammon(Tesauro 1992, 1995)是通过一百万次以上的和自己对弈来学习其策略的。现在它的水平能与人类的世界冠军相当。类似的技术被应用于许多实际问题,其中需要高效地搜索庞大的搜索空间。本书针对机器学习这个领域,描述了多种学习范型、算法、理论以及应用。机器学习从本质上是一个多学科的领域。它吸取了人工智能、概率统计、计算复杂性理论、控制论、信息论、哲学、生理学、神经生物学等学科的成果。表 1-2 归纳了这些学科中影响机器学习的关键思想。本书的素材基于不同学科的成果,然而读者不必精通每一个学科。来自这些学科的关键理论将使用非专业的词汇讲解,其中不熟悉的术语和概念会在需要时加以介绍。
A+ g% Y, Y/ b表 1-2 一些学科和它们对机器学习的影响
+ |- s' n# B1 H: F7 d0 @6 `/ }1 d# `• 人工智能
& m' p; N6 K6 a& N" }" A学习概念的符号表示。作为搜索问题的机器学习。作为提高问题求解能力途径的学习。使用先验的知识和训练数据一起引导学习。- P% Z: Z- H- t1 m
• 贝叶斯方法& S/ w4 d; f8 a
作为计算假设概率的基础的贝叶斯法则。朴素贝叶斯分类器。估计未观测到变量的值的算法。7 P+ ~$ a; x5 z+ W! i# I" E B! p
• 计算复杂性理论8 x* e% C5 i1 H( y4 M+ I- X. }
不同学习任务中固有的复杂性的理论边界,以计算量、训练样例数量、出错数量等衡量。
! }1 L6 Y; R; u. }; g, v• 控制论
2 q) ]& \$ _2 f为了优化预定目标,学习对各种处理过程进行控制,学习预测被控制的过程的下一个状态。
& ~. h2 K1 C% g5 q• 信息论1 T- O' Y+ Y4 B4 I2 X, O. N
熵和信息内容的度量。学习的最小描述长度方法。编码假设时,它的最佳编码和与最佳训练序列的关系。
1 N7 y. |3 N, c" ^* Z• 哲学2 R7 Z7 \9 E. P* [: J2 w3 K3 T$ A7 u
“奥坎姆的剃刀”(Occam’s razor)①
2 R1 h$ J1 ?) {( z" E+ M/ v4 l• 心理学和神经生物学: z3 P+ f% X! E5 n
:最简单的假设是最好的。从观察到的数据泛化的理由分析。实践的幂定律(power law of practice),该定律指出对于很大范围内的学习问题,人们的反应速度随着实践次数的幂级提高。激发人工神经网络的学习模式的神经生物学研究。; l: z* B* N) L" b7 ?
• 统计学
& q. z& |0 h( k5 E; _: ]* W e. _6 p! |4 R7 H
在估计有限数据样本上的假设精度时出现的误差(例如偏差和方差)的刻画。置信区间,
9 c4 G+ M; L0 M$ U统计检验。
+ D) y/ S" H( t4 Q/ e) m% J* S1.1 学习问题的标准描述
2 s( P4 b. n" ^9 Y L; P8 w让我们从几个实际的学习任务开始研究机器学习。根据本书的目的,我们给学习一个宽广的定义,以使其包括任何计算机程序通过经验来提高某任务处理性能的行为。更准确地讲,定义: 对于某类任务 T 和性能度量 P,如果一个计算机程序在 T 上以 P 衡量的性能随着经验 E 而自我完善,那么我们称这个计算机程序在从经验 E 学习。4 {" h% x8 q0 B% |$ y
例如,对于学习下西洋跳棋的计算机程序,它可以通过和自己下棋获取经验,它担负的任务是参与西洋跳棋对弈,它的性能用它赢棋的能力来衡量。通常,为了很好地定义一个学习问题,我们必须明确这样三个特征:任务的种类;衡量任务提高的标准;经验的来源。4 \1 s1 m2 A$ t9 d
• 任务 T:下西洋跳棋! X! q( @" [ ?+ F( z) N; H7 t3 n
• 性能标准 P:比赛中击败对手的百分比
, n8 {, E3 S4 i9 @• 训练经验 E:和自己进行对弈
& i8 }# E+ Z1 ?. a我们可以用以上方法定义很多学习问题,例如学习手写识别、学习自动驾驶机器人汽车。手写识别学习问题:
$ R3 ~+ w/ t" b c• 任务 T:识别和分类图像中的手写文字* {# e" K* Q) K" V" Q# L
• 性能标准 P:分类的正确率# C% J, ?8 ]# P3 f( X+ {2 j* q) u
• 训练经验 E:已知分类的手写文字数据库
+ U2 R8 s: ]8 X' \0 N4 h+ s. F1 Y# E机器人驾驶学习问题:
' M5 ~# L) u9 t$ t- X$ d! b• 任务 T:通过视觉传感器在四车道高速公路上驾驶3 y& u! i2 c1 s+ @) \
• 性能标准 P:平均无差错行驶里程(差错由人类的监督裁定)
1 Q; W+ o) X, [+ ?9 F' J• 训练经验 E:注视人类驾驶时录制的一系列图像和驾驶指令0 `$ O9 Y' I& U8 g( W, d
! k# w, S V# O. \) p8 i* K; a3 u2 F
" j0 |7 \" b! v- U* Y7 ^ |
zan
|