首页 > 代码库 > 统计算法学习梳理(一)
统计算法学习梳理(一)
研一零零散散用了一些统计算法,在此简单梳理下。力求用电梯演讲法则去阐述每种算法模型(这是初哀,最后。呵呵了)。但自己理解不深,还须要进一步努力。更重要的是复用了他人的智慧。
统计学习概述
关于统计学习。首先推荐李航老师著作的一本书《统计学习方法》。在此引用里边一句话来定义统计学习:统计学习(statistical learning)是关于计算机基于数据构建概率模型并运用模型对数据进行预測与分析的一门学科。从中可见,统计学习中有两个重要的点:数据,概率模型。
统计学习方法里边有三个要素:模型,策略。算法。模型即指所要进行学习的概率函数或者决策函数。策略就是我们定义的一个标杆或准则,然后才干此学习或者选择最优的模型(没有策略我们无法对模型进行评判、作出选择)。
算法就是学习时用的详细方法。
1。k近邻法
本节从下面二个部分简单介绍k近邻法:K近邻法的思想、三个要素。
K近邻法的思想。
K近邻法是一种主要的分类方法,当时也可用于回归。
这样的方法用数据解释了“人以群分,物以类聚”所蕴涵的道理:假设一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别。则该样本也属于这个类别。在你的K个朋友中,多数是有钱人,那么你也是有钱人(当然还存在准确率问题,hh)。
三个要素。
从k近邻法思想中也体现出其三个要素:距离度量,即以什么样的标准定义一个人距离你关系的远近。进而判定是不是你的朋友。k值的选择。即看几个朋友来猜測你的情况;分类决策,一般选择多数表决法。即大部分有钱。则就判定你是有钱人(还要其他分类策略吗?k个朋友中有一个有钱,那么就判定这个属于有钱,也能够啊)。
2,聚类
本节主简单介绍两种聚类算法思想:分级聚类,k均值聚类。
分级聚类通过连续不断地将最为相似的的群组合并,来构造出一个群组的层级结构。在每次迭代的过程中。分级聚类算法都会计算两两群组间的距离,并将距离近期的两个群组合并,最张形成一个群组。
k均值法(曾经一直以为kmeans和knn指的同一种算法,hh)。k-means 算法的工作过程说明例如以下:首先从n个数据对象随意选择 k 个对象作为初始聚类中心。而对于所剩下其他对象。则依据它们与这些聚类中心的相似度(距离)。分别将它们分配给与其最相似的(聚类中心所代表的)聚类。然后再计算每一个所获新聚类的聚类中心(该聚类中全部对象的均值);不断反复这一过程直到标准測度函数開始收敛为止。一般都採用均方差作为标准測度函数. k个聚类具有下面特点:各聚类本身尽可能的紧凑,而各聚类之间尽可能的分开。
3,朴素贝叶斯
朴素贝叶斯法是基于贝叶斯定理和条件独立如果的分类方法。其基本过程为:对于给定的训练数据集, 首先基于特征条件独立性如果学习/输入/输出的联合概率分布;然后基于些模型对给定的输入输入x。利用贝叶斯定理各个分类的后验概率,选择概率最大的分类为输出y。
在这块有几个词:贝叶斯定理,特征条件独立性如果,先验概率,后难概率,联合概率。
百科上有部分对贝叶斯定理的文字解释:通常情况下。事件A发生的情况下B发生的概率与B发生的情况下A发生的概率是不相等的,而贝叶斯定理就是用来描写叙述这两种之间的关系的。那么两者之间是个什么关系的呢?就是一个公式,贝叶斯公式/定理。
先验概率:对于当前要推断的实例不了解不论什么知识,只依据以往的经验来推断当前实例属于哪个类。
后验概率:对于当前要推断的实例,当知道其一些知识后而算出的一种条件概率。
条件独立性如果:当用多个特征来推断一个实例的类别时,姑且觉得这此特征是独立起作用的。
联合概率:表示两个事件共同发生的概率。
4,支持向量机
支持向量机是一种二分类模型。是一组方法的统称。看了一些资料。可是眼下还没有深入去推导过。在此仅仅说说我的两点印象:一是支持向量机在分类时追求的标准。二是当所给数据“不可分”时怎么办。
在二维空间里分布着非常多黑点和白点。如果这些点是能够按黑白分开的。支持向量机不仅要找到一条线将其分隔开,并且要找到一条间隔最大的线。
至于怎么算间隔最大?直观点,有两点,这条线就是两点连线的中垂线。
至于维数再高些,则间隔最大的线就相应成了超平面了。
假如数据“不可分”了,怎么办呢?则把这些数据映射到更高维的数据空间里进行分隔。 相应间隔最大的线就成了超平面。
5,最大熵模型
本节依次简单介绍下面二部分:熵,最大熵原理。
熵是信息量的计量单位。给定一个符号,怎样评測它所包括的信息量大小呢?香农最早在通信领域首提信息熵的概念,主要以其计算公式来定义的。
最大熵原理,这是一个概率模型学习的一个准则。最大熵原理觉得。假如有非常多模型都满足当前的条件,则熵最大的那个模型是最优的模型。
直观地,在满足已知的知识条件下,对不知道的条件知识不作不论什么推測,等概率对待。
6,决策树模型
决策树是一种主要的分类方法与回归方法,其学习通常包括三个步骤:特征选择、决策树生成,决策树剪枝。
在本节中简单介绍两部分:决策树基本概念,ID3算法。
决策树模型是一种描写叙述对实例进行分类的树形结构。其由结点和有向边组成。
结点有两种类型:内部结点和边结点。内部结点表一个特征或属性,叶结点表示一个分类。用决策树进行分类的过程:从根节点形如对实例进行某一特征測试,依据測试结果,将实例分给其某一子节点。这个子节点相应某一特征取值。然后依次递归地对实例进行測试并分配,直到达到叶结点完毕分类。
由决策树的描写叙述能够看出,越靠近根节点的特征对分类的区分度越大,而根节点对分类的区分度最大。ID3算法则是递归选择当前最区分度最的特征建立节点并终于形成决策树的,ID5算法的作用也是如此。仅仅只是两者对特征的区分度度量标准不一样。
7,隐马尔可夫模型
感想
在尝试学习汉字分词、标注预測、文本分类后,感觉对上述几种模型都了解一些了,想仅仅用文字简单描写叙述下这几种模型。
可是打开博客,開始写的时候,感觉太难了!
有相当一部分概率,除了公式外,根本不知道怎么去解释它。还有些模型,仅仅意会了些思想,然后用一些现成工具包来实现其效果,最多再调调參数。但真正去解释的时候,发现什么都不会说!
本来打算用一下午时间简单写写,可是把这些模型列出来了,不知道怎么办了,习惯性的复制、贴图。
但发现有复制不完的东西,贴不完的图!
而每个模型都非常多并且比較好的博客总结,而自己在一篇中就一个模型写好就不错了。
所以后来给自己定位,对于一个模型,自己可以按自己的理解,记住点看的东西,然后说出来。在这个基础上尽量说得清楚。
最后还是自己学习不到家。继续努力!
学习资料:
《统计学习方法》李航
《集体智慧编程.Programming Collective Inteligence》
妍彦的博客.K-means算法
与 KNN(K近期邻)算法
理解SVM的三层境地-支持向量机通俗导论
统计算法学习梳理(一)