机器学习导论IntroductiontoMachineLearning大连海事大学信息科学与技术学院•课程考核方法–平时分(20分)–点名(10分)一次不来扣3分–上机作业(30分)–期末考核(40分)•教材–《机器学习》TomM.Mitchell著曾华军张银奎等译–《机器学习导论》EthemAlpaydin著范明等译•学时安排及上机–总学时54(授课36+上机18)–上机时间地点:待定•辅导答疑–周四中午12点30分到13点20分网络中心307本课程主要内容•监督学习–分类–回归•密度估计•非参数方法•决策树•人工神经网络•贝叶斯学习•增强学习•遗传算法如何学习本门课程•本门课程注重了解和理解,为将来进一步的深入学习打好基础。•本门课程的要求–掌握基本概念–了解机器学习方法的思想–掌握少数经典算法,并能够编程实现•多动脑思考,积极活跃的课堂讨论。第一章绪论•什么是机器学习?•机器学习的应用实例•相关资源什么是机器学习?•计算机技术的发展–海量数据(存储和处理的能力)–计算机网络(远程访问数据的能力)•例如:–连锁超市遍布全国各地,商品上千种,顾客数百万。–销售终端记录每笔交易的详细资料,包括日期,购买商品和数量、销售价格和总额,顾客标识码等。什么是机器学习?–我们不能确切的知道哪些人比较倾向于购买哪些特定的商品,也不知道应该向喜欢看尼古拉斯凯奇电影的人推荐哪些其他的电影。•我们已经掌握的,就是历史的数据(经验)。•我们期望从数据中提取出这些问题或相似问题的答案。什么是机器学习?•已经观测到的数据产生是随机的么?其中是否隐含一些规律?–当你去超市买面包的时候,你是不是同时也会买点牛奶?–夏天的时候你是不是经常买雪糕?冬天则很少?•数据中存在一些确定的模式或规律!什么是机器学习?•机器学习?–从历史数据中,发现某些模式或规律(描述)–利用发现的模式和规律进行预测•机器学习的定义–基于历史经验的,描述和预测的理论、方法和算法。•机器学习可行性的保证–将来,至少是不远的将来,情况不会与收集的样本数据时有很大的不同,因此未来的预测也将有望是正确的。机器学习能做什么?•机器学习方法在大型数据库中德应用被称为数据挖掘(DataMining)。–大量的金属氧化物以及原料从矿山开采出来,处理后产生少量的珍贵物质。数据挖掘中,需要处理大量的数据以构建简单有用的模型,例如高精度的预测模型。•应用举例–零售业,银行,金融业,构建信用分析、诈骗检测、股票市场;–制造业,优化、控制、故障检测;–医学领域,医疗诊断;–电信行业,通话模式的分析可用于网络优化和提高服务质量。–万维网上检索信息。机器学习能做什么?•机器学习也是人工智能的组成部分。•授予鱼不如授予渔–为了智能化,处于变化环境中的系统不需具备学习能力。如果系统能够学习并且适应这些变化,那么系统设计者就不必预见所有情况,并为它们提供解决方案了。机器学习能做什么?•机器学习还可以解决视觉、语音识别以及机器人方面的许多问题。•模式识别–图像和音频的获得很容易,机器如何做到识别?让机器人识别人脸?辨别声音?–一个图像并非是像素点的随机组合,人脸是有结构、对称的。人脸上的器官是有组合模式的。–通过分析一个人的脸部图像的多个样本,学习程序是可以捕获到那个人特有的模式。然后进行辨认。深入理解机器学习•机器学习使用实例数据或过去的经验来训练计算机,以优化某种性能指标。–例如,依赖于某种参数的模型,学习过程就是执行计算机程序,利用训练数据或以往的经验来优化该模型的参数。•学习模型可以是预测的,用于预测未来。或者是描述的,用于从数据中获取知识。也可以二者兼备。•机器学习在构建数学模型是利用统计学理论,其核心任务是从样本中推理。–训练过程中,面对海量数据,需要高效的算法。–表示和推理的算法也必须是高效的。–因此,时间复杂度,空间复杂度和预测精确度三者缺一不可。机器学习应用举例•学习关联性•分类•回归•非监督学习•增强学习学习关联性•在零售业,例如超市连锁店,机器学习的一个应用就是购物篮分析。它的任务是发现顾客所购商品之间的关联性:如果顾客购买商品X时通常也购买商品Y,而一名顾客购买商品X却没有购买商品Y,则他是商品Y的潜在顾客,一旦发现这类顾客,可以实行打包销售策略。•关联规则1:条件概率P(Y|X)–例如从以往数据中统计出P(牛奶|面包)=0.8•关联规则2:估计P(Y|X,D)其中D是顾客的一组属性,如性别、年龄、婚姻状况等,例如网上书店,将分析的结果概率比较大的书Y,推荐给符合某属性的用户。分类•信贷是金融机构(例如银行)借出的一笔钱,需要连本带息分期偿还。对于银行来说,重要的是能够提前预测贷款风险。风险指的是客户不履行义务和不全额还款的可能性。既要保证银行获利,又要确保不会因提供超出客户财力的贷款而给客户带来不便和银行的损失。在信用评分中,银行要计算在给定信贷额度和客户信息情况下的风险。客户信息包括可以获取的数据,以及客户财力相关的数据,即收入、存款、担保、职业、年龄、以往经济记录等。通过这些申请数据,我们可以推断出一般规则,表示客户属性及风险的相关性。从而将客户分为低风险客户和高风险客户。新的客户申请数据作为分类器的输入,分类器将该客户输入指派到某一个类中。•得到的规则:ifincomexandsavingsythenlow-riskelsehigh-risk分类思考1•在某些情况下,我们可能不希望1/0(高风险/低风险)类型的判断,而是希望计算一个风险概率值。该如何用概率模型表达??•概率值P(Y|X),X是顾客属性,Y是0或1,表示低风险和高风险。–例如给定客户属性x,P(Y=1|X=x)=0.8,表示客户高风险的可能性是80%。分类--模式识别(PatternRecogniition)•光学字符识别(Opticalcharacterrecognition)–图像字符–文本识别It’srainyoutside.•人脸识别(facerecognition)•语音识别(speechrecognition)•医学诊断(medicaldiagnosis)回归(Regression)•假如我们想要一个能够预测二手车价格的系统,输入为会影响车价格的属性:品牌,车龄,发动机性能,里程以及其他信息,输出为车的价格。•设x表示车的属性,y表示车的价格。机器学习采用函数拟合来学习x的函数y。(1)y=w1x*w0线性回归(2)y=w2x2+w1x*w0非线性回归回归(Regression)•思考2:•多属性如何回归?思考3•回归和分类的共同点是什么?监督学习(supervisedlearning)•回归和分类均为监督学习问题•即,输入x和输入y都是给定的,任务是学习从输出到输入的映射:y=g(x|θ)其中θ是模型参数。•回归y取值是连续的(数值),而分类是离散的。非监督学习•监督学习中,输出的正确值是由指导者提供的。而非监督学习中,却没有这样的指导者,只有输入数据。•非监督学习的目标是发现输入数据中的规律。•输入空间存在着某种结构,似的特定的模式比其他模式更常出现,我们希望知道的是哪些经常发生,那些不经常发生。在统计学中,这被称为密度估计(densityestimation)。聚类(Clustering)•聚类是密度估计的一种方法,其目标是发现输入数据的簇或者分组。–公司的客户数据–了解客户的分布–分组指导公司的决策生物信息学(Bioinformatics)的应用•生物方面–基因,DNA是碱基ACGT的序列,RNA有DNA转录而来,蛋白质由RNA转录而来。–DNA是碱基序列,蛋白质是氨基酸序列。•信息学方面–比对(alignment)–结构域(motif)蛋白质中反复出现的氨基酸序列,其序列结构表征结构和功能,如单双眼皮,遗传病等。–氨基酸是字母,蛋白质是句子,那么motif就是单词。增强学习(Reinforcementlearning)•在某些应用中,系统的输出是动作的序列。在这种情况下,单个动作并不重要,重要的是策略,即到达目标的正确动作序列。•机器学习程序应当能够评估策略的好坏程度,从以往好的动作序列中学习,以便能产生策略。这种学习方法称为增强学习方法。–人机对弈方面:例如棋牌类游戏,国际象棋,围棋等,每一步的规则只有少量几条,如何设计步骤的序列才是关键。–机器人导航方面,例如机器人足球。总结机器学习方法的种类•监督学习•非监督学习•增强学习相关资源期刊:MachineLearningJournalofMachineLearningResearchNeuralComputationNeuralNetworksIEEETransactionsonNeuralNetworksDataMiningandKnowledgeDiscoveryIEEETransactionsonKnowledgeandDataEngineeringSigKDD(SpecialinterestGrouponKnowledgeDiscoveryandDataMiningExplorationsJournal)相关资源•会议–NeuralInformationProcessingSystems–UncertaintyinArtificialIntelligence–InternationalConferenceonMachineLearning–EuropeanConferenceonMachineLearning–ComputationallearningTheory–InternationalJointConferenceonArtificialIntelligence习题•机器学习方法的种类有哪些?每一类请举例。•假设我们的既定目标是构建识别垃圾邮件的系统,请问垃圾邮件中的什么特征使得我们能够确认它为垃圾邮件?计算机如何通过语法分析来发现垃圾邮件?如果发现了垃圾邮件你希望计算机如何处理它?分组题目1关联规则(Apropri)2贝叶斯网络3参数方法–最大似然估计–伯努利密度–高斯(正态分布)4聚类–K均值聚类–期望最大化–层次聚类5非参数方法–直方图–核估计–K最近邻6决策树7人工神经网络8增强学习9遗传算法第二章监督学习Chapter2.SupervisedLearning•2.1由实例学习类•2.2VC维(Vapnik-ChervonenkisDimension)•2.3概率逼近正确学习•2.4噪声•2.5学习多类•2.6回归2.1由实例学习类•学习“家用汽车”类C–现有一组汽车实例和一组被测人,展示汽车,被测人对汽车标记:•正例:标记为家用汽车•负例:其他类型汽车–机器学习后预测未见过的汽车是否为家用–汽车特征包括价格、发动机功率、座位数量、车身颜色等。2.1由实例学习类•仅考虑价格(x1)和发动机功率(x2)•对于每一辆观测的汽车,可以表示为•所有观测的汽车样本表示为•我们发现价格和发动机功率在某个确定范围内的是家用汽车。–(P1=价格=p2)AND(e1=发动机功率=e2)•我们的目标是找出假设类H尽可能的与C接近---找出定义H的四个参数。•假设h经验误差•经验误差是h的预测值与x中给定的预期值不同的训练实例所占的比例:假正假负最特殊假设S和最一般假设G介于S和G之间的假设被称为无误差的有效假设。构成假设解空间。VC维•可以被H散列的点的最大数量成为H的VC维。•当H为二维空间中轴平行的矩形的假设类时,VC(H)=4.•思考1:为什么等于4?而不是5?•思考2:当假设H为二维空间中的直线时,VC(H)=?概率逼近正确学习•我们希望我们的假设是近似正确的,即误差概率不超过某个值。•在具有概率分布p(x)的样本中卡,找出N个样本,使得对于任意的和,假设误差至多为的概率至少为1-。(1)(2)(3)(4)2.4噪声•噪声来源?–记录输入属性可能不准确。–标记点可能有错。(指导噪声)–可能存在我们没有考虑到的附加属性。这些属性可能是隐藏的或潜在的,是不可以预测的。是一种随机成分•当有噪声时,正负实例之间没有简单