机器学习
什么是机器学习?
机器学习是近20多年兴起的一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与统计推断学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。很多推论问题属于无程序可循难度,所以部分的机器学习研究是开发容易处理的近似算法。
机器学习的定义?
机器学习有下面几种定义:
- “机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能”。
- “机器学习是对能通过经验自动改进的计算机算法的研究”。
- “机器学习是用数据或以往的经验,以此优化计算机程序的性能标准。”
- 英文定义:A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.
机器学习应用
- 数据挖掘
- 计算机视觉
- 自然语言处理
- 生物特征识别
- 搜索引擎
- 医学诊断
- 检测信用卡欺诈
- 证券市场分析
- DNA序列测序
- 语音和手写识别
- 战略游戏
- 机器人
机器学习的发展历程
- “黑暗时代”,人工智能的诞生(1943年~1956年)
- Warren McCulloch和Walter Pitts在1943年发表了人工智能领域的开篇之作,提出了人工神经网络模型。
- John von Neumann。他在1930年加入了普林斯顿大学,在数学物理系任教,和阿兰·图灵是同事。
- Marvin Minsky和Dean Edmonds建造第一台神经网络计算机。
- 1956年:John McCarthy从普林斯顿大学毕业后去达特茅斯学院工作,说服了Marvin Minsky和Claude Shannon在达特茅斯学院组织一个暑期研讨会,召集了对机器智能、人工神经网络和自动理论感兴趣的研究者,参加由IBM赞助的研讨会。
- 新的方向:
- 集成学习
- 可扩展机器学习(对大数据集、高维数据的学习等)
- 强化学习
- 迁移学习
- 概率网络
- 深度学习
- 国内外的研究者
- M. I. Jordan
- Andrew Ng
- Tommi Jaakkola
- David Blei
- Eric Xing。。。
- D.Koller
- 2001年IJCAI计算机与思维奖:TerryWinograd、David Marr、Tom Mitchell、RodneyBrooks等人之后的第18位获奖者
- Peter L. Bartlett
- J. D. Lafferty
- 国内:李航,周志华, 杨强,王晓刚,唐晓鸥,唐杰,刘铁岩,何晓飞,朱筠,吴军,
张栋,戴文渊,余凯,邓力,孙健
- M. I. Jordan
机器学习和数据挖掘的关系
- 机器学习是数据挖掘的重要工具。
- 数据挖掘不仅仅要研究、拓展、应用一些机器学习方法,还要通过许多非机器学习技术解决数据仓储、大规模数据、数据噪音等等更为实际的问题。
- 数据挖掘的涉及面更宽,常用在数据挖掘上的方法通常只是“从数据学习”,然则机器学习不仅仅可以用在数据挖掘上,一些机器学习的子领域甚至与数据挖掘关系不大,例如增强学习与自动控制等等。
- 数据挖掘试图从海量数据中找出有用的知识。
- 大体上看,数据挖掘可以视为机器学习和数据库的交叉,它主要利用机器学习界提供的技术来分析海量数据,利用数据库界提供的技术来管理海量数据。
机器学习的一个形象描述
为什么要研究大数据机器学习?
- 例“尿布→啤酒”关联规则
- 实际上,在面对少量数据时关联分析并不难,可以直接使用统计学中有关相关性的知识,这也正是机器学习界没有研究关联分析的一个重要原因。
- 关联分析的困难其实完全是由海量数据造成的,因为数据量的增加会直接造成挖掘效率的下降,当数据量增加到一定程度,问题的难度就会产生质变,
- 例如,在关联分析中必须考虑因数据太大而无法承受多次扫描数据库的开销、可能产生在存储和计算上都无法接受的大量中间结果等。
机器学习相关学术期刊和会议
- 机器学习
- 学术会议:NIPS、ICML、ECML和COLT,
- 学术期刊:《Machine Learning》和《Journal of Machine Learning Research》
- 数据挖掘
- 学术会议:SIGKDD、ICDM、SDM、PKDD和PAKDD
- 学术期刊:《Data Mining and Knowledge Discovery》和《IEEE Transactions on Knowledge and Data Engineering》
- 人工智能
- 学术会议:IJCAI和AAAI、
- 数据库
- 学术会议:SIGMOD、VLDB、ICDE,
- 其它一些顶级期刊如
- 《Artificial Intelligence》、
- 《Journal of Artificial Intelligence Research》、
- 《IEEE Transactions on Pattern Analysis and Machine Intelligence》、
- 《Neural Computation》等也经常发表机器学习和数据挖掘方面的论文
机器学习和统计学习
维基百科:
机器学习是近20多年兴起的一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。
机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与统计推断学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。很多推论问题属于无程序可循难度,所以部分的机器学习研究是开发容易处理的近似算法。
- Brendan O’Connor的博文Statistics vs. Machine Learning, fight!,初稿是08年写的,或许和作者的机器学习背景有关,他在初稿中主要是贬低了统计学,思想和有点类似,认为机器学习比统计学多了些Algorithm Modeling方面内容,比如SVM的Max-margin,决策树等,此外他认为机器学习更偏实际。但09年十月的时候他转而放弃自己原来的观点,认为统计才是real deal: Statistics, not machine learning, is the real deal, but unfortunately suffers from bad marketing.
- 研究方法差异
- 统计学研究形式化和推导
- 机器学习更容忍一些新方法
- 维度差异
- 统计学强调低维空间问题的统计推导(confidence intervals, hypothesis tests, optimal estimators)
- 机器学习强调高维预测问题
- 统计学和机器学习各自更关心的领域:
- 统计学: survival analysis, spatial analysis, multiple testing, minimax theory, deconvolution, semiparametric inference, bootstrapping, time series.
- 机器学习: online learning, semisupervised learning, manifold learning, active learning, boosting.
统计学习和机器学习(专业术语)
统计学习
-
统计学习的对象
- data :计算机及互联网上的各种数字、文字、图像、视频、音频数据以及它们的组合。
- 数据的基本假设是同类数据具有一定的统计规律性。
-
统计学习的目的
- 用于对数据(特别是未知数据)进行预测和分析。
-
统计学习的方法
- 分类:
- Supervised learning
- Unsupervised learning
- Semi-supervised learning
- Reinforcement learning
- 监督学习:
- 训练数据 training data
- 模型 model ------- 假设空间 hypothesis
- 评价准则 evaluation criterion -------- 策略 strategy
- 算法 algorithm
- 分类:
-
统计学习的研究:
- 统计学习方法
- 统计学习理论(统计学习方法的有效性和效率和基本理论)
- 统计学习应用
监督学习
- Instance,feature vector,feature space
- 输入实例x的特征向量:
x = ( x ( 1 ) , x ( 2 ) , . . . , x ( i ) , . . . , x ( n ) ) T x = (x^{(1)},x^{(2)},...,x^{(i)},...,x^{(n)})^T x=(x(1),x(2),...,x(i),...,x(n))T - x ( i ) x^{(i)} x(i) 与 x i x_{i} xi 不同,后者表示多个输入变量中的第i个
x i = ( x i ( 1 ) , x i ( 2 ) , . . . , x i ( i ) , . . . , x i ( n ) ) T x_{i} = (x_{i}^{(1)},x_{i}^{(2)},...,x_{i}^{(i)},...,x_{i}^{(n)})^T xi=(xi(1),xi(2),...,xi(i),...,xi(n))T - 训练集:
T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) } T = \{ {(x_{1},y_{1}),(x_{2},y_{2}),...,(x_{N},y_{N})}\} T={ (x1,y1),(x2,y2),...,(xN,yN)} - 输入变量和输出变量:
- 分类问题、回归问题、标注问题
联合概率分布
- 假设输入与输出的随机变量X和Y遵循联合概率分布P(X,Y)
- P(X,Y)为分布函数或分布密度函数
- 对于学习系统来说,联合概率分布是未知的,
- 训练数据和测试数据被看作是依联合概率分布P(X,Y)独立同分布产生的。
假设空间
- 监督学习目的是学习一个由输入到输出的映射,称为模型
- 模式的集合就是假设空间(hypothesis space)
- 概率模型:条件概率分布P(Y|X), 决策函数:Y=f(X)
问题的形式化
无监督学习
强化学习
- 无模型(model-free)
- 基于策略(policy-based):求解最优策略π*
- 基于价值(value-based):求解最优价值函数
- 有模型(model-based)
- 通过学习马尔可夫决策过程的模型,包括转移概率函数和奖励函数
- 通过模型对环境的反馈进行预测
- 求解价值函数最大的策略π*
半监督学习
- 少量标注数据,大量未标注数据
- 利用未标注数据的信息,辅助标注数据,进行监督学习
- 较低成本
主动学习
- 机器主动给出实例,教师进行标注
- 利用标注数据学习预测模型
统计学习
-
按算法分类:
- 在线学习(online learning)
- 批量学习(batch learning)
-
按技巧分类:
- 贝叶斯学习(Bayesian learning)
- 核方法(Kernel method)
-
使用核函数表示和学习非线性模型,将线性模型学习方法扩展到非线性模型的学习
-
不显式地定义输入空间到特征空间的映射,而是直接定义核函数,即映射之后在特征空间的内积
-
假设x1,x2是输入空间的任意两个实例,内积为<x1, x2>,输入空间到特征空间的映射为φ,核方法在输入空间中定义核函数 K(x1, x2),使其满足 K(x1, x2) = < φ(x1), φ(x2)>
-
- 贝叶斯学习(Bayesian learning)
统计学习三要素
-
策略:经验风险最小化与结构风险最小化
- 经验风险最小化最优模型
m i n f ∈ F 1 N ∑ k = 1 N L ( y i , f ( x i ) ) min_{f\in F} \tfrac{1}{N}\sum_{k=1}^N L(y_{i},f(x_{i})) minf∈FN1k=1∑NL(yi,f(xi))
- 经验风险最小化最优模型
-
当样本容量很小时,经验风险最小化学习的效果未必很好,会产生“过拟合over-fitting”
-
结构风险最小化 structure risk minimization,为防止过拟合提出的策略,等价于正则化(regularization),加入正则化项regularizer,或罚项 penalty term:
R r e g ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) R_{reg}(f) = \tfrac{1}{N} \sum_{i=1}^{N}L(y_{i},f(x_{i}))+ \lambda J(f) Rreg(f)=N1i=1∑NL(yi,f(xi))+λJ(f) -
求最优模型就是求解最优化问题:
m i n f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) min_{f\in F} \tfrac{1}{N} \sum_{i=1}^{N}L(y_{i},f(x_{i}))+ \lambda J(f) minf