精华内容
下载资源
问答
  • 参数方法,半参数方法,非参数方法

    千次阅读 2018-09-13 17:28:53
    amp;amp;tid=2163476&page=1 参数方法,假定概率分布,只来估计少量参数。 半参数方法,对数据分组,每组采用一种概率分布的假设,最后使用混合概率分布。 非参数方...

    https://blog.csdn.net/u013395544/article/details/53170207
    http://bbs.pinggu.org/forum.php?mod=viewthread&tid=2163476&page=1

    参数方法,假定概率分布,只来估计少量参数。

    半参数方法,对数据分组,每组采用一种概率分布的假设,最后使用混合概率分布。

    非参数方法,不需要知道数据的概率分布,只需要假设:相似的输入具有相似的输出。因为我们一般都认为世界的变化时平稳、量变到质变的,因此无论是密度、判别式还是回归函数都应当缓慢地变化。在这样的非参数估计(non-paramitric estimation)中,局部实例对于密度的影响就显得颇为重要,而较远的实例影响则较小。

    参数回归是我们最长用的模型。与参数回归相对的非参数回归,这种模型对变量分布等假定并不是很严等,因此可以说扩展了参数回归的应用范围。但是非参数回归的局限性在于,在存在较多的解释变量时,很容易出现所谓的“维度灾难”,像方差的急剧增大等现象。

    这类模型包括实例回归,局部加权回归(LOESS)和样条回归。非参数方法一般适用于低维空间(较少的解释变量)。该局部加权回归曲线是利用点附近的点信息,使用的点信息越多,曲线与拟合直线越接近;使用的点信息越少,与散点越吻合。在变量间非线性关联较强的情况下,相比普通回归,通常更稳健一些。

    介于参数回归与非参回归之间的就是半参数模型,这种模型结合了前面两种参数模型的诸多优点,例如使用的连接函数、分析形式多样化,而且光滑参数值的确认均可以使用广义交叉验证技术。其应用情景首先是因变量在不符合正态分布时,该模型的结果仍然很稳定,我们可以选择不同的分布形式等。非参数模型的另一个典型应用是可以对具有截尾数据的资料进行生存预测。例如,普通生存分析,并没有很好的解决多解释变量的情况,并且对分布有特定的需求,而且当相关假定违反时,往往会对模型产生很大的影响,半参数生存分析回归模型克服了上述参数法的诸多局限,可以灵活地处理许多未知分布与不服从参数分布类型的资料。

    另外,一个比较容易混淆的是广义可加模型(使用连接函数的可加模型),与广义线性模型很相似,主要使用非参估计的方法。
    这里写图片描述

    展开全文
  • 半参数方法,对数据分组,每组采用一种概率分布的假设,最后使用混合概率分布。 非参数方法,不需要知道数据的概率分布,只需要假设:相似的输入具有相似的输出。因为我们一般都认为世界的变化时平稳、量变到质变的...
    • 参数方法,假定概率分布,只来估计少量参数。

    • 半参数方法,对数据分组,每组采用一种概率分布的假设,最后使用混合概率分布。

    • 非参数方法,不需要知道数据的概率分布,只需要假设:相似的输入具有相似的输出。因为我们一般都认为世界的变化时平稳、量变到质变的,因此无论是密度、判别式还是回归函数都应当缓慢地变化。在这样的非参数估计(non-paramitric estimation)中,局部实例对于密度的影响就显得颇为重要,而较远的实例影响则较小。

    非参数方法主要有:

    --非参数密度估计
    --直方图形式的估计
    --核估计
    --k-最近邻估计
    
    展开全文
  • 根据金融时间序列一般都存在条件异方差性,本文研究了两种半参数时间序列模型的估计方法,通过实际算例对参数模型与半参数模型,以及不同的半参数模型在金融时间序列的拟合与波动率预测方面的表现作了比较。...
  • 而对于另外一些问题,我们不能确定样本遵从的分布假设,这时我们可以退一步,采用混合分布估计输入样本(也就是半参数方法);如果这样也不行,那么我们就要使用非参数的方法。今天我们来初步了解下聚类 学习。主要的...

    在参数方法中,我们假设样本来自于一个已知的分布,因此我们的主要工作就是估计有限的参数;而对于另外一些问题,我们不能确定样本遵从的分布假设,这时我们可以退一步,采用混合分布估计输入样本(也就是半参数方法);如果这样也不行,那么我们就要使用非参数的方法。今天我们来初步了解下聚类 学习。主要的要点如下:

    • 混合密度
    • K-均值聚类
    • 聚类后的监督学习
    • 层次聚类

    一、混合密度

    之所以要提出混合分布,主要原因就是上面所说的分布假设无法确定的情况,另一个原因也有可能样本遵从的分布本身就不是单一的,比如语音识别的学习,同样一个单词,可能因为说话者的性别、年龄、方言等因素而有不同的发音,因此不能够用统一的分布假设来进行拟合。这里我们采取表示所有这些不同发音方法的策略,即半参数密度估计(semiparamitric density estimation),我们对样本假定有多个分组,每个分组仍然假定一个具体的模型。

    混合密度(mixture density)记作:

    这里的G-i称为混合分支(mixture component),也称做分组(group)或簇(cluster);P(x|G-i)是分支密度,而P(G-i)是混合比例,这里是通过概率的量来度量分支的比例和密度。分支数K是超级参数,应当是预先指定的。实际上,参数分类就是混合模型,但不同的 是,参数分类是有标号的,而这里是不知道标号的,也就是非监督学习问题。因此,我们需要估计标号,接着估计每个分支的参数,为此,先看K均值聚类。

    二、K-均值聚类

    如何对一个样本进行聚类分析呢?这里我们有一个简单的算法,称之为K-均值聚类。为了便于理解,我们引入一个颜色量化的实例。比如我们有一副24位/像素的图像(即24个比特位来标示图像,总共可以表示2^24中颜色,1600多万种),假定我们有个8位/像素的彩色屏幕,显示这副图像无疑会存在像素损失,现在的问题是我们从原先的1600万种颜色中选取256种颜色来显示图像呢?且尽可能不损失图像质量。

    如果直接均匀量化是不实际的,因为图像像素的分布并不均匀,比如一副大海的图片蓝色比较多,而基本不会出现红色;我们量化后的图像像素应当尽可能地接近反映原来的像素密度,将映射表更多地放在高密度区域,丢弃没有数据的区域。

    这里我们一个自然的想法,将“距离”比较近的一些像素用一个近似值来代表,从而实现像素的量化。比如对于24位的像素x,我们有24位的映射表集合M,如果对于某个映射m-i附近的像素值都用序号i来表示像素的话,那么我们只要选取256个映射表,就可以实现1600万-->256的映射。因此这里关键是度量像素样本x与映射表m之间的距离(都是24比特的二进制序列):

    现在的问题是我们应当如何计算符合这样条件的m-i呢?我们的方法是计算总重构误差(reconsturction error),定义为:

    我们可以根据一个迭代算法来计算出这样的m,最终参考向量被设置为它所代表的所有实例的均值。算法的伪代码是:

    选择K个点作为初始中心;

    Repeat

    将每个点指派到最近的中心,形成K个簇;

    重新计算每个簇的中心;

    Until簇的中心不再变化

    初始化K-均值算法可以有不同的方法,比如简单随机选择k个实例作为初始的M,或者可计算所有数据的均值,并将一些小的随机变量加到均值上,得到k个初始的m值。

    参数K的去顶依赖于我们使用的聚类方法类型,我们可以将重构误差或对数似然作为k的函数绘制图形,找出“拐点”,即足够大的K之后,算法将开始分裂分组,此时重构误差不会大幅降低,而对数似然也不会大幅提高。

    其实K-均值聚类算法是期望最大化算法(Expectation-Maximization, EM)的一个特例。

    再给个详细解释:

         聚类属于无监督学习,以往的回归、朴素贝叶斯、SVM等都是有类别标签y的,也就是说样例中已经给出了样例的分类。而聚类的样本中却没有给定y,只有特征x,比如假设宇宙中的星星可以表示成三维空间中的点集clip_image002[10]。聚类的目的是找到每个样本x潜在的类别y,并将同类别y的样本x放在一起。比如上面的星星,聚类后结果是一个个星团,星团里面的点相互距离比较近,星团间的星星距离就比较远了。

         在聚类问题中,给我们的训练样本是clip_image004,每个clip_image006,没有了y。

         K-means算法是将样本聚类成k个簇(cluster),具体算法描述如下:

    1、 随机选取k个聚类质心点(cluster centroids)为clip_image008[6]

    2、 重复下面过程直到收敛 {

                   对于每一个样例i,计算其应该属于的类

                   clip_image009

                   对于每一个类j,重新计算该类的质心

                   clip_image010[6]

    }

         K是我们事先给定的聚类数,clip_image012[6]代表样例i与k个类中距离最近的那个类,clip_image012[7]的值是1到k中的一个。质心clip_image014[6]代表我们对属于同一个类的样本中心点的猜测,拿星团模型来解释就是要将所有的星星聚成k个星团,首先随机选取k个宇宙中的点(或者k个星星)作为k个星团的质心,然后第一步对于每一个星星计算其到k个质心中每一个的距离,然后选取距离最近的那个星团作为clip_image012[8],这样经过第一步每一个星星都有了所属的星团;第二步对于每一个星团,重新计算它的质心clip_image014[7](对里面所有的星星坐标求平均)。重复迭代第一步和第二步直到质心不变或者变化很小。

         下图展示了对n个样本点进行K-means聚类的效果,这里k取2。

         clip_image015

         K-means面对的第一个问题是如何保证收敛,前面的算法中强调结束条件就是收敛,可以证明的是K-means完全可以保证收敛性。下面我们定性的描述一下收敛性,我们定义畸变函数(distortion function)如下:

         clip_image016[6]

         J函数表示每个样本点到其质心的距离平方和。K-means是要将J调整到最小。假设当前J没有达到最小值,那么首先可以固定每个类的质心clip_image014[8],调整每个样例的所属的类别clip_image012[9]来让J函数减少,同样,固定clip_image012[10],调整每个类的质心clip_image014[9]也可以使J减小。这两个过程就是内循环中使J单调递减的过程。当J递减到最小时,clip_image018[6]和c也同时收敛。(在理论上,可以有多组不同的clip_image018[7]和c值能够使得J取得最小值,但这种现象实际上很少见)。

         由于畸变函数J是非凸函数,意味着我们不能保证取得的最小值是全局最小值,也就是说k-means对质心初始位置的选取比较感冒,但一般情况下k-means达到的局部最优已经满足需求。但如果你怕陷入局部最优,那么可以选取不同的初始值跑多遍k-means,然后取其中最小的J对应的clip_image018[8]和c输出。

    K-means补充:

    1.针对初始化点的改进。

    k-means算法是一种基本的聚类算法,这个算法的先决条件是

      1)必须选择最终结果需要聚为几类,就是k的大小。

      2)初始化聚类中心点,也就是seeds。

      当然,我们可以在输入的数据集中随机的选择k个点作为seeds,但是随机选择初始seeds可能会造成聚类的结果和数据的实际分布相差很大。既然选择初始的seeds这么重要,那有什么算法可以帮助选择初始的seeds吗?当然有,k-means++就是选择初始seeds的一种算法。

          k-means++算法选择初始seeds的基本思想就是:初始的聚类中心之间的相互距离要尽可能的远。wiki上对该算法的描述是如下:

    1. 从输入的数据点集合中随机选择一个点作为第一个聚类中心
    2. 对于数据集中的每一个点x,计算它与最近聚类中心(指已选择的聚类中心)的距离D(x)
    3. 选择一个新的数据点作为新的聚类中心,选择的原则是:D(x)较大的点,被选取作为聚类中心的概率较大
    4. 重复2和3直到k个聚类中心被选出来
    5. 利用这k个初始的聚类中心来运行标准的k-means算法

          从上面的算法描述上可以看到,算法的关键是第3步,如何将D(x)反映到点被选择的概率上,一种算法如下(详见此地):

    1. 先从我们的数据库随机挑个随机点当“种子点”
    2. 对于每个点,我们都计算其和最近的一个“种子点”的距离D(x)并保存在一个数组里,然后把这些距离加起来得到Sum(D(x))。
    3. 然后,再取一个随机值,用权重的方式来取计算下一个“种子点”。这个算法的实现是,先取一个能落在Sum(D(x))中的随机值Random,然后用Random -= D(x),直到其<=0,此时的点就是下一个“种子点”。
    4. 重复2和3直到k个聚类中心被选出来
    5. 利用这k个初始的聚类中心来运行标准的k-means算法

          可以看到算法的第三步选取新中心的方法,这样就能保证距离D(x)较大的点,会被选出来作为聚类中心了。至于为什么原因很简单,如下图 所示:  

                                                   

          假设A、B、C、D的D(x)如上图所示,当算法取值Sum(D(x))*random时,该值会以较大的概率落入D(x)较大的区间内,所以对应的点会以较大的概率被选中作为新的聚类中心。

    三、EM

    下面主要介绍EM的整个推导过程。

    1. Jensen不等式

          回顾优化理论中的一些概念。设f是定义域为实数的函数,如果对于所有的实数x,clip_image002,那么f是凸函数。当x是向量时,如果其hessian矩阵H是半正定的(clip_image004),那么f是凸函数。如果clip_image006或者clip_image008,那么称f是严格凸函数。

          Jensen不等式表述如下:

          如果f是凸函数,X是随机变量,那么

          clip_image010

          特别地,如果f是严格凸函数,那么clip_image012当且仅当clip_image014,也就是说X是常量。

          这里我们将clip_image016简写为clip_image018

          如果用图表示会很清晰:

          clip_image019

          图中,实线f是凸函数,X是随机变量,有0.5的概率是a,有0.5的概率是b。(就像掷硬币一样)。X的期望值就是a和b的中值了,图中可以看到clip_image010[1]成立。

          当f是(严格)凹函数当且仅当-f是(严格)凸函数。

          Jensen不等式应用于凹函数时,不等号方向反向,也就是clip_image021

    2. EM算法

          给定的训练样本是clip_image023,样例间独立,我们想找到每个样例隐含的类别z,能使得p(x,z)最大。p(x,z)的最大似然估计如下:

          clip_image024

          第一步是对极大似然取对数,第二步是对每个样例的每个可能类别z求联合分布概率和。但是直接求clip_image026一般比较困难,因为有隐藏变量z存在,但是一般确定了z后,求解就容易了。

          EM是一种解决存在隐含变量优化问题的有效方法。竟然不能直接最大化clip_image028,我们可以不断地建立clip_image030的下界(E步),然后优化下界(M步)。这句话比较抽象,看下面的。

          对于每一个样例i,让clip_image032表示该样例隐含变量z的某种分布,clip_image032[1]满足的条件是clip_image034。(如果z是连续性的,那么clip_image032[2]是概率密度函数,需要将求和符号换做积分符号)。比如要将班上学生聚类,假设隐藏变量z是身高,那么就是连续的高斯分布。如果按照隐藏变量是男女,那么就是伯努利分布了。

    可以由前面阐述的内容得到下面的公式:

          clip_image035

          (1)到(2)比较直接,就是分子分母同乘以一个相等的函数。(2)到(3)利用了Jensen不等式,考虑到clip_image037是凹函数(二阶导数小于0),而且

          clip_image038

          就是clip_image039的期望(回想期望公式中的Lazy Statistician规则)

          设Y是随机变量X的函数clip_image041(g是连续函数),那么

          (1) X是离散型随机变量,它的分布律为clip_image043,k=1,2,…。若clip_image045绝对收敛,则有

          clip_image047

          (2) X是连续型随机变量,它的概率密度为clip_image049,若clip_image051绝对收敛,则有

          clip_image053

          对应于上述问题,Y是clip_image039[1],X是clip_image055clip_image057clip_image059,g是clip_image055[1]clip_image039[2]的映射。这样解释了式子(2)中的期望,再根据凹函数时的Jensen不等式:

          clip_image060

    可以得到(3)。

          这个过程可以看作是对clip_image028[1]求了下界。对于clip_image032[3]的选择,有多种可能,那种更好的?假设clip_image026[1]已经给定,那么clip_image028[2]的值就决定于clip_image057[1]clip_image062了。我们可以通过调整这两个概率使下界不断上升,以逼近clip_image028[3]的真实值,那么什么时候算是调整好了呢?当不等式变成等式时,说明我们调整后的概率能够等价于clip_image028[4]了。按照这个思路,我们要找到等式成立的条件。根据Jensen不等式,要想让等式成立,需要让随机变量变成常数值,这里得到:

          clip_image063

          c为常数,不依赖于clip_image065。对此式子做进一步推导,我们知道clip_image067,那么也就有clip_image069,(多个等式分子分母相加不变,这个认为每个样例的两个概率比值都是c),那么有下式:

          clip_image070

          至此,我们推出了在固定其他参数clip_image026[2]后,clip_image072的计算公式就是后验概率,解决了clip_image072[1]如何选择的问题。这一步就是E步,建立clip_image028[5]的下界。接下来的M步,就是在给定clip_image072[2]后,调整clip_image026[3],去极大化clip_image028[6]的下界(在固定clip_image072[3]后,下界还可以调整的更大)。那么一般的EM算法的步骤如下:

    循环重复直到收敛 {

          (E步)对于每一个i,计算

                      clip_image074

          (M步)计算

                      clip_image075

          那么究竟怎么确保EM收敛?假定clip_image077clip_image079是EM第t次和t+1次迭代后的结果。如果我们证明了clip_image081,也就是说极大似然估计单调增加,那么最终我们会到达最大似然估计的最大值。下面来证明,选定clip_image077[1]后,我们得到E步

          clip_image083

          这一步保证了在给定clip_image077[2]时,Jensen不等式中的等式成立,也就是

          clip_image084

          然后进行M步,固定clip_image086,并将clip_image088视作变量,对上面的clip_image090求导后,得到clip_image092,这样经过一些推导会有以下式子成立:

          clip_image093

          解释第(4)步,得到clip_image092[1]时,只是最大化clip_image090[1],也就是clip_image095的下界,而没有使等式成立,等式成立只有是在固定clip_image026[4],并按E步得到clip_image097时才能成立。

          况且根据我们前面得到的下式,对于所有的clip_image097[1]clip_image026[5]都成立

          clip_image098

          第(5)步利用了M步的定义,M步就是将clip_image088[1]调整到clip_image100,使得下界最大化。因此(5)成立,(6)是之前的等式结果。

          这样就证明了clip_image102会单调增加。一种收敛方法是clip_image102[1]不再变化,还有一种就是变化幅度很小。

          再次解释一下(4)、(5)、(6)。首先(4)对所有的参数都满足,而其等式成立条件只是在固定clip_image026[6],并调整好Q时成立,而第(4)步只是固定Q,调整clip_image026[7],不能保证等式一定成立。(4)到(5)就是M步的定义,(5)到(6)是前面E步所保证等式成立条件。也就是说E步会将下界拉到与clip_image102[2]一个特定值(这里clip_image088[2])一样的高度,而此时发现下界仍然可以上升,因此经过M步后,下界又被拉升,但达不到与clip_image102[3]另外一个特定值一样的高度,之后E步又将下界拉到与这个特定值一样的高度,重复下去,直到最大值。

          如果我们定义

          clip_image103

          从前面的推导中我们知道clip_image105,EM可以看作是J的坐标上升法,E步固定clip_image026[8],优化clip_image107,M步固定clip_image107[1]优化clip_image026[9]

     

         下面累述一下K-means与EM的关系,首先回到初始问题,我们目的是将样本分成k个类,其实说白了就是求每个样例x的隐含类别y,然后利用隐含类别将x归类。由于我们事先不知道类别y,那么我们首先可以对每个样例假定一个y吧,但是怎么知道假定的对不对呢?怎么评价假定的好不好呢?我们使用样本的极大似然估计来度量,这里是就是x和y的联合分布P(x,y)了。如果找到的y能够使P(x,y)最大,那么我们找到的y就是样例x的最佳类别了,x顺手就聚类了。但是我们第一次指定的y不一定会让P(x,y)最大,而且P(x,y)还依赖于其他未知参数,当然在给定y的情况下,我们可以调整其他参数让P(x,y)最大。但是调整完参数后,我们发现有更好的y可以指定,那么我们重新指定y,然后再计算P(x,y)最大时的参数,反复迭代直至没有更好的y可以指定。

         对应于K-means来说就是我们一开始不知道每个样例clip_image020[10]对应隐含变量也就是最佳类别clip_image022[6]。最开始可以随便指定一个clip_image022[7]给它,然后为了让P(x,y)最大(这里是要让J最小),我们求出在给定c情况下,J最小时的clip_image014[10](前面提到的其他未知参数),然而此时发现,可以有更好的clip_image022[8](质心与样例clip_image020[11]距离最小的类别)指定给样例clip_image020[12],那么clip_image022[9]得到重新调整,上述过程就开始重复了,直到没有更好的clip_image022[10]指定。这样从K-means里我们可以看出它其实就是EM的体现,E步是确定隐含类别变量clip_image024[6],M步更新其他参数clip_image018[9]来使J最小化。这里的隐含类别变量指定方法比较特殊,属于硬指定,从k个类别中硬选出一个给样例,而不是对每个类别赋予不同的概率。总体思想还是一个迭代优化过程,有目标函数,也有参数变量,只是多了个隐含变量,确定其他参数估计隐含变量,再确定隐含变量估计其他参数,直至目标函数最优。

    3. 重新审视混合高斯模型

          我们已经知道了EM的精髓和推导过程,再次审视一下混合高斯模型。之前提到的混合高斯模型的参数clip_image109clip_image111计算公式都是根据很多假定得出的,有些没有说明来由。为了简单,这里在M步只给出clip_image113clip_image115的推导方法。

    E步很简单,按照一般EM公式得到:

          clip_image116

          简单解释就是每个样例i的隐含类别clip_image055[2]为j的概率可以通过后验概率计算得到。

          在M步中,我们需要在固定clip_image072[4]后最大化最大似然估计,也就是

          clip_image118

          这是将clip_image120的k种情况展开后的样子,未知参数clip_image122clip_image124

          固定clip_image126clip_image128,对clip_image130求导得

          clip_image131

          等于0时,得到

          clip_image132

          这就是我们之前模型中的clip_image115[1]的更新公式。

          然后推导clip_image126[1]的更新公式。看之前得到的

          clip_image133

          在clip_image113[1]clip_image115[2]确定后,分子上面的一串都是常数了,实际上需要优化的公式是:

          clip_image134

          需要知道的是,clip_image126[2]还需要满足一定的约束条件就是clip_image136

          这个优化问题我们很熟悉了,直接构造拉格朗日乘子。

          clip_image137

          还有一点就是clip_image139,但这一点会在得到的公式里自动满足。

          求导得,

          clip_image141

          等于0,得到

          clip_image142

          也就是说clip_image143再次使用clip_image136[1],得到

          clip_image144

          这样就神奇地得到了clip_image146

          那么就顺势得到M步中clip_image126[3]的更新公式:

          clip_image147

          clip_image111[1]的推导也类似,不过稍微复杂一些,毕竟是矩阵。结果在之前的混合高斯模型中已经给出。

    4. 总结

          如果将样本看作观察值,潜在类别看作是隐藏变量,那么聚类问题也就是参数估计问题,只不过聚类问题中参数分为隐含类别变量和其他参数,这犹如在x-y坐标系中找一个曲线的极值,然而曲线函数不能直接求导,因此什么梯度下降方法就不适用了。但固定一个变量后,另外一个可以通过求导得到,因此可以使用坐标上升法,一次固定一个变量,对另外的求极值,最后逐步逼近极值。对应到EM上,E步估计隐含变量,M步估计其他参数,交替将极值推向最大。EM中还有“硬”指定和“软”指定的概念,“软”指定看似更为合理,但计算量要大,“硬”指定在某些场合如K-means中更为实用(要是保持一个样本点到其他所有中心的概率,就会很麻烦)。

          另外,EM的收敛性证明方法确实很牛,能够利用log的凹函数性质,还能够想到利用创造下界,拉平函数下界,优化下界的方法来逐步逼近极大值。而且每一步迭代都能保证是单调的。最重要的是证明的数学公式非常精妙,硬是分子分母都乘以z的概率变成期望来套上Jensen不等式,前人都是怎么想到的。

          在Mitchell的Machine Learning书中也举了一个EM应用的例子,明白地说就是将班上学生的身高都放在一起,要求聚成两个类。这些身高可以看作是男生身高的高斯分布和女生身高的高斯分布组成。因此变成了如何估计每个样例是男生还是女生,然后在确定男女生情况下,如何估计均值和方差,里面也给出了公式,有兴趣可以参考。

    四、聚类后的监督学习

    聚类可以用来探查数据,理解数据的结构。维度归约方法用来发现变量间的相关性,从而对变量分组;而聚类方法用于发现实例间的相似性,从而对实例分组。

    聚类的一个最直接应用就是分类问题,一旦发现实例间存在基于某种相似性的分组,那么可以对分组进行命名标记,定义属性,比如“客户关系管理”中对客户进行分组。

    聚类也可以作为监督式学习的预处理步骤,我们先了解发生了什么,然后学习它意味着什么。

    五、层次聚类

    上面的聚类方法通过混合模型拟合数据,或找出最小化重构误差的分组模式,还有一些聚类方法只关注实例间的相似性,对数据没有其他要求。这里的目标是找出分组,使得一个分组汇总的对象比不在一个分组中的对象更相似,这种方法称为层次聚类(hierarchiacl clustering)。

    层次聚类的关键是度量相似性,常用的就是欧式距离(向量对应分量差的组合)和绝对值距离(向量间距离)。在单链接聚类中,距离定义为两个分组的所有可能元素之间的最小距离,而全链接聚类中,两个分组间的距离则取所有可能元素之间的最大距离。

           K-Means属于平面聚类(Flat Clustering),因为这些算法的输出都是返回一个平面的无结构的聚类集合,所以叫做Flat clustering;平面聚类有一个缺陷就是要选择聚类的数目以及初始点,这对于没有经验的人员来说是一件很棘手的工作,因为聚类结果的好坏完全依赖于这一参数的选择,所以很多时候可以考虑下层次聚类算法,避免了聚类数量和初始点的选择。层次聚类算法有多种形式,这里介绍的这个叫做层次凝聚聚类算法(Hierarchical Agglomerative Clustering),简称HAC,其主要思想就是,先把每一个样本点当做一个聚类,然后不断重复的将其中最近的两个聚类合并(就是凝聚的含义),直到满足迭代终止条件。

    HAC具体实现步骤:

    1)将训练样本集中的每个数据点都当做一个聚类;

    2)计算每两个聚类之间的距离,将距离最近的或最相似的两个聚类进行合并;

    3)重复上述步骤,直到得到的当前聚类数是合并前聚类数的10%,即90%的聚类都被合并了;当然还可以设置其他终止条件,这样设置是为了防止过度合并。

    很明显,还是一样的老套路,唯一的新鲜处在于第二步中,如何度量两个聚类间的相似度,关于这个主要有三种定义:

    1)单链(Single-link):不同两个聚类中离得最近的两个点之间的距离,即MIN;

    2)全链(Complete-link):不同两个聚类中离得最远的两个点之间的距离,即MAX;

    3)平均链(Average-link):不同两个聚类中所有点对距离的平均值,即AVERAGE;

    不难发现,其中前两种定义的出发点是那些点集中的特殊点或外点,如噪点;而最后一种定义相对来说就不那么稳定了,所以又有人提出了使用距离的中值,这样可以排除一些个别点的干扰。

    可以看下图效果(基于单链),黑色点是噪声点:

           这是一种自下而上(bottom-up)的层次聚类,因此叫做层次凝聚聚类(Hierarchical Agglomerative Clustering),由于其计算点对距离时需要多次遍历,所以计算量可想而知,并且每次迭代只能合并两个聚类,时间复杂度上同样缺乏优势,因此实际应用中没有Flat clustering那么受欢迎,但是由于其避免了聚类数以及初始点的选择,而且不会陷入局部最优,在一些二次复杂度的问题中还是应该考虑的;在最早的CBIR系统中,HAC被应用到词袋技术中,如下图:

     

    另外还有一种层次聚类算法,叫做自上而下的,这种形式的聚类主要是使用了一种分离聚类的方法,这里就不打算深入了,需要的可参考http://nlp.stanford.edu/IR-book/html/htmledition/hierarchical-agglomerative-clustering-1.html#sec:hac,里面有很详细的关于层次聚类的东西。

    Refer: 《机器学习导论》,Ethen Alpaydin(土耳其),机械工业出版社

    

    

    展开全文
  • 参数学习方法:  假设了一个在整个输入空间上有效的模型,将问题归结为在样本上估计少量参数,(如:线性模型估计w,高斯分布估计mu和sigma).参数学习方法假定了一个模型,当模型假定不成立,或者样本不是一个分组...

    转自:http://blog.csdn.net/u013395544/article/details/53170207


    参数学习方法:

      假设了一个在整个输入空间上有效的模型,将问题归结为在样本上估计少量参数,(如:线性模型估计w,高斯分布估计mu和sigma).参数学习方法假定了一个模型,当模型假定不成立,或者样本不是一个分组,可能导致很大的误差。(如:语音识别,由于不同口音、性别、年龄、发音等,没有单个同样的模型).

    半参数方法:

      为样本每个分组假定一个参数模型,(如:使用混合分布估计输入样本).

    非参数方法:

      只假定相似输入具有相似输出(如:k近邻),非参数方法使用合适的聚类度量相似性,对于输入样本,从训练集中找出它们的相似示例(输入样本的邻域),并由相似的实例插值得到正确的输入。参数模型定义了一个全局模型,所以训练样本都影响最终估计,而非参数方法不存在全局模型,需要时估计局部模型(如:局部加权线性回归),它们只受邻近训练样本影响,是局部响应.因此非参数模型不是固定的,复杂性依赖训练集大小,非参数学习方法又称基于实例或基于记忆的方法,输入样本搜索训练集中相似样本,并基于相似子集插值。


    展开全文
  • 半参数回归模型综述

    2013-09-18 14:34:53
    文章介绍了半参数模型的基本结构及基本计算方法
  • DBSCAN(Density-Based Spatial Clustering of Applications with Noise,具有噪声的基于密度的聚类方法)是一种很典型的密度聚类算法,和K-Means,BIRCH这些一般只适用于凸样本集的聚类相比,DBSCAN既可以适用于凸样....
  • 对含有MA(3)误差项的面板数据模型,应用半参数计量经济学理论,在相关假设基础上推导出半参数估计方法,并根据蒙特卡洛模拟对这种方法进行实证检验,结果证明这种半参数估计方法是可行的,并且相对参数估计方法(最小二乘...
  • 对含有MA(3)误差项的面板数据模型,应用半参数计量经济学理论,在相关假设基础上推导出半参数估计方法,并根据蒙特卡洛模拟对这种方法进行实证检验,结果证明这种半参数估计方法是可行的,并且相对参数估计方法(最小二乘...
  • 参数回归是我们最长用的模型。与参数回归相对的非参数回归,这种模型对变量分布等假定并不是很严等,因此可以说扩展...非参数方法一般适用于低维空间(较少的解释变量)。该局部加权回归曲线是利用点附近的点信息,使用
  • 系统学习机器学习之非参数方法

    千次阅读 2015-12-18 13:21:35
    前面的章节中,我们介绍了参数和半参数方法,这两种方法在实际训练前都需要对数据遵从的模型进行一个假定,这个假定可以是一个已知的概率分布或混合分布。参数方法的优点是把估计概率密度、判别式或回归函数问题归结...
  • 神经网络参数初始化方法

    千次阅读 2019-09-14 10:29:31
    所有的参数初始化为0或者相同的常数2. 随机初始化3. Batch Normalization4. Xavier限制均匀分布正态分布5. MSRA正态分布均匀分布总结及使用的概率公式 神经网络模型一般依靠随机梯度下降进行模型训练和参数更新,...
  • 【机器学习】(8):非参数方法

    千次阅读 2015-04-21 15:10:13
    前面的章节中,我们介绍了参数和半参数方法,这两种方法在实际训练前都需要对数据遵从的模型进行一个假定,这个假定可以是一个已知的概率分布或混合分布。参数方法的优点是把估计概率密度、判别式或回归函数问题归结...
  • MyBatis面试题(2020最新版)

    万次阅读 多人点赞 2019-09-24 16:40:33
    整理好的MyBatis面试题库,史上最全的MyBatis面试题,...MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plai...
  • java反射提供了很多方法,获取所有的方法,获取所有的参数类型等,但是却没有一个方法能够帮助我们获取方法参数名列表。 首先: 为什么我们需要获取到方法对应的参数名称? 原因是例如mybatis的mapper接口中...
  • 粒子群算法及其改进算法

    万次阅读 多人点赞 2019-07-01 19:27:08
    c1、c2和w =则是一开始给定的一些参数,至于参数的给定取决于你自己每次测试这个程序所得到的经验–即哪些参数你跑出的结果比较好就选择哪些参数。 在这里再插一句,在我的实践中认为没有必要去限制迭代过程中速度...
  • 2. 当构造方法参数过多时使用 builder 模式 静态工厂和构造方法都有一个限制:它们不能很好地扩展到很多可选参数的情景。请考虑一个代表包装食品上的营养成分标签的例子。这些标签有几个必需的属性——每次建议的...
  • 估计参数方法:最大似然估计、贝叶斯推断

    千次阅读 多人点赞 2019-12-13 17:00:47
    我们如何计算高斯分布的参数μ 、σ的最大似然估计? 我们想要计算的是观测到所有数据的全概率,即所有观测到的数据点的联合概率分布。为此我们需要计算一些条件概率,这可能会很困难。所以这里我们将做出我们的第...
  • 监督学习方法

    千次阅读 2019-01-09 22:59:51
    在只有少量标记样本,大部分数据都是无标记的情况下,可以通过监督学习方法,基于无标记样本与标记样本之间的相似度、无标记样本潜在的分布两个核心思想,对无标记的样本进行标记,该标记算法也称为标签传播...
  • 1判别模型与生成模型 上篇报告中提到的回归模型是判别模型,...比如说要确定一只羊是山羊还是绵羊,用判别模型的方法是先从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的...
  • 模糊PID算法及其MATLAB仿真(2)

    万次阅读 多人点赞 2019-04-16 18:05:07
    然后我自己想了一种方法(适用于7隶属度):区间宽度=(论域总长度/12)*2,也就是说一个大三角由两个区间组成。 b. 还有就是隶属度函数命名的时候,最好是有顺序的,单击隶属度函数曲线,设计顺序:mf1->NL;mf2...
  • 遥感图像分类

    万次阅读 多人点赞 2019-01-28 21:36:02
    遥感图像分类 一、背景简介 遥感图像分类就是利用计算机通过对遥感图像中各类地物的光谱信息和空间信息进行分析,...常见的分类方法有:监督分类、非监督分类法。 二、监督分类与非监督分类的区别及优缺点简要...
  • Qt的透明方法总结

    万次阅读 2016-09-22 17:15:47
    如果是QWidget,可以重写了它的void paintEvent(QPaintEvent *);事件 如果是QGraphics,可以重写它的void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, ...方法一:(适合自己绘画的图...
  • 内参、外参、畸变参数三种参数与相机的标定方法

    万次阅读 多人点赞 2019-07-17 14:21:28
    通过非线性优化的方法求解相机参数: 3.两步标定法:    1.Tsai的经典两步法   概念 : Tsai基于 RAC 约束(RadialAlignment Constrain)提出的两步法,在求解过程中将CCD(电耦合器件)阵列感光元的...
  • pytorch中的参数初始化方法总结

    万次阅读 多人点赞 2019-06-30 16:20:33
    PyTorch 中参数的默认初始化在各个层的 reset_parameters() 方法中。例如:nn.Linear 和 nn.Conv2D,都是在 [-limit, limit] 之间的均匀分布(Uniform distribution),其中 limit 是 1. / sqrt(fan_in) ,fan_in 是...
  • Shell脚本中参数传递方法常用有8种

    万次阅读 2016-01-23 18:29:32
    Shell脚本中参数传递方法常用有8种 1. $# 传递到脚本的参数个数 2. $* 以一个单字符串显示所有向脚本传递的参数变量。与位置变量不同,此选项参数可超过9个 3. $$ 脚本运行的当前进程ID号 4. $! 后台...
  • GM(1,1)灰色预测模型

    千次阅读 2019-10-31 14:30:22
    白色系统是说系统内部特征清楚明了,信息完全透明,黑色系统意味着外界对系统内部完全不了解,只能通过外界的联系加以观察研究,灰色系统介于黑白之间,信息属于透明状态,只有一部分信息是已知的且系统内各因素间...
  • Python基础教程,Python入门教程

    万次阅读 多人点赞 2019-07-15 10:23:21
    Python 是一门上手简单、功能强大、通用型的脚本编程语言。Python 类库极其丰富,这使得 Python 几乎...如果小朋友出于兴趣学习本教程,可先引导他阅读教程的前部分,这是基础;如果你想全面掌握 Python 编程,...
  • Java方法中的参数传递方式

    千次阅读 2015-08-04 19:11:25
    在Java语言中,参数传递时,一般存在两种参数传递的规则 1.按值传递(by value) 使用该方式传递的参数,参数原始的值不发生变化 适用范围:八种基本数据类型和String *String也是传递的
  • 什么是MIMO-OFDM技术

    千次阅读 2019-04-08 12:55:47
    根据这一相关性,可以得到参数的估计方法。MIMO-OFDM系统信道估计方法一般有三种:非盲信道估计、盲信道估计和盲信道估计。下面分别对这三种信道估计方法进行简单介绍。 4.1.1非盲信道估计 非盲信道估计是通过在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 238,430
精华内容 95,372
关键字:

半参数方法