Java Lucene文档的相似性和质心计算

Java Lucene文档的相似性和质心计算,java,lucene,cluster-analysis,similarity,tf-idf,Java,Lucene,Cluster Analysis,Similarity,Tf Idf,为了对我从Lucene得到的结果执行一个简单的聚类算法,我必须计算Lucene中两个文档之间的余弦相似性,我还需要能够制作一个形心文档来表示每个聚类的形心 我所能想到的就是用tf idf权重构建我自己的向量空间模型,使用TermFreqVectors和总体术语频率来填充它 我的问题是:这不是一个有效的方法,有没有更好的方法 这让人觉得有点不清楚,所以对于如何改进我的问题,我也非常感谢 标记,你可能会发现,或有用。简短的回答是:不 我花了很多时间(太多)研究这个问题,据我所知,您可以创建自己的向量

为了对我从Lucene得到的结果执行一个简单的聚类算法,我必须计算Lucene中两个文档之间的余弦相似性,我还需要能够制作一个形心文档来表示每个聚类的形心

我所能想到的就是用tf idf权重构建我自己的向量空间模型,使用TermFreqVectors和总体术语频率来填充它

我的问题是:这不是一个有效的方法,有没有更好的方法


这让人觉得有点不清楚,所以对于如何改进我的问题,我也非常感谢

标记,你可能会发现,或有用。

简短的回答是:不


我花了很多时间(太多)研究这个问题,据我所知,您可以创建自己的向量空间模型并从中工作,或者使用Mahout生成Mahout向量,您可以从中对文档进行比较。我要继续做我自己的,所以我要标记这个问题的答案

为了获得一个文档与另一个文档的相似性,为什么不对一个文档的内容进行一次查询,然后对索引运行查询?
这样,您将获得分数(余弦相似度值)

我已经看过了,但无论如何,它们都是相关链接。很抱歉这样突然出现,但您是如何解决问题的?您是否必须自己实现,或者您是否能够重用Lucene的一些隐藏的现有组件?谢谢