1

目标是评估大型文本语料库中词语之间的语义相关性,例如。 '警察'和'犯罪'应该比'警察'和'山'有更强的语义相关性,因为它们倾向于在相同的背景下共同发生。如何从文本语料库中提取语义相关性

我读过的最简单的方法是从语料库中提取IF-IDF信息。

很多人都使用潜在语义分析来发现语义相关性。

我遇到了Lucene搜索引擎:http://lucene.apache.org/

你认为这是合适的提取IF-IDF?

对于技术和软件工具(对于Java的偏好)而言,您会推荐做什么?

在此先感谢!

Mulone

回答

0

是的,Lucene获取TF-IDF数据。 Carrot^2算法是构建在Lucene上的语义提取程序的一个例子。我提到它,因为作为第一步,他们创建了一个相关矩阵。当然,你可能可以轻松地构建这个矩阵。

如果你处理大量的数据,你可能想要使用Mahout来处理更难的线性代数部分。

0

如果你有lucene索引,这很容易。例如,要获得相关性,可以使用简单公式计数(term1和term2)/ count(term1)* count(term2)。计数来自您的搜索结果。此外,你可以轻松地计算其他semidica指标,如chi^2,信息增益。所有你需要的是获得公式并将其转换为countQuery

相关问题