算法
文章平均质量分 87
sunlylorn
2010.7校招加入腾讯目前就职于360搜索
展开
-
AC自动机算法详解
原文地址: http://www.cppblog.com/mythit/archive/2009/04/21/80633.html首先简要介绍一下AC自动机:Aho-Corasick automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一。一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有模式树(字典树)Trie和KMP模式匹配算法的基础知识。AC自动机算法分为3步:构造一棵Trie树,构造失败指针和模式匹配转载 2011-03-07 23:51:00 · 1574 阅读 · 0 评论 -
机器学习中的算法(1)-决策树模型组合之随机森林与GBDT
版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gmail.com前言: 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等。转载 2013-05-13 14:12:29 · 1158 阅读 · 0 评论 -
中文依存句法分析概述及应用
句法分析是自然语言处理领域的一个关键问题,如能将其有效解决,一方面,可对相应树库构建体系的正确性和完善性进行验证;另一方面,也可直接服务于各种上层应用,比如搜索引擎用户日志分析和关键词识别,比如信息抽取、自动问答、机器翻译等其他自然语言处理相关的任务。短语结构和依存结构是目前句法分析中研究最广泛的两类文法体系。这里先大概介绍下依存结构。依存文法最早由法国语言学家L.Tesniere在其转载 2013-05-13 14:23:34 · 2588 阅读 · 0 评论 -
如何预测用户query意图
有一个朋友问,一个用户搜索一个query是“百度”,怎么知道用户真正是想找什么呢。我回答说,分析之前搜索这个query的用户点了些什么结果啊。朋友继续问,如果没有用户点击呢。呃,如果没有点击,这个问题就比较复杂了。整理了下思路,于是写成了本文。主要描述了关于如何预测用户query意图。希望会有所帮助。首先我们的明确一个标准,如何判断我们对用户意图的猜测是正确的?转载 2013-05-13 14:10:34 · 1578 阅读 · 0 评论 -
基于论坛话题段落划分的答案识别
从实验室离开两年了,想不到毕业设计论文被发表出来了。哈哈http://www.aas.net.cn/qikan/Cpaper/zhaiyao.asp?bsid=14676*******************************************************我是华丽的分割线******************************************原创 2013-01-31 18:44:28 · 883 阅读 · 0 评论 -
文本去重之MinHash算法
1.概述 跟SimHash一样,MinHash也是LSH的一种,可以用来快速估算两个集合的相似度。MinHash由Andrei Broder提出,最初用于在搜索引擎中检测重复网页。它也可以应用于大规模聚类问题。2.Jaccard index 在介绍MinHash之前,我们先介绍下Jaccard index。转载 2012-08-06 14:58:04 · 19848 阅读 · 5 评论 -
随机排列生成算法的一些随想
这篇文章主要是一个闲文。如果您正在寻求一个理想的随机排列生成算法,直接阅读方法3,或是直接使用STL里提供的random_shuffle()方法另外请注意,这里所讨论的算法并不是新的。什么是随机排列? 一个随机排列是一组位于随机位置的对象。给定一个对象,1, 2, 3 ... n,随机排列看起来就是,p1, p2, p3 ... pn其中px是从原来的对象集合中选取转载 2012-08-06 16:08:22 · 3538 阅读 · 0 评论 -
文本去重之SimHash算法
说到文本相似性计算,大家首先想到的应该是使用向量空间模型VSM(Vector Space Model)。使用VSM计算相似度,先对文本进行分词,然后建立文本向量,把相似度的计算转换成某种特征向量距离的计算,比如余弦角、欧式距离、Jaccard相似系数等。这种方法存在很大一个问题:需要对文本两两进行相似度比较,无法扩展到海量文本的处理。想想像Google这种全网搜索引擎,收录了上百亿的网页,爬虫转载 2012-08-06 15:38:37 · 2360 阅读 · 0 评论 -
simhash算法的原理
第一次听说google的simhash算法[1]时,我感到很神奇。传统的hash算法只负责将原始内容尽量均匀随机地映射为一个签名值,原理上相当于伪随机数产生算法。传统hash算法产生的两个签名,如果相等,说明原始内容在一定概率下是相等的;如果不相等,除了说明原始内容不相等外,不再提供任何信息,因为即使原始内容只相差一个字节,所产生的签名也很可能差别极大。从这个意义上来说,要设计一个hash算法,对转载 2012-08-06 11:46:21 · 1801 阅读 · 0 评论 -
跳跃表Skip List
这是跳表的作者William Pugh给出的解释:Skip lists are a data structure that can be used in place of balanced trees. Skip lists use probabilistic balancing rather than strictly enforced balancing and as a result转载 2012-05-23 14:26:47 · 878 阅读 · 0 评论 -
BM25算法浅析
BM25 is a bag-of-words retrieval function that ranks a set of documents based on the query terms appearing in each document, regardless of the inter-relationship between the query terms within a docum转载 2011-11-23 21:31:39 · 4637 阅读 · 0 评论 -
BloomFilter——大规模数据处理利器
Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合。 一. 实例 为了说明Bloom Filter存在的重要意义,举一个实例: 假设要你转载 2011-09-01 22:12:53 · 740 阅读 · 0 评论 -
字符串哈希函数
所有内容均来自于:http://www.partow.net/programming/hashfunctions/ unsigned int RSHash(char* str, unsigned int len){ unsigned int b = 378551; unsigned int a = 63689; unsigned int转载 2011-06-22 18:03:00 · 819 阅读 · 0 评论 -
海量数据的处理方法
文章地址记不清了……下面的方法是对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题。1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点: 对于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数对应位都是1说明存在,很明显这 个过程并不保证查找的结果是100%正确的。同时也不支持删除一个已经插入的关键字,因为该关键字对应的位会牵动到其他的关键转载 2011-05-21 11:55:00 · 763 阅读 · 0 评论 -
在OpenCV中自适应确定canny算法的分割门限
在OpenCV中用canny算子进行边缘检测速度很快,不过有点不爽的就是高低阈值需要输入。在OpenCV中自适应确定canny算法的分割门限 一文仿照matlab中的做法,对canny函数进行了修改,以便当用户没有指定高低阈值时,由函数自适应确定阈值。代码如下:// 仿照matlab,自适应求高低两个门限CV_IMPL void AdaptiveFindThreshold(CvMat *原创 2012-09-25 10:35:44 · 16856 阅读 · 17 评论