摘要:
EM是我一直想深入学习的算法之一,第一次听说是在NLP课中的HMM那一节,为了解决HMM的参数估计问题,使用了EM算法。在之后的MT中的词对齐中也用到了。在Mitchell的书中也提到EM可以用于贝叶斯网络中。下面主要介绍EM的整个推导过程。1. Jensen不等式 回顾优化理论中的一些概念。设f是定义域为实数的函数,如果对于所有的实数x,,那么f是凸函数。当x是向量时,如果其hessian矩阵H是半正定的(),那么f是凸函数。如果或者,那么称f是严格凸函数。 Jensen不等式表述如下: 如果f是凸函数,X是随机变量,那么 特别地,如果f是严格凸函数,那么当且仅当,也就是说X是常量。 这里. 阅读全文
2013年8月1日
2013年7月31日
摘要:
11 SMO优化算法(Sequential minimal optimization)SMO算法由Microsoft Research的John C. Platt在1998年提出,并成为最快的二次规划优化算法,特别针对线性SVM和数据稀疏时性能更优。关于SMO最好的资料就是他本人写的《Sequential Minimal Optimization A Fast Algorithm for Training Support Vector Machines》了。我拜读了一下,下面先说讲义上对此方法的总结。首先回到我们前面一直悬而未解的问题,对偶函数最后的优化问题:要解决的是在参数上求最大值W的问题 阅读全文
摘要:
9 规则化和不可分情况处理(Regularization and the non-separable case)我们之前讨论的情况都是建立在样例线性可分的假设上,当样例线性不可分时,我们可以尝试使用核函数来将特征映射到高维,这样很可能就可分了。然而,映射后我们也不能100%保证可分。那怎么办呢,我们需要将模型进行调整,以保证在不可分的情况下,也能够尽可能地找出分隔超平面。看下面两张图:可以看到一个离群点(可能是噪声)可以造成超平面的移动,间隔缩小,可见以前的模型对噪声非常敏感。再有甚者,如果离群点在另外一个类中,那么这时候就是线性不可分了。这时候我们应该允许一些点游离并在在模型中违背限制条件( 阅读全文
摘要:
7 核函数(Kernels)考虑我们最初在“线性回归”中提出的问题,特征是房子的面积x,这里的x是实数,结果y是房子的价格。假设我们从样本点的分布中看到x和y符合3次曲线,那么我们希望使用x的三次多项式来逼近这些样本点。那么首先需要将特征x扩展到三维,然后寻找特征和结果之间的模型。我们将这种特征变换称作特征映射(feature mapping)。映射函数称作,在这个例子中我们希望将得到的特征映射后的特征应用于SVM分类,而不是最初的特征。这样,我们需要将前面公式中的内积从,映射到。至于为什么需要映射后的特征而不是最初的特征来参与计算,上面提到的(为了更好地拟合)是其中一个原因,另外的一个重要原 阅读全文
2013年7月30日
摘要:
【转载请注明出处】http://www.cnblogs.com/jerrylead1 简介支持向量机基本上是最好的有监督学习算法了。最开始接触SVM是去年暑假的时候,老师要求交《统计学习理论》的报告,那时去网上下了一份入门教程,里面讲的很通俗,当时只是大致了解了一些相关概念。这次斯坦福提供的学习材料,让我重新学习了一些SVM知识。我看很多正统的讲法都是从VC 维理论和结构风险最小原理出发,然后引出SVM什么的,还有些资料上来就讲分类超平面什么的。这份材料从前几节讲的logistic回归出发,引出了SVM,既揭示了模型间的联系,也让人觉得过渡更自然。2 重新审视logistic回归Logisti 阅读全文
摘要:
【转载请注明出处】http://www.cnblogs.com/jerrylead6 拉格朗日对偶(Lagrange duality) 先抛开上面的二次规划问题,先来看看存在等式约束的极值问题求法,比如下面的最优化问题: 目标函数是f(w),下面是等式约束。通常解法是引入拉格朗日算子,这里使用来表示算子,得到拉格朗日公式为 L是等式约束的个数。 然后分别对w和求偏导,使得偏导数等于0,然后解出w和。至于为什么引入拉格朗日算子可以求出极值,原因是f(w)的dw变化方向受其他不等式的约束,dw的变化方向与f(w)的梯度垂直时才能获得极值,而且在极值处,f(w)的梯度与其他等式梯度的线性组合平行,因 阅读全文
2013年7月29日
摘要:
一、BFGS算法 算法思想如下: Step1 取初始点,初始正定矩阵,允许误差,令; Step2 计算; Step3 计算,使得; Step4 令; Step5 如果,则取为近似最优解;否则转下一步; Step6 计算,, 令,转Step2.优点:1、不用直接计算Hessian矩阵;2、通过迭代的方式用一个近似矩阵代替Hessian矩阵的逆矩阵。缺点:1、矩阵存储量为,因此维度很大时内存不可接受;2、矩阵非稀疏会导致训练速度慢。二、L-BFGS算法 针对BFGS的缺点,主要在于如何合理的估计出一个Hessian矩阵的逆矩阵,L-BFGS的基本思想是只保存最近的m次迭代信息,从而大大降低数据存储 阅读全文
2013年7月18日
摘要:
显然我们只要知道1~x范围有多少幸运数(用f(x)表示),lucky(x,y)=f(y)-f(x-1).解法1. 计算排列数由于y#include#include#include#includeusing namespace std;bool isPrime(int n){ if(n0) { digit[n++]=x%10; x/=10; } int n1=0,n2=0,s1,s2,ans=0; for(i=n-1;i>0;i--) { for(j=0;j#include #include #include #inc... 阅读全文
2013年7月11日
摘要:
更相减损术更相减损术,又称"等值算法"关于约分问题,实质是如何求分子,分母最大公约数的问题。《九章算术》中介绍了这个方法,叫做”更相减损术”,数学家刘徽对此法进行了明确的注解和说明,是一个实用的数学方法。例:今有九十一分之四十九,问约之得几何?我们用(91,49)表示91和49的最大公约数.按刘徽所说,分别列出分子,分母。“以少减多,更相减损,求其等也,以等数约之,等数约之,即除也,其所以相减者皆等数之重叠,故以等数约之。”译文如下:约分的法则是:若分子、分母均为偶数时,可先被2除,否则,将分子与分母之数列在它处,然后以小数减大数,辗转相减,求它们的最大公约数,用最大公约数 阅读全文