您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > AI人工智能 > 人工智能_kNN和Kmeans(PPT32页)
机器学习简介(AQUICKLOOKATMACHINELEARNING)fuzhan713@gmail.com1234PARTONEPARTTWOPARTTHREEPARTFOUR机器学习及其重要性特征向量监督学习非监督学习目录机器学习是人工智能的核心研究领域之一任何一个没有学习能力的系统都很难被认为是一个真正的智能系统经典定义:利用经验改善系统自身的性能随着该领域的发展,主要做智能数据分析并已成为智能数据分析技术的源泉之一典型任务:预测(例如:天气预报)机器学习生物信息学计算金融学分子生物学行星地质学……工业过程控制机器人……遥感信息处理信息安全机器学习机器学习的重要性生物信息学计算金融学分子生物学行星地质学……工业过程控制机器人……遥感信息处理信息安全机器学习通常来说,机器学习会观察一组实例,它们会包含某些统计信息的不完整信息,然后试着推测生成这些实例的过程,这组实例通常被称为训练数据。举例来说,假设下面有两组人:举例来说,假设下面有两组人训练数据特征向量信噪比(signal-to-noiseratio,SNR)这个概念经常出现在工程学和科学中。准确的定义根据应用场景不同而不同,但是核心思想非常简单,可以把它看成有用输入和无用输入的比例。如果我想要预测哪些学生会在编程中表现突出,那之前的编程经验和数学天分就是信号的一部分,但是性别是噪声。想要从噪声中分离信号并不是一件简单的事情,如果做不好的话,噪声就会掩盖住信号的内容。特征提取特征提取的目的是从现有数据的噪声中提取出和信号有关的特征。如果做不好的话会出现两类问题:1.无关特征会影响模型质量,当数据维度(不同特征的数量)和实例数量高度相关时,影响尤其严重。2.无关特征会影响学习速度。机器学习算法通常时学习密集型的,复杂度会随着实例数量和特征数量的增加而增加。特征提取的就是要减少实例中需要归纳的信息量,找出有用的特征,进而提高算法模型的准确性。思考:特征向量和标签(是否是爬行动物)巨蚺是否是爬行动物?新规则:短吻鳄在上表中,使用4个二元特征和1个整数特征来描述动物。假如说用这些特征评估两个动物的相似度,比如说判断巨蚺更新响尾蛇还是箭毒蛙,应该如何做?首先把每个动物的特征转换成一个数字序列。如果把True看成1,把False看作0,就可得到下面的特征向量:响尾蛇:[1,1,1,1,0]巨蚺:[0,1,0,1,0]箭毒蛙:[1,0,1,0,4]距离度量闵可夫斯基距离比较数字向量的相似度有许多中不同的方法,最常用的是一种基于闵可夫斯基距离。图1闵可夫斯基距离示例闵可夫斯基距离实现图2闵可夫斯基距离的一种实现计算动物之间的相似度运行下面的代码生成一张表格响尾蛇巨蚺箭毒蛙响尾蛇--1.4144.243巨蚺1.414--4.472箭毒蛙4.2434.472--响尾蛇巨蚺箭毒蛙短吻鳄响尾蛇--1.4144.2434.123巨蚺1.414--4.4724.123箭毒蛙4.2434.472--1.732短吻鳄4.1234.1231.732--短吻鳄在末尾添加下面的代码生成一张表格问题的根源是:不同的特征有不同的取值范围。腿的取值范围是0至4,但是其他的数值是0或1。这意味着计算欧式距离时,腿的权重数量更大。特征向量的权重响尾蛇巨蚺箭毒蛙短吻鳄响尾蛇--1.4141.7321.414巨蚺1.414--2.2361.414箭毒蛙1.7322.236--1.732短吻鳄1.4141.4141.732--现实时间中有很多种机器学习的方法,但是它门的目的都是找到一个可以归纳所有实例的模型,这些方法通常有三个部分组成:模型的具体描述对模型评估的目标函数一种优化方法,可以最小话或者最大化目标函数的值。机器学习算法可以分为有监督学习和无监督学习。机器学习的目的监督学习(supervisedlearning)的任务是学习一个模型,使模型能够对任意给定的输入,对其相应的输出做一个好的预测。输出的结果可以是一个连续的值(称为回归),或是预测一个分类标签(称为分类)。监督学习的特点是输入的数据有标签(label),就是已知要预测的结果。形式化描述监督学习KNN是通过测量不同特征值之间的距离进行分类。它的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别,其中K通常是不大于20的整数。KNN算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。KNN(K-近邻算法)下面通过一个简单的例子说明一下:如下图,绿色圆要被决定赋予哪个类,是红色三角形还是蓝色四方形?如果K=3,由于红色三角形所占比例为2/3,绿色圆将被赋予红色三角形那个类,如果K=5,由于蓝色四方形比例为3/5,因此绿色圆被赋予蓝色四方形类。KNN(例子)接下来对KNN算法的思想总结一下:就是在训练集中数据和标签已知的情况下,输入测试数据,将测试数据的特征与训练集中对应的特征进行相互比较,找到训练集中与之最为相似的前K个数据,则该测试数据对应的类别就是K个数据中出现次数最多的那个分类,其算法的描述为:1)计算测试数据与各个训练数据之间的距离;2)按照距离的递增关系进行排序;3)选取距离最小的K个点;4)确定前K个点所在类别的出现频率;5)返回前K个点中出现频率最高的类别作为测试数据的预测分类。KNN(K-近邻算法)KNN(示例-1)KNN(示例-2)课后练习项目案例1:优化约会网站的配对效果完成代码地址::手写数字识别系统完成代码地址:,我们基本上不知道结果会是什么样子,但我们可以通过聚类的方式从数据中提取一个特殊的结构。在无监督学习中给定的数据是和监督学习中给定的数据是不一样的。在无监督学习中给定的数据没有任何标签或者说只有同一种标签。)。无监督学习如下图所示,在无监督学习中,我们只是给定了一组数据,我们的目标是发现这组数据中的特殊结构。例如我们使用无监督学习算法会将这组数据分成两个不同的簇,,这样的算法就叫聚类算法。聚类聚类的基本思想是将数据集中的样本划分为若干个通常是不相交的子集,每个子集称为一个”簇”(cluster)。划分后,每个簇可能有相同对应的概念(性质)。K-均值算法就是一个使用很广泛的聚类算法,其中的K就表示簇的数量,K-means简单的说就是通过质心来将样本划分成K个不同的簇。K-means聚类算法K-means算法举例K-means聚类算法工作流程工作流程:(1)事先选定K个聚类中心(2)计算待测样本a到每个聚类中心的距离,然后将样本a分配到距离最近的聚类中(3)计算每个聚类样本的均值来动态更新原聚类质心(4)不断迭代(2),(3),直到簇质心不再改变。K-means聚类算法实现课后练习——二分kmeans聚类测试二分biKmeans函数:
本文标题:人工智能_kNN和Kmeans(PPT32页)
链接地址:https://www.777doc.com/doc-26773 .html