问题标签 [snowball]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
35736 浏览

php - 产生真实单词的词干算法

我需要提取一段文本并从中提取“标签”列表。其中大部分是非常直接的。但是,我现在需要一些帮助来阻止生成的单词列表以避免重复。示例:社区/社区

我使用了 Porter Stemmer 算法的实现(顺便说一下,我正在用 PHP 编写):

http://tartarus.org/~martin/PorterStemmer/php.txt

这在一定程度上有效,但不会返回“真实”单词。上面的例子源于“commun”。

我试过“Snowball”(在另一个 Stack Overflow 线程中建议)。

http://snowball.tartarus.org/demo.php

对于我的示例(社区/社区),Snowball 源于“communiti”。

问题

有没有其他的词干算法可以做到这一点?有没有其他人解决过这个问题?

我目前的想法是,我可以使用词干算法来避免重复,然后选择我遇到的最短单词作为要显示的实际单词。

0 投票
2 回答
932 浏览

lucene - 使用 Snowball 和 SpellChecker 的 Lucene 带回了奇怪的值

我正在尝试使用 Lucene.NET 进行 SpellChecker 设置,除了类似于以下的情况外,它都可以正常工作:

我在索引中有包含卫星的文本,我使用 Snowball 对其进行分析。

然后我创建一个 SpellChecker 索引并从中获取建议。传入“Satalite”时我收到的建议是“satellit”。

我假设这是因为 Snowball 将 Satellite 限制为 satellit,因此 SpellChecker 将其作为建议返回。

无论如何,我可以将两者一起使用,而不是为非词干词创建一个额外的字段,以便拼写检查器可以检查?

0 投票
1 回答
2630 浏览

java - 波特 Stemmer 和 Weka

我将 Weka 与 SnowBall 包中提供的搬运工 Stemmer 一起使用。如果我在 Eclipse 中运行我的应用程序,一切正常,但是一旦我将它导出为可运行的 jar(包括所有库),weka 说:

我怎么能解决这个问题?

0 投票
3 回答
18616 浏览

full-text-search - Lucene 标准分析器与 Snowball

刚刚开始使用 Lucene.Net。我使用标准分析器索引了 100,000 行,运行了一些测试查询,并注意到如果原始术语是单数,复数查询不会返回结果。我了解雪球分析器添加了词干支持,这听起来不错。但是,我想知道使用雪球超过标准的锣是否有任何缺点?跟着它走,我会失去什么吗?是否还有其他分析仪可供考虑?

0 投票
7 回答
14454 浏览

java - 是否有 Porter2 词干分析器的 java 实现

你知道 Porter2 词干分析器的任何 java 实现(或任何用 java 编写的更好的词干分析器)吗?我知道这里有一个 Java 版本的 Porter(不是 Porter2):

http://tartarus.org/~martin/PorterStemmer/java.txt

但在http://tartarus.org/~martin/PorterStemmer/上,作者提到 Porter 有点过时,建议使用 Porter2,可在

http://snowball.tartarus.org/algorithms/english/stemmer.html

但是,我的问题是这个 Porter2 是用雪球编写的(我以前从未听说过,所以对此一无所知)。我正在寻找的是它的java版本。

谢谢。他将高度赞赏您的帮助。

0 投票
3 回答
3715 浏览

lucene - 删除常用英语单词策略

我想从 html 页面中提取相关关键字。

我已经删除了所有 html 内容,将文本拆分为单词,使用词干分析器并从 lucene 中删除了出现在停用词列表中的所有单词。

但是现在我仍然有很多基本的动词和代词作为最常用的词。

在 lucene 或 snowball 或其他任何地方是否有某种方法或一组词来过滤掉所有这些东西,例如“I, is , go, going, am, it, were, we, you, us,....”

0 投票
1 回答
663 浏览

java - how to write code for Lucene snowball in Java

Hi this is my code for lucene text searching in version 2.9.2. I want to write code for lucene snowball 2.9.2 so that if I will search text " game" then it will search document which contain "game" also it will search document for "games". Please tell me how to write the code for this. I'm able to search text in Lucene but I want do it for lucene snowball 2.9.2

0 投票
1 回答
1525 浏览

java - 在 lucene 中使用雪球时出错

我添加了 lucene 3.5.0,当我为雪球分析仪添加一个单独的 jar 时,我收到以下错误:

我的代码包括:

有人可以帮我解决这个问题吗?

0 投票
2 回答
2052 浏览

elasticsearch - ElasticSearch:使用雪球分析器时的奇怪搜索行为

所以假设我有一个这样定义的 ElasticSearch 索引:

当我使用雪球分析器搜索“foo 组织”时,两个关键字都按预期匹配:

但是当我只搜索“组织”时,我根本没有得到任何结果,这很奇怪:

但是,如果我搜索“酒吧”,它仍然会命中:

我猜“bar”和“organization”之间的区别在于“organization”源于“organ”,而“bar”源于其自身。但是我如何获得正确的行为以便第二次搜索命中?

0 投票
1 回答
500 浏览

stemming - 多语言全文:应该使用哪种词干 [Snowball] 语言?

如果我想支持所有语言的全文搜索,我应该使用哪种词干提取语言。据我所知,需要使用该特定词干语言创建索引以支持使用该语言进行搜索,但这对我来说是不可能的,因为我的搜索程序可能包含不同的语言

-- 马诺伊