8得票2回答
理解循环多项式哈希碰撞

我有一个代码,使用循环多项式滚动哈希(Buzhash)计算源代码的n-gram哈希值。如果我使用小的哈希值(7-8位),那么会出现一些碰撞,即不同的n-gram映射到相同的哈希值。如果我将哈希值中的位数增加到31,那么就没有碰撞了——所有的n-gram都映射到不同的哈希值。 我想知道为什么会...

55得票5回答
Python中N-Gram、tf-idf和余弦相似度的简单实现

我需要比较存储在数据库中的文档,并得出0到1之间的相似度分数。 我需要使用的方法必须非常简单。实现一个vanilla版本的n-grams(其中可以定义使用多少个grams),以及tf-idf和余弦相似性的简单实现。 是否有任何程序可以做到这一点?还是我应该从头开始编写?

8得票5回答
考虑QWERTY键盘布局的随机键盘击键检测

最近一次维基百科破坏检测比赛的获胜者建议,可以通过“考虑QWERTY键盘布局检测随机键盘敲击”来提高检测效果。 例如:woijf qoeoifwjf oiiwjf oiwj pfowjfoiwjfo oiwjfoewoh 是否有已经实现这个功能的软件(最好是免费且开源)? 如果没有,是否...

7得票3回答
非英语语言(CJK等)中的n-gram名称分析

我正在进行人员数据库去重工作。首先,我正在遵循基本的两步过程,以避免在整个数据库上进行O(n^2)操作,如文献所述。首先,“块”-迭代整个数据集,并根据名称中存在的n-grams和缩写将每个记录分到相应的箱子中。 其次,对于每个箱子中的所有记录,使用Jaro-Winkler进行比较,以获得它们...

43得票1回答
理解sklearn中CountVectorizer的`ngram_range`参数

我有些困惑如何在Python的scikit-learn库中使用ngrams,特别是在CountVectorizer中ngram_range参数的工作方式。 运行以下代码:from sklearn.feature_extraction.text import CountVectorizer vo...

20得票5回答
如何在Python中计算skipgrams?

一个k skipgram 是一个ngram,它是所有ngrams的超集,并且每个(k-i)skipgram直到(k-i)==0(包括0 skip grams)。那么如何在Python中高效地计算这些skipgrams呢? 以下是我尝试过的代码,但它并没有像预期的那样运行: <pre&...

12得票1回答
现在已经移除的模块'nltk.model.NGramModel'是否有替代品?

我已经连续两天在寻找替代方案,但没有找到任何相关的内容。 基本上,我试图获得一个从语料库中选择的原始句子中通过替换某些单词而合成的句子的概率分数。 我尝试了Collocations,但是得到的得分并不是很有帮助。所以我尝试使用语言模型的概念,只发现似乎有用的“model”模块已经因为一些错误...

68得票3回答
Elasticsearch:查找子字符串匹配

我希望您能够进行精确词匹配和部分单词/子字符串匹配。例如,如果我搜索“男士剃须刀”,那么应该能够在结果中找到“男士剃须刀”。但是如果我搜索“en's shaver”,也应该能够在结果中找到“men's shaver”。 我使用以下设置和映射: 索引设置:PUT /my_index { ...

11得票4回答
Drupal的搜索模块能否搜索子字符串?(部分搜索)

Drupal的核心搜索模块只能按关键词搜索,例如“三明治”。我能否让它搜索子字符串,例如“三明治”,并返回我的三明治结果? 也许有一个插件可以做到这一点?

14得票7回答
我需要什么算法来查找n-gram?

如何找到N-grams? 假设我的输入数据是一个单词数组,我想要找到的N-grams的大小是多少,则应使用什么算法? 我需要代码,并希望使用R语言。数据存储在数据库中,因此也可以是plgpsql函数。 Java是我比较熟悉的语言,所以我可以将其“转换”为另一种语言。 我不是懒,只是希望得...