SOLR:从原始文本创建术语向量(如从TermVectorComponent返回的数据)

时间:2013-08-14 22:10:29

标签: solr

使用http://wiki.apache.org/solr/TermVectorComponent我可以获取索引中存储的任何文档的索引术语及其频率。如何在不将文本存储在索引中的情况下获取文本的相同信息?我只是希望SOLR处理文本并返回信息,但不必将文档存储在索引中。

4 个答案:

答案 0 :(得分:1)

AFAIK如果不在SOLR中存储数据,这是不可能的。

如果您希望进行文本分析(我知道这比您要求的更广泛),我会推荐以下替代方案:

  1. MAUI - 提供关键短语和术语提取。
  2. Gensim - 主题建模
  3. Kea - 关键字提取
  4. 我还遇到过一些使用术语频率分析的python脚本。看看Mincemeat,特别是这个例子,它可以进行术语频率计算。

答案 1 :(得分:1)

根据您的要求,我得出结论,您确实需要一个搜索库,而不是一个完整的搜索引擎(服务)。那个图书馆是Lucene。也许,这对初学者有帮助:How to extract Document Term Vector in Lucene 3.5.0。您可以将索引存储在RAM中,以便计算必要的位,然后删除索引。

答案 2 :(得分:1)

几年前我用Java编写了一个应用程序,它基于Lucene进行了大量的文本分析。我不得不自定义编写搜索功能,以找到彼此相距一定距离的单词。您可以将文本文档导入到软件中,并将其计入术语频率,或者您可以根据需要获取代码并进行编码。

免费下载: http://www.minoesoftware.com/download.php

来源: https://github.com/danspiteri/MINOE/blob/master/src/minoe/SearchFiles.java

答案 3 :(得分:1)

如果您使用的是Solr4并且未存储文本,则可以在文本字段中使用 a Solr pivot 。但是,显然你会在分析仪处理后得到术语:

http://192.168.0.202:8080/solr/fr_00_0425_sem/select?q=renault&wt=xml&facet=true&facet.pivot=uniqueKey,yourText

这是一个非常繁重的查询,我希望你没有太多的文件匹配......