随笔分类 -  最优化理论与算法学习

摘要:一直记不住这些算法的推导,所以打算详细点写到博客中以后不记得就翻阅自己的笔记。 泰勒展开式 最初的泰勒展开式,若 在包含 的某开区间(a,b)内具有直到n+1阶的导数,则当x∈(a,b)时,有: 令可得到如下式子: 泰勒展开式,我的理解就有两个式子。上述的是当x是标量时的展开式,当x是多元时可以根据 阅读全文
posted @ 2016-07-04 22:43 Key_Ky 阅读(975) 评论(0) 推荐(0)
摘要:上篇记录了一些决策树算法,这篇是借OC-SVM填回SMO在SVM中的数学推导这个坑。 参考文献: 这里回顾了SMO求解SVM的具体数学推导。同理SMO算法也可以用来求解OC-SVM,具体的求解的数学推导以后有空再写。 阅读全文
posted @ 2016-04-27 18:42 Key_Ky 阅读(1150) 评论(0) 推荐(0)
摘要:已经好久没写了,正好最近需要做分享所以上来写两篇,这篇是关于决策树的,下一篇是填之前SVM的坑的。 参考文献: 阅读全文
posted @ 2016-04-27 18:28 Key_Ky 阅读(829) 评论(0) 推荐(0)
摘要:研究生做的稍微有点水平的就这两个项目了:一个是利用SVM做手绘草图的分类,另一个是利用JointBoost+CRF做手绘草图的分割。总结得出的经验是做研究的方法就是将别人大神的代码看懂然后改成适合自己项目的代码,转而这次记录的是另一个项目就是利用JointBoost+CRF做手绘草图的分割。 引言 阅读全文
posted @ 2016-02-18 22:29 Key_Ky 阅读(1796) 评论(2) 推荐(0)
摘要:SMO的数学公式通过Platt的论文和看这个博客:http://www.cnblogs.com/jerrylead/archive/2011/03/18/1988419.html,大概弄懂了。推导以后再写,贴上一个自己写的SMO的代码。function [ model ] = smoSolver( ... 阅读全文
posted @ 2016-01-09 20:28 Key_Ky 阅读(778) 评论(0) 推荐(0)
摘要:上一篇博客讨论了高维映射和核函数,也通过例子说明了将特征向量映射到高维空间中可以使其线性可分。然而,很多情况下的高维映射并不能保证线性可分,这时就可以通过加入松弛变量放松约束条件。同样这次的记录仍然通过例子来说明松弛变量的作用和必要性。转:参考文献:http://www.cnblogs.com/je... 阅读全文
posted @ 2016-01-04 21:31 Key_Ky 阅读(383) 评论(0) 推荐(0)
摘要:上一篇博客将了在数据集线性可分的情况下的支持向量机,这篇主要记录如何通过映射到高维解决线性不可分的数据集和如何通过核函数减少内积计算量的理论思想。[5]径向基函数的核函数:https://www.quora.com/Why-does-the-RBF-radial-basis-function-ker... 阅读全文
posted @ 2015-12-30 20:27 Key_Ky 阅读(504) 评论(0) 推荐(0)
摘要:快毕业啦~~记得上一篇论文利用JointBoost+CRF做手绘草图的分割项目在3月份完结后,6月份去实习,9月份也没怎么认真找工作就立刻回来赶论文(由于分割项目与人合作难以写入毕业论文),从9月到1月一直狂写程序,其中过程就如去年10月开始做分割项目一样艰辛,不过现在工作也定了,论文也差不多了,可... 阅读全文
posted @ 2015-12-30 14:49 Key_Ky 阅读(535) 评论(0) 推荐(0)
摘要:玩了混合高斯模型,先转几个参考资料,曾经试过自己写代码,结果发现混合高斯模型矩阵运算对我的计算能力要求很高,结果失败了,上网找了代码学习一下大牛们的编程思想,事实证明数学写出来的公式虽然很美,但是现实写代码的时候要考虑各种问题~~~ 1.http://www.cnblogs.com/cfantais 阅读全文
posted @ 2014-03-17 18:55 Key_Ky 阅读(4167) 评论(1) 推荐(0)
摘要:1.编码这篇文章中遗传算法对TSP问题的解空间编码是十进制编码。如果有十个城市,编码可以如下:0 1 2 3 4 5 6 7 8 9这条编码代表着一条路径,先经过0,再经过1,依次下去。2.选择选择操作仍然是轮盘赌模型,虽然不会出现路径长度为负数的情况,但是需要考虑与上篇文章不同的是求的是最小值。因此在代码中概率的计算为:3.交叉4.变异变异操作就是交换两个城市,例如:0 1 2 3 40 2 1 3 45.代码实现#include#include#include#include#include#include#include#includeusing namespace std;const 阅读全文
posted @ 2013-12-25 16:50 Key_Ky 阅读(5032) 评论(0) 推荐(0)
摘要:术语说明由于遗传算法是由进化论和遗传学机理而产生的搜索算法,所以在这个算法中会用到很多生物遗传学知识,下面是我们将会用来的一些术语说明:一、染色体(Chronmosome)染色体又可以叫做基因型个体(individuals),一定数量的个体组成了群体(population),群体中个体的数量叫做群体大小。二、基因(Gene)基因是串中的元素,基因用于表示个体的特征。例如有一个串S=1011,则其中的1,0,1,1这4个元素分别称为基因。它们的值称为等位基因(Alletes)。三、基因地点(Locus)基因地点在算法中表示一个基因在串中的位置称为基因位置(Gene Position),有时也简称 阅读全文
posted @ 2013-12-23 00:26 Key_Ky 阅读(6655) 评论(0) 推荐(0)
摘要:通过学习斯坦福公开课的线性规划和梯度下降,参考他人代码自己做了测试,写了个类以后有时间再去扩展,代码注释以后再加,作业好多:import numpy as npimport matplotlib.pyplot as pltimport randomclass dataMinning: datasets = [] labelsets = [] addressD = '' #Data folder addressL = '' #Label folder npDatasets = np.zeros(1) npLabelsets = np.zer... 阅读全文
posted @ 2013-12-10 22:01 Key_Ky 阅读(7283) 评论(0) 推荐(0)
摘要:// monituihuo.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include #include #include #include using namespace std;const int MAXN = 27; //城市数量const double MAX = 27.0; //城市数量const double INIT_T = 3000; //初始温度const double RATE = 0.95; //温度衰减率const double FINNAL_T = 1E- 阅读全文
posted @ 2013-12-01 14:34 Key_Ky 阅读(575) 评论(0) 推荐(0)
摘要:进退法例子,遇到具体问题还得修改,以后最速下降梯度法的梯度方向是变化的,这是其中一个要考虑的改变。进退法具体算法:实现代码:#include "StdAfx.h"#include #include #include #define N 2using namespace std;float testFunction(float z[N]){ float f; f = z[0] * z[0] + z[1] * z[1] - 8 * z[0] - 12 * z[1] + 52; //函数 return(f);}void main(){ float x[N],s[N],f[N].. 阅读全文
posted @ 2013-11-17 10:13 Key_Ky 阅读(1675) 评论(0) 推荐(0)