920 likes | 1.12k Views
第 10 章 机器学习方法. 一、常见学习方法分类,依据学习策略划分 二、常见学习方法 分类 , 依据 获取知识的类型 划分 三、两种归纳学习方法: 概念学习法、决策树学习法. 第 10 章 机器学习方法. 一、常见学习方法分类 ( 根据学习策略 ) 1 机械式学习 : 死记式学习 , 能够直接体现它的特点,这是一种最简单的,最原始的学习方法,也是机器的强项,人的弱项。 2 指导式学习 : 这种学习方式是由外部环境向系统提供一般性的指示或建议,系统把它们具体地转化为细节知识并送入知识库中,在学习过程中要反复对知识进行评价,使其不断完善。. 机器学习方法.
E N D
第10章 机器学习方法 一、常见学习方法分类,依据学习策略划分 二、常见学习方法分类,依据获取知识的类型划分 三、两种归纳学习方法:概念学习法、决策树学习法
第10章 机器学习方法 一、常见学习方法分类(根据学习策略) 1 机械式学习:死记式学习,能够直接体现它的特点,这是一种最简单的,最原始的学习方法,也是机器的强项,人的弱项。 2 指导式学习:这种学习方式是由外部环境向系统提供一般性的指示或建议,系统把它们具体地转化为细节知识并送入知识库中,在学习过程中要反复对知识进行评价,使其不断完善。
机器学习方法 3 类比学习:类比也就是通过对相似事物进行比较所进行的一种学习。它的基础是类比推理,也就是把新事物和记忆中的老事物进行比较,如果发现它们之间有些属性(过程)是相同的,那么可以(假定地)推断出它们的另外一些属性(过程)也是相同的. 例如 “桥 bridge”概念建立、“狗”与“狼”概念的建立等。已知“偶数×偶数=偶数”,用类比的方法求证“奇数×奇数=奇数”。 4 解释学习:它不是通过归纳或类比进行学习,而是通过运用相关的领域知识及一个训练实例来对某一目标概念进行学习,并最终生成这个目标概念的一般描述,这个一般描述是一个可形式化表示的一般性知识。
机器学习方法 二、常见学习方法(获取知识的类型): 1 归纳学习:(概念学习、决策树) 2 基于范例的学习 3 人工神经网络 4 统计学习(支持向量机) 5 遗传算法(马尔柯夫模型) 高级人工智能
1 归纳学习方法 归纳学习是一种符号学习,在已知正例,反例的基础上归纳出一个通用的概念,归纳学习能得到新的概念,创立新的规则,发现新的理论。 归纳学习并不“保真”,是“保假”的;是从特殊到一般,而演绎是保真的。 如“麻雀会飞”,“燕子会飞”等归纳“鸟会飞(鸵鸟不会飞)”. 归纳学习依赖于经验数据,因此又称为经验学习. 归纳学习的基本操作:泛化,例化; 泛化- 扩展一假设的语义信息,使其能包含更多的正例,应用于更多的情况; 例化-用于限制概念描述的应用范围。
选择例子 (例化) 实例空间 规则空间 解释过程 (泛化) 归纳学习的双空间模型 归纳学习方法
概念学习 给定某一类别的若干正例和反例,从中获得该类别的一般定义——概念。 搜索的观点 在预定义的假设空间中搜索假设,使其与训练样例有最佳的拟合。 例如“云计算Cloud Computing”,“物联网 The Internet of things”,“社会计算 Social Computing” ,“码农Coding Farmer(s)”等。 单概念/多概念学习; 1.1 概念学习
概念学习 许多机器学习涉及到从特殊训练样例中得到一般概念。 概念,可被看作一个对象或事件集合,它是从更大的集合中选取的子集,或在这个较大集合中定义的布尔函数。 概念学习问题的定义 给定一个样例集合以及每个样例是否属于某个概念的标注,怎样推断出该概念的一般定义。又称从样例中逼近布尔函数。 概念学习是指从有关某个布尔函数的输入输出训练样例中推断出该布尔函数。
概念学习 目标概念:“运动员进行水上运动项目的日子”,表示为布尔函数EnjoySport 任务目的:基于某天的有关属性,预测EnjoySport函数的值 任务的学习空间:样例集,每个样例表示为属性的集合 概念学习例子
术语定义 目标概念 c 训练样例 x 训练样例集 D={x1,x2,...xn} 正例(yes),目标概念成员 反例(no),非目标概念成员 假设 h 假设集 H={h1,h2...hn} 机器学习的目标就是寻找一个假设h,使得对所有的训练样例x,都有 h(x)=c(x) 假设与概念一致
概念学习任务(2) Example Outlook AirTemp Humidity Wind Water Forecast EnjoySport Day 1 Sunny Warm Normal Strong Warm Same Yes Day 2 Warm High Strong Warm Same Yes Sunny Day 3 Rainy Cold High Warm Change No Strong Day 4 Sunny Warm High Strong Cool Change Yes Day 5 Rainy Warm Normal Weak Warm Change No 目标概念EnjoySport的训练样例 D={Day1,Day2,...Dayn} 每个训练样例 x有六个属性
概念学习任务(3) 表示假设的形式 一个简单的形式,具体实例的各属性约束的合取式 令每个假设为6个约束(或变量)的向量,每个约束对应一个属性可取值范围,可以为 ?任意本属性可接收的值 明确指定的属性值;如Cold, High。 不接受任何值 假设的例子 <?, Cold, High, ?, ?, ?> //气温冷,湿度偏高 <?, ?, ?, ?, ?, ?> // 所有的样例都是正例,没有指定任何条件 < , , , , , > // 所有的样例都是反例,任何条件都满足不了
概念学习任务(4) EnjoySport概念学习的任务 已知 实例x 每个实例x由6个属性描述,每个属性的取值范围已确定 假设集H 每个假设h描述为6个属性的取值约束的合取 目标概念c 布尔函数,变量为实例 训练样例集D 目标函数(或目标概念)的正例和反例 求解 H中的任一假设h,使对于任意实例x,h(x)=c(x)
归纳学习过程 归纳学习 从特殊的训练样例中得到普遍的规律 归纳 保证输出的假设能与训练样例相拟合 归纳假设的一个基本假定 对于未见实例最好的假设就是与训练数据最佳拟合的假设 归纳学习假设 任一假设如果在足够大的训练样例集中很好地逼近目标函数,它也能在未见实例中很好地逼近目标函数。
假设从一般到特殊的转化 假设的一般到特殊 考虑下面两个假设 h1=<sunny, ?, ?, Strong, ?, ?> h2=<Sunny, ?, ?, ?, ?, ?> 任何被h1划分为正例的实例都会被h2划分为正例,因此h2比h1更一般(h1比h2更特殊)。 利用这个关系,无需列举所有假设,就能在无限的假设空间中进行彻底的搜索
假设从一般到特殊的转化(2) 关系“更一般”的精确定义 任给实例x和假设h,x满足h,当且仅当h(x)=1 令hj和hk是在X上定义的布尔函数,称hj比hk更一般,当且仅当 (xX)[(hk(x)=1)(hj(x)=1)] 记为hjmore_general_than_or_equal_to hk, 或hjg hk 显然“g “ 是一种关系中的一类“偏序关系”。 (自反、反对称、可传递;在某一集合上可能存在四类八种特殊元素)
假设从一般到特殊的转化(3) “更一般”的严格情形 hj >g hk,当且仅当,(hjg hk) (hkg hj) 反对称性 “更特殊”关系的定义 hjg hk,当且仅当,hkg hj 以EnjoySport为例说明上面的定义 hk=<sunny, ?, ?, Strong, ?, ?> hj =<Sunny, ?, ?, ?, ?, ?> hj >g hk hj “更一般” hk hkg hj hk “更特殊” hj
概念学习的方法Find-S算法:寻找极大特殊假设(1)概念学习的方法Find-S算法:寻找极大特殊假设(1) 使用more_general_than偏序的搜索算法 从H中最特殊假设开始,然后在假设覆盖正例失败时将其一般化 Find-S算法 将h初始化为H中最特殊假设 对每个正例x 对h的每个属性约束ai 如果x满足ai ,那么不做任何处理 否则 将h中ai替换为x满足的另一个更一般约束 输出假设h
Find-S:寻找极大特殊假设(2) Find-S算法在例子EnjoySport上的应用 h<, , , , , > h<Sunny, Warm, Normal, Strong, Warm, Same> h<Sunny, Warm, ?, Strong, Warm, Same> 遇到反例,h不变(因为h已经能够正确地识别反例) h<Sunny, Warm, ?, Strong, ?, ?>极大特殊假设 Example Outlook AirTemp Humidity Wind Water Forecast EnjoySport Day 1 Sunny Warm Normal Strong Warm Same Yes Day 2 Warm High Strong Warm Same Yes Sunny Day 3 Rainy Cold High Warm Change No Strong Day 4 Sunny Warm High Strong Cool Change Yes Day 5 Rainy Warm Normal Weak Warm Change No
Find-S:寻找极大特殊假设(3) Find-S算法演示了一种利用more_general_than偏序来搜索假设空间的方法,沿着偏序链,从较特殊的假设逐渐转移到较一般的假设。因此,每一步得到的假设都是在那一点上与训练样例一致的最特殊的假设。 Find-S的重要特点:对以属性约束的合取式描述的假设空间H,保证输出为H中与正例一致的最特殊的假设。 存在的问题 是否收敛到了正确的目标概念? 为什么要用最特殊的假设? 训练样例是否相互一致?学习方法的健壮性 如果有多个极大特殊假设怎么办?多概念下的学习?
概念学习的方法:变型空间和候选消除算法 候选消除算法概述 概念学习的另一种方法,候选消除算法(Candidate-Elimination) Find-S算法的不足,输出的假设只是H中能够拟合训练样例的多个假设中的一个; 候选消除算法输出与训练样例一致的所有假设的集合; 候选消除算法在描述这一集合时不需要明确列举所有成员; 利用more_general_than偏序结构,可以维护一个一致假设集合表示; 候选消除算法可用于启发式搜索控制规则来表示; 候选消除算法的缺点,容错性能差;
变型空间和候选消除算法(2) “一致”的定义 一个假设h与训练样例集合D一致,当且仅当对D中每一个样例 <x,c(x)>都有h(x)=c(x), 即: Consistent(h,D)(<x,c(x)>D)h(x)=c(x) “一致”与“满足”的关系; 变型(版本)空间VS(Version Space) 与训练样例一致的所有假设组成的集合 表示了目标概念的所有合理的变型(版本) 关于H和D的变型空间,记为VSH,D,是H中与训练样例D一致的所有假设构成的子集: VSH,D={hH|Consistent(h,D)}
变型空间和候选消除算法(3) 先列表后消除法 能表示变型空间的一种方法是列出其所有成员; 变型空间VS包含H中所有假设的列表; 对每个训练样例<x,c(x)>,从变型空间中移除所有h(x)c(x)的假设; 输出VS中的假设列表; 优点 保证得到所有与训练数据一致的假设; 缺点 非常繁琐地列出H中的所有假设,大多数实际的假设空间无法做到。
变型空间和候选消除算法(4) 变型空间的更简洁表示 变型空间被表示为它的极大一般g和极大特殊s的成员; 这些成员形成了一般和特殊边界的集合,这些边界在整个偏序结构中划分出变型空间; g VSH,D s
没有描述 更一般 G S 训练例子 更特殊 变型空间 Version Space 变型空间方法的初始G集是最上面的一个点(最一般的概念),初始S集是最下面的直线上的点(训练正例),初始 H集是整个规则空间。 在搜索过程中,G 集逐步下移(进行特例化),S 集逐步上移(进行泛化),H 逐步缩小。最后H收敛为只含一个要求的概念。 VSH,D 变型空间方法以整个规则空间为初始的假设规则集合H, =H 。 依据训练例子中的信息,它对集合H进行泛化或特化处理,逐步缩小集合H。最后使H收敛为只含有要求的规则。由于被搜索的空间H逐步缩小,故称为变型空间。 VSH,D
初始变型空间 例化 g s 泛化
( x y ) ( s m y ) ( l g y ) ( x s q u ) ( x c i r ) ( x t r i ) ( s m s q u ) ( l g s q u ) ( s m c i r ) ( l g c i r ) ( s m t r i ) ( l g t r i ) 第二个训练实例(lg,tri)
( x y ) ( s m y ) ( l g y ) ( x s q u ) ( x c i r ) ( x t r i ) ( s m s q u ) ( l g s q u ) ( s m c i r ) ( l g c i r ) ( s m t r i ) ( l g t r i ) 第三个训练实例(lg,cir)
消除候选算法 (1)正规的初始H集是整个规则空间,这时S包含所有可能的训练正例(最特殊的概念)。这时S集规模太大。实际算法的初始S集只包含第一个训练正例, 这种H就不是全空间了。 (2)接收一个新的训练例子。如果是正例,则首先由G中去掉不覆盖新正例的概念,然后修改S为由新正例和S原有元素共同归纳出的最特殊的结果(这就是尽量少修改S,但要求S覆盖新正例)。如果这是反例,则首先由S中去掉覆盖该反例的概念,然后修改G为由新反例和G原有元素共同作特殊化的最一般的结果(这就是尽量少修改G,但要求G不覆盖新反例)。
变型空间和候选消除算法(5) 形式化定义 极大一般:更一般中的极大者(元)-下确界 极大特殊:更特殊中的极小者(元)-上确界 关于假设空间H和训练数据D的一般边界G,是在H中与D相一致的极大一般成员的集合 关于假设空间H和训练数据D的特殊边界S,是在H中与D相一致的极大特殊成员的集合
变型空间和候选消除算法(6) 变型空间定理: 令X为一任意的实例集合,H为X上定义的布尔假设的集合。令c: X{0,1}为X上定义的任一目标概念,并令D为任一训练样例集合{<x,c(x)>}。对所有的X, H, c, D以及定义的S和G: VSH,D={hH|(sS)( gG)(gghgs)} 变型空间中的任意假设h一定更一般特殊边界S而更特殊一般边界G
变型空间和候选消除算法(7) 候选消除算法(candidate-elimination ) 初始化G和S 如果d是一个正例 从G中移去所有与d不一致的假设 对S中每个与d不一致的假设s 从S中移去s 把s的所有的极小泛化式h加入到S中,其中h满足 h与 d一致,而且G的某个成员比h更一般 如果d是一个反例 从S中移去所有与d不一致的假设 对G中每个与d不一致的假设g 从G中移去g 把g的所有的极小特殊化式h加入到G中,其中h满足 h与d一致,而且S的某个成员比h更特殊 从G中移去所有这样的假设:它比G中另一个假设更特殊
变型空间和候选消除的说明 候选消除算法收敛到正确的假设 训练样例中没有错误 H中包含描述目标概念的正确假设 如果样例中存在错误 如果给定足够的训练数据,S和G边界收敛得到一个空的变型空间 如果目标概念不能由假设表示方式所描述 相似情况出现
变型空间和候选消除的说明(2) 下一步需要什么样的训练样例 一般来说,概念学习的最优查询策略,是产生实例以满足当前变型空间中大约半数的假设。这样,变型空间的大小可以在遇到每个新样例时减半,正确的目标概念就可在只用log2|VS|次实验后得到。
变型空间和候选消除的说明(3) 怎样使用不完全学习概念 即便变型空间中包含多个假设,即目标概念还未学习到,但是仍然有可能对新样例进行一定可信度的分类。
归纳偏置 有关候选消除算法的几个问题 如果目标概念不在假设空间中怎么办? 是否可设计一个包含所有假设的空间来解决这一困难? 假设空间的大小对于算法推广到未见实例的能力有什么影响? 假设空间的大小对所需训练样例的数量有什么影响? 归纳学习需要的预先假定,称为归纳偏置
归纳偏置(2) 一个有偏的假设空间 在EnjoySport这个例子中,假设空间限制为只包含属性值的合取。(肯定有偏) 因为这一限制,导致假设空间不能够表示最简单的析取形式的目标概念。
归纳偏置(3) 无偏的学习器 为了保证目标概念在假设空间中,需要提供一个假设空间,它能表达所有的可教授概念。换言之,它能表达实例集X的所有子集。 EnjoySport的无偏形式 带来的问题:概念学习算法无法从训练样例中泛化。 要想获得单个目标概念,就必须提供X中所有实例作为训练样例
归纳偏置(4) 无偏学习的无用性 归纳学习的一个基本属性:学习器如果不对目标概念的形式做预先的假定,它从根本上无法对未见实例进行分类
小 结 概念学习可看作搜索预定义潜在假设空间的过程; 假设的一般到特殊偏序结构可以定义在任何概念学习问题中,这种结构便于假设空间的搜索; Find-S算法使用一般到特殊序关系,在偏序结构的一个分支上执行一般到特殊搜索,寻找一个与样例一致的最特殊假设; 候选消除算法利用一般到特殊的过程,通过渐进地计算极大特殊假设集合s和极大一般假设集合g发现变型空间; 候选消除算法缺少健壮性; 归纳学习算法隐含了归纳偏置,候选消除算法的偏置是:目标概念可以在假设空间中找到-所以又称限定偏置。输出的假设和对新实例的分类可由归纳偏置和训练样例演绎推出。
概 论 决策树学习是应用最广的归 纳学习(推理)算法之一 是一种逼近离散值函数的方法 很好的健壮性 能够学习析取表达式 ID3-是著名的学习算法 搜索一个完整表示的假设空间 归纳偏置是优先选择较小的树 决策树表示了多个if-then规则
决策树表示法 决策树 通过把实例从根节点排列到某个叶子节点来分类实例。 叶子节点即为实例所属的分类 树上每个节点说明了对实例的某个属性的测试 节点的每个后继分支对应于该属性的一个可能值 决策树代表实例属性值约束的合取的析取式。从树根到树叶的每一条路径对应一组属性测试的合取,树本身对应这些合取的析取。
决策树举例 能否打羽毛球? (看天气情况) Outlook Sunny Rainy Overcast Humidity Yes Wind Normal Strong Weak High No Yes No Yes R1:if Outlook = Sunny Humidity = High then No R2:if Outlook = Sunny Humidity = Normal then Yes R1 R2
决策树 叶子结点对应一种测试 结点用于测试属性 Outlook Sunny Overcast Rainy Humidity 分支对应属性值 High Normal No Yes
决策树学习的适用问题 适用问题的特征 实例由“属性-值”对表示 目标函数具有离散的输出值 可能需要析取的描述 训练数据可以包含错误 训练数据也可以包含缺少属性值的实例 问题举例 根据疾病分类患者 根据起因分类设备故障 根据拖欠支付的可能性分类贷款申请 根据年龄、收入等分类银行信用卡的等级 分类问题 核心任务是把样例分类到各可能的离散值对应的类别
决策树学习的适用问题 商品名称 款式 面料 价格 购买否 李宁牌套装 新潮 毛料 高 杉杉休闲服 休闲 棉质 高 元首休闲装 休闲 毛料 低 客户的购买记录 确定下列商品是否可能购买
决策树学习案例:一个模拟淘宝的简单示例 • sellers(SID,WID,WPrice,WSold,WScore) • customers(CID,CName,CType,CScore) • wdivide(WID,WName,WType_1,WType_2,WType_3) • shopcart(CID,SID,WID,Datetime,Amount) • 用表cookie来模拟用户上网浏览产生的数据: • cookie(SID,WID)