自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

march_on的专栏

如果有不对的地方,欢迎留言

  • 博客(67)
  • 资源 (11)
  • 收藏
  • 关注

原创 lucene 进行去除停用词和词干提取

简单的示例代码如下,从文件中读取内容进行去除停用词和词干提取,结果保存在result中。Version matchVersion = Version.LUCENE_43;BufferedReader stopwordsReader = new BufferedReader( new FileReader("a.txt"));Analyzer analyzer = new Standar

2013-05-16 16:11:10 9260

转载 词干提取(stemming)和词形还原(lemmatization)

今天想完成词干提取的功能,发现提出来的结果并不是有意义的单词,原来还有词形还原这个技术。以下内容均摘自论文《词形还原方法及实现工具比较分析》词形还原(lemmatization),是把一个任何形式的语言词汇还原为一般形式(能表达完整语义),而词干提取(stemming)是抽取词的词干或词根形式(不一定能够表达完整语义)。词形还原和词干提取是词形规范化的两类重要方式,都能够达

2013-05-16 15:35:47 46556

原创 java 根据值获得键(map get key by value)

要处理一个文档集合,需要统计出corpus包含的所有单词,即统计出一个词汇表,词汇表中需要保存单词和相应的索引。当然,统计之前需要对文档进行stopword removal和text stemming。得到词汇表后,很自然地,我们有两种需求,一是根据单词得到它的索引,另外一个就是根据索引得到相应的单词。但是jdk中的map类只支持根据key来获取value,如果要根据value获取key就需要使用

2013-05-15 17:32:12 18986

原创 plsa 公式推导

plsa中完全数据(complete data)的似然函数:其中,表示文档i中的第j个单词的主题是否为k,如果为k则为1,否则为0相应地,对数似然函数如下然后Q function就是又有两个约束条件:下面利用拉格朗日乘法求参数拉格朗日函数:然后分别对参数求导:求解过程:以(1)为例,将(1)变换成如下形

2013-05-13 16:41:09 2571

原创 plsa matlab实现

google上可以搜到很多实现,貌似用的比较多的是下面这几个1.http://www.robots.ox.ac.uk/~vgg/software/2.http://lear.inrialpes.fr/~verbeek/software.php3.http://people.kyb.tuebingen.mpg.de/pgehler/code/index.html4.http://sh

2013-05-12 16:49:57 4098

原创 late fusion vs early fusion

在信息检索中,late fusion是指把多个检索系统的结果fusion在一起,early fusion是指把不同modality的特征fusion成一个统一的表示然后用于检索。二者的区别在于fusion的时机和fusion的对象不同。具体参见:http://staff.science.uva.nl/~cgmsnoek/pub/snoek-earlylate-acm2005.pdf

2013-05-09 09:07:51 5667

翻译 cross-modal retrieval and multi-modal retrieval的区别

与unimodal 检索不同,在cross-modal 检索中,检索结果的模态和查询的模态是不同的。比如,用户使用图像检索文本,视频和音频。cross-modal检索的关键在于对不同模态的关系进行建模,难点就是bridging the semantic gap。 然而,当要检索的文档包含多模态的时候,一般的cross-modal方法就无法直接应用到multi-modal retrieval。m

2013-05-06 14:47:22 3235

原创 java 需要注意的几个地方

1.比较对象是否相等==和!=比较的是对象的引用,而不是对象的内容。在比较对象内容时可以用equals函数2.文件IO操作文件IO操作后必须要close

2013-04-23 21:07:20 774

原创 matlab startup.m文件

在matlab 默认启动路径下(就是你的matlab.exe所在的目录)下新建一个startup.m文件, 加入一些命令,比如切换路径的命令,那么在重启的时候默认就切换到那个目录了

2013-03-26 20:47:43 8920 1

原创 win7卸载ubuntu

1. 下载MBRFix工具,放在c盘,利用命令提示符,进入软件所在目录,cd c:\mbrfix    (cd后面一个空格)2.输入 MBRFix /drive 0 fixmbr /yes3.重启,发现直接进入Win 7,现在可以用Win 7的磁盘管理(打不开的话,可以用Win 7优化大师里带的)格式化Ubuntu所在分区(就是没有盘符的,选定删除卷时会提示是其他系统的数据)了~~~

2013-03-15 09:09:56 916

原创 ubuntu12.04 飞鸽传书安装

对于局域网内的文件传输需求很少,偶尔想用的时候又忘了该用什么软件了。其实之前装过飞鸽传输,只不过很少用就卸掉了。为了防止以后再用,在这里记录一下。其实,很简单,先从官网下载linux下的安装包,然后解压缩tar xzvf QIpmsg_32_121019.tar.gz 然后,在当前目录下输入./QIpmsg就启动飞鸽传输了,还是很好用

2013-03-13 18:58:36 4796

原创 ubuntu12.04 远程软件remmia

ubuntu12.04 下貌似自带了远程桌面软件remmina,用起来挺好用的。首先在dash中搜索remmina,找到后打开。然后在remmina主界面上点击带有+号的那个图标。此时会弹出远程桌面设定对话框,在这个对话框里面可以指定远程连接使用的协议和服务器地址、用户名和密码。指定后也可以点击下面的保存按钮,这样以后在打开remmina时就不用重新输入了。具体的图文教程可以参考这里

2013-03-08 16:07:38 3104

原创 vim 批量注释及删除注释

1.ctrl+v进入可视化选择模式按住j或k键选择需要注释的部分2.按I进入插入模式,输入该语言的注释符号,比如c/c++需要输入“//”3.按ESC键进入命令模式此时,选中部分已经全部注释掉了删除注释1.ctrl+v进入可视化选择模式按住j或k或l等键选择需要删除的注释2.按d此时,选中的注释已经被删除了

2013-01-17 22:33:24 7075

原创 office 2010 中使用 mathtype6.8

在这里下载mathtype6.8下载后解压,选择MathType6.8简体中文版(加载&对象型),直接安装。安装过程中如果打开了office,程序会提示你关掉程序。安装后再次打开office,就可以看到mathtype已经加载了

2013-01-16 20:31:49 4570

原创 python print 自动换行

突然想用python写个乘法表练练手,发现python中print原来是自动换行的,不用再添加一个'\n',所以输出来的乘法表每个项占一行,解决的办法就是在print语句后面加一个逗号print "%d * %d = %d \t" %(j,i,i*j),ok,这样输出来就是我们看到的乘法表了

2013-01-11 23:27:02 27562

原创 回溯 图着色问题

图着色问题(Graph Coloring Problem, GCP),又称着色问题,是最著名的NP-完全问题之一。给定一个无向图G=(V, E),其中V为顶点集合,E为边集合,图着色问题即为将V分为K个颜色组,每个组形成一个独立集,即其中没有相邻的顶点。其优化版本是希望获得最小的K值。先考虑三着色问题。思路:1.对图中的每个顶点,选择三种颜色之一对其进行着色。2.如果该着色合法

2011-11-30 20:09:43 2434

原创 回溯 八皇后问题(递归和非递归)

8皇后问题:如何在8 x 8的国际象棋棋盘上安排8个皇后,使得没有两个皇后能互相攻击?( 如果两个皇后处在同一行、同一列或同一条对角线上,则她们能互相攻击。)解向量为长度为8的数组,记为solution。因为共有8个皇后,而棋盘刚好为8*8,所以每一行肯定会有一个皇后,那么我们约定solution[i]表示第i+1个皇后放在第i+1行的第几列。solution中的列从1开始记。回溯算法的思

2011-11-30 16:35:41 7052

原创 scanf小结

用c写一个双向链表,结果在scanf上总是出现问题:明明得输入3次结果每次都是2次就结束了。调试也没有个所以然来,上网查了一下是输入缓冲区的问题。貌似不是第一次遇到这个问题,所以在这里小结一下。我是在ubuntu下进行的。        考虑下面的程序:#include int main( void ){ char i,j; scanf("%c",&i); scanf("%

2011-11-21 12:44:17 816

原创 ubuntu11.10使用局域网中的xp下的共享打印机

先说方法:1.先安装samba ,终端输入:sudo apt-get install samba2.左侧unity面板上的系统设置-打印-添加-网络打印机-使用SAMBA的Windows打印机3.在smb://后面的文本框里面输入共享打印机的ip地址和共享名。实验室的打印机使用windows xp系统,所以说一下在xp下查看共享打印机的ip地址和共享名的步骤ip地址

2011-11-09 20:58:52 291

原创 Win7下硬盘安装ubuntu11.10

<!--@page {margin:2cm}p {margin-bottom:0.21cm}a:link {}-->参考文章:http://forum.ubuntu.org.cn/viewtopic.php?f=77&t=3484521.下载11.10镜像文件,地址:http://releases.ubuntu.com/11.10/,下载de

2011-11-08 11:26:54 1314

原创 单源最短路径(bellman-ford 、dijkstra)

对一个带权有向图G=(V,E),给定一个源顶点S,找出S到图中其他顶点v的最短路径即单源最短路径问题。该问题还有很多变体,像单终点最短路径、单对顶点最短路径、每对顶点间的最短路径等等。最短路径问题是具有最优子结构的:一对顶点间的最短路径包含了该路径上的顶点间的最短路径。直观上理解,如果该路径上的两个顶点间的路径pij不是最短路径,那么用这两个顶点间的最短路径代替pij,那么就会出现一条更短的路

2011-11-01 20:16:35 1474

原创 最小生成树算法(prim&kruskal)

无向连通图 G = (V, E)的生成树是它的极小连通子图:连接了图中所有的顶点,有保持图连通的最少的边,且不包含回路(最少的边这一条件已经隐含了不含回路的性质,同时,生成树是一种树,也是不允许有回路的)。在所有的生成树中,权值最小的树就是最小生成树(minimum spanning tree)。由最小生成树的性质可知,它的边数比顶点数小一,而且一个图的最小生成树往往是不唯一的。求解无向连通图

2011-11-01 20:08:01 2555

原创 深度优先搜索和广度优先搜索

将图记为G(V,E)。图的表示一般有两种方法:邻接矩阵和邻接表。邻接矩阵是一个为|V|*|V|的二维矩阵,记为array,array[i][j]表示节点i和节点j之间是否存在边,对于带权图(又称为网),array[i][j]还可以表示节点i和节点j之间边的权。因为邻接矩阵大小和图中的边数|E|无关,所以邻接矩阵更适合于稠密图(|E|接近|V|²)。邻接矩阵同样适合程序需要经常判断两个顶点之间是否存

2011-10-24 17:01:53 4188

原创 堆、堆排序、优先级队列(c++实现)

到目前为止,我所知道的堆有两种,一是内存的一种,常见的用途就是动态内存分配了(在c/c++中就是这样),另一种是这里所要论述的一种数据结构。一、堆数据结构中的堆又叫二叉堆,顾名思义,我们可以把它看成一颗完全二叉树,每个元素最多有2个孩子,分别看做左孩子和右孩子。根据元素和它的孩子的关系,堆又可以分为最大堆和最小堆。最大堆的性质是父母的值不小于左右(如果都有)的值,相应地,最小堆就是

2011-10-19 17:39:56 3580

原创 最长单调递增子序列

题目:给定一个序列X[0···n],找出它的最长的单调递增子序列(Longest Increasing Subsequence)分析:思路一:        将序列X按非递减顺序排列,形成新序列Y,问题就转变成求解X和Y的LCS。假设使用快速排序,则排序过程的时间复杂度为O(nlgn),而求两个序列的LCS的时间复杂度为O(n2)(因为X、Y长度相等),综合可知该解法的时间复杂度为

2011-09-11 22:23:54 12499

原创 动态规划—最长公共子序列LCS

最长公共子序列问题可以描述如下:给定两个序列X[0,····m]和Y[0,····n],找出X和Y的最大长度的公共子序列S,即最长公共子序列问题(longest common sequence )。分析:         假设Z[0,····k]是X和Y的一个LCS,

2011-09-11 16:03:02 1355

原创 快速排序的递归实现

快速排序通常是排序的最佳选择,因为其平均的运行时间为O(nlgn )。最坏情况下每次划分都产生两个分别包含n-1个元素和一个元素的区域,此时时间复杂度为o(n²)。最佳情况下每次划分都将数组分成两个长度差不多的区域,此时时间复杂度与平均性能差不多。       快速排序的递归

2011-09-10 16:37:20 1098

floyd-warshall算法(c++)

使用c++编写的floyd-warshall算法,还有《算法导论》上的另外一种动态规划解法。

2011-11-14

堆排序、优先级队列(c++模板实现)

使用c++模板实现的堆排序、优先级队列,在vs2010下编译运行通过。压缩文件里为两个工程文件,如果有vs2010的话解压缩打开sln文件就可以了,没有的话,新建工程将文件复制过去就ok了。如果有问题可以留言。

2011-10-19

活动选择问题代码(c++)

使用贪心算法和动态规划求解活动选择问题,使用c++描述。因为只能上传一个文件,所以把代码文件压缩了。里面共三个文件,两个是动态规划解法,一个是使用贪心算法求解。因为我这里使用的是VS2010,担心IDE不同可能运行有问题,所以没有传整个工程。

2011-09-22

图算法(c++模板)

用c++模板写的图算法,包括广搜、深搜、最小生成树算法(prim、kruskal)、单源最短路径(bellman-ford、dijkstra)、拓扑排序,prim、dijkstra算法使用优先级队列实现

2011-11-01

最长单调递增子序列LIS

我写的LIS算法,有两种思路,程序全在这个cpp文件中,可以运行

2011-09-11

最长公共子序列LCS(c++)

使用c++语言编写的LCS问题的求解过程

2011-09-11

三着色问题

使用c描述的图的三着色问题,学习回溯的程序。有递归和非递归两个版本.如果有问题,可以留言。

2011-11-30

汇编课程设计 :简单计算器的设计与实现

可以实现+,-,*,/四则运算,支持括号,操作数范围在0~255之间

2010-01-18

MATLAB课程设计与应用(第二版)课件 刘卫国主编

包含MATLAB程序设计与应用第二版1到10章的课件

2009-10-13

最长公共子序列LCS

使用c++编写的LCS问题的求解,可以运行,程序都在main文件中

2011-09-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除