gpt4 book ai didi

lucene - 使用 Lucene 索引作为 Hadoop 的输入

转载 作者:可可西里 更新时间:2023-11-01 14:39:33 25 4
gpt4 key购买 nike

我正在尝试从语料库构建邻接表。我正在考虑使用 Map-Reduce,因为内存解决方案已被证明非常昂贵。我认为可行的作业顺序要求我从倒排索引开始,然后有一个 map 作业作为输入,然后计算相似性。我不是特别想经历构建我自己的倒排索引的痛苦——我想使用一个看起来很容易生成的 Lucene 索引。但是,我不太清楚如何使用 Lucene 索引并生成 Hadoop 中的 Map 可以使用的对?有人可以阐明如何做到这一点吗?

最佳答案

你需要做的是使用IndexReader.terms()枚举词条,IndexReader.docFreq(Term t)获取包含该词条的文档数量(对于 IDF)和 IndexReader.termDocs(Term t) 来获取每个术语、文档对的 DF 值。使用该信息,您应该能够将数据提供给 Mapper,然后由 Mapper 进行计数。请注意,termDocs 调用通过其内部整数编号表示文档,因此您无法在执行此计算时修改索引,因为您无法将文档编号映射回索引之后的文档变化。为了解决这个问题,要么在处理 reduce 步骤的结果之前不要更改索引,要么,一旦您有了文档编号,通过从文档中读取适当的字段并将其提供给将其转换为外部 id映射器。

关于lucene - 使用 Lucene 索引作为 Hadoop 的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6381501/

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