解决word中分栏与脚注的冲突

word中存在很令人头疼的一个问题,就是在页面插入分节符进行分栏后,在前一节插入脚注后会将下一节挤到下一页。解决办法呢要分情况讨论了(以下均以word2007说明)。

Read More

管理好你的论文

论文读的多了,如何管理好一大堆论文就成了个问题。我的情况是这样的,平时使用两台机器,实验室里的机器是ubuntu系统,自己的笔记本是windows 7系统,经常是在这台电脑把A文章读了一半,换到另一台电脑时继续读A时,不得不重新下载或手工的拷过去,前面作的注释也丢了,甚是麻烦。一开始还勉强忍受着,但忍受的结果就是越来越麻烦,经常搞不清读过的论文在哪台机器上。最终,还是找了一个自认为不错的解决方案:SpiderOak+Jabref+Evernote。

Read More

Structured Learning和Structured SVM的学习(下)

  • 经验损失不为0的情况

在上面的部分中,经验损失为0意味着我们得到了一个完全符合训练样本要求的discriminative function f,即\(\forall ({x_i},{y_i}),f({x_i}) = {y_i}\)。然而,多数时候,我们无法得到满足前面式子中所有约束的可行解。因此,我们还是借鉴SVM 的思想,在优化问题中加入松弛变量,这样就使模型不必完全拟合训练集中的样本,从而得到下面的优化问题:

Read More

Structured Learning和Structured SVM的学习(上)

以前就听说过Structured Learning,但只知道其大体的概念。听师兄说现在用的挺多的,于是前一段时间断断续续的看了有关这方面的一些资料,在此总结一下。

在利用机器学习方法建模时,我们往往是寻找一个映射函数 f:X -> Y,将输入X 映射为输出Y。输入X的形式是多种多样的,但在“常规”的机器学习方法中,输出Y是一个number或者一个label,比如分类、回归、分布密度估计的各种方法。而Structured Learning中,Y不再局限在一个number,而可以是complex structured object,比如说是一副image,一个image region,一个label sequence,或是parse tree 等等。个人感觉,structured learning使我们能更加直接的解决问题,它提供了一种框架是我们能直接得到具体问题中想要的输出。理论上,感觉你可以把任何输出都作为一种结构。

Read More

对Kernel Method的一点理解

对于kernel的概念,之前有所了解,但还是很模糊。最近看了一篇相关的tutorial——“Kernel Method in Computer Vision”,作者是Christoph Lampert(cvpr2008 best paper得主)。文章写得清晰流畅,读后对核方法以及SVM有了更深的理解,收获颇丰。

Read More

PProcess:一个Python中的并行计算模块

当我们处理大量数据时,很多情况下,多个任务之间是相互独立并且可以同时进行的。当多个处理器可用时,我们也希望能利用并行计算技术充分利用硬件资源,提高效率。

在Python中,有多种选择来实现并行计算。在前一段时间的实验中,我分别尝试了两个并行计算库:Parallel PythonPProcess。两者都是Python中进行分布式计算的开源模块,能够将计算压力分布到多核CPU上。对于前者,优点是网上有很多介绍其使用的资源,包括这片中文的Tutorial;但缺点是,使用相对复杂,比如在使用时必须自己处理模块间的依赖关系。在实验中,我最终选择了PProcess这个并行计算模块,它最大的优点就是使用简单,同时从实验过程中来看,计算效率也是挺高的。

Read More

过去的两个月

转眼间,距离上篇博文已有两个月的时间。我还没想好如何写下这段日子,它就这么匆匆溜走了。

Read More

Structured SVM

最近看东西,接触了一些有关Structured SVM的研究应用。 Structured SVM可以理解为对传统SVM的一种扩展。所谓structured,是体现在svm的output上。传统的svm的输出是单变量,比如预测class label或者regression value等等。而structured svm允许学习一个分类器来产生structured output label。比如说可以用在句子分词上,输出是句子分词后的结构。还有用在排序上,输入是查询和相关的文档,输出的是这些文档的一个ranking。

Read More