当前位置: 首页 > 面试题库 >

从Lucene索引中获得频率最高的术语

洪季萌
2023-03-14
问题内容

我需要 从多个Lucene索引中 提取 频率最高的术语 ,以将其用于某些语义分析。

因此,我想获取可能出现次数最多的前30个词(仍未决定阈值,我将分析结果)及其按索引计数。我知道由于故意删除重复项,我可能会失去一些精度,但是就目前而言,我可以接受。

因此,对于所提出的解决方案,(不必说可能)速度并不重要,因为我会进行静态分析,所以我会强调实现的 简便性
,因为我不太了解Lucene,也无法将其思想笼罩在其中。 。

我从相似的地方找不到任何代码示例,因此所有具体建议(代码,伪代码,指向代码示例的链接…)感谢所有建议!

谢谢!


问题答案:

看看这个:http : //sujitpal.blogspot.com/2009/02/summarization-with-
lucene.html

此页面中的类具有一些computeTopTermQuery方法,您应该可以轻松地对其进行改造以遍历多个索引



 类似资料:
  • 问题内容: 找出查询中哪些术语与以lucene命中形式返回的给定文档相匹配的最佳方法是什么? 我尝试了一种奇怪的方法,其中涉及在Lucene Contrib中命中高亮显示包,还有一种方法针对最上面的文档(“ docId:xy AND description:each_word_in_query”)在查询中搜索每个单词。 没有得到满意的结果?点击突出显示不会报告与第一个文档不同的某些单词。我不确定第

  • 这是我的ES查询: ==创建索引=== ===插入数据=== ==获取结果的查询=== ==检索到的结果=== ==期望结果=== 所需术语按文档搜索术语的频率,如下所示 我尝试过Bucket聚合、Terms聚合和其他聚合,但没有得到这个结果。 提前谢谢你的帮助!

  • 我试图使用这里定义的基本字数。当IntSumReducer执行context.write时,是否可能将该context.write传递给第二个reducer或输出类,该reducer或输出类将IntSumReducer给出的最终列表减少/更改到单个最大频率? 我对Hadoop/MapReduce和Java中的jobs概念相当陌生,所以我不确定我需要如何修改默认的WordCount以使其符合要求。我

  • 在测试此文本时,我在要在文本中搜索的列上创建了lucene(3.0.1)索引: 如果我按关键字搜索,它会给出结果,但按 我正在使用standardAnalyzer: 因为已设置,它应创建令牌,并且应存在$GLD。Analyzer将从文本中删除停止字,因为word也将在该过程中删除。

  • 我正在尝试从Lucene索引中删除文档。我只想从lucene索引中删除指定的文件。 我下面的程序是删除可以使用关键字分析器搜索的索引,但是我需要的文件名只能使用标准分析器搜索。因此,它是任何方式设置标准分析器在我的任期或代替任期如何使用QueryParser从Lucene索引删除文档。

  • 问题内容: 我试图获取数组中的最大值,同时仍保留项目标签。我知道我可以通过运行sort()来做到这一点,但是如果这样做,我只会丢失标签- 这对于我需要的东西毫无意义。这是数组: 有任何想法吗? 问题答案: 不要对数组进行排序以获取最大值。 获得最大值: 获取相应的密钥: