gpt4 book ai didi

java - lucene:使 StandardTokenizer 适应 Twitter 数据

转载 作者:行者123 更新时间:2023-11-30 04:56:11 30 4
gpt4 key购买 nike

我需要调整 lucene 的 StandardTokenizer 以适应有关 twitter 数据的一些特殊目的。目前,我使用 StandardTokenizer 来标记一些我想要处理的推文。它工作得很好,但现在我想扩展该行为(例如,还考虑 #hashtags 和 @somebody,考虑笑脸:),删除 url,...)。

有人可以告诉我 - 甚至给我一个方向 - 我如何才能轻松做到这一点?我知道,编写自己的 Tokenizer 将是最好的选择,但我对 lucene 还很陌生,我不知道如何开始......

我希望有人能帮助我:)

最好,迈克尔

最佳答案

您可以通过使用 lucene 的 CharFilter api(也可能使用 TokenFilters,具体取决于您希望搜索如何工作)来扩展 StandardTokenizer 的标记化。

最终,如果 StandardTokenizer 与您想要的完全不同,那么它是错误的标记生成器,但如果它接近,这会容易得多。

CharFilter 本质上是一个 FilterReader,可让您在 Tokenizer 运行之前修改文本。它还跟踪偏移调整,以便突出显示仍然有效!

要添加 CharFilters,最简单的方法是扩展 ReusableAnalyzerBase 并重写其 initReader 方法,用所需的 CharFilters 包装传入的读取器。

您可能想从 MappingCharFilter 开始,它允许您预先定义一些映射来处理您的特殊 twitter 语法。这里有一些例子/想法: http://markmail.org/message/abo2hysvfy2clxed

关于java - lucene:使 StandardTokenizer 适应 Twitter 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8464923/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com