问题标签 [tf-idf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
705 浏览

tf-idf - 余弦相似度问题

我已经计算了文档 1 和文档 2 的术语的 tf-idf 值..现在我不知道如何使用这些 tf-idf 值...基本上我想找到两个文档之间的相似性(在我的例子中是网页)。 . 任何人都可以告诉如何实现余弦相似度,jaccard 系数来找到相似度...c# 代码将不胜感激..请帮助...谢谢

0 投票
1 回答
1371 浏览

similarity - 关于余弦相似度

我发现文档之间的余弦相似度..我是这样做的

D1=(8,0,0,1) 其中 8,0,0,1 是术语 t1, t2, t3 , t4 的 tf-idf 分数

D2=(7,0,0,1)

cos(theta) = (56 + 0 + 0 + 1) / sqrt(64 + 49) sqrt(1 +1)

结果是

余弦(θ)= 5

现在我从这个值评估什么...我不明白 cos(theta)=5 意味着它们之间的相似性...我做对了吗?

0 投票
2 回答
1580 浏览

frequency - 词频计算

我需要计算文档中术语的术语频率……我所做的只是“计算该术语在该文档中出现的次数”……如果该术语出现了 138 次,我将 tf 值设为 138 ....mi 做对了..?? 当我在某处读到术语频率(tf)=术语计数/文档中的单词数...如果这是真的我如何计算文档中的单词数..是一些正则表达式吗???

请回复..谢谢你

0 投票
3 回答
2765 浏览

java - 创建数据集:从文本文档中提取特征 (TF-IDF)

我必须从一些文本文件创建一个数据集,将它们写为特征向量。

像这样的东西:

向量的每个位置代表一个词,分数由 TF-IDF 之类的东西给出。

你知道一些图书馆/工具/什么吗?(java更好)

0 投票
1 回答
1914 浏览

machine-learning - Ngram IDF 平滑

我正在尝试使用 IDF 分数在我非常庞大的文档语料库中找到有趣的短语。
我基本上需要像亚马逊的统计上不可能的短语,即区分文档与所有其他文档的短语
我遇到的问题是我的数据中的一些 (3,4)-grams 具有超高 idf 实际上由组件组成idf 非常低的 unigrams 和 bigrams。
例如,“你从未尝试过”的 idf 非常高,而每个组件 unigrams 的 idf 都非常低。
我需要想出一个可以接受的函数记录一个 n-gram 及其所有组件 (nk)-grams 的频率,并返回一个更有意义的度量,即该短语将在多大程度上区分父文档与其他文档。
如果我正在处理概率,我会尝试插值或退避模型。我不确定这些模型利用哪些假设/直觉来表现良好,以及它们对 IDF 分数的效果如何。
有人有更好的想法吗?

0 投票
3 回答
23314 浏览

python - 不同长度向量的余弦相似度?

我正在尝试使用 TF-IDF将文档分类。我已经计算了一些文档的 tf_idf,但是现在当我尝试计算其中两个文档之间的余弦相似度时,我得到一个回溯说:

切片向量以便 len(u)==len(v) 是正确的方法吗?我认为余弦相似性适用于不同长度的向量。

我正在使用这个功能

另外——向量中 tf_idf 值的顺序重要吗?是否应该对它们进行排序——或者它对这个计算不重要?

0 投票
1 回答
1070 浏览

machine-learning - 将文档添加到评分的 TF-IDF 集合中?

我有大量已经计算过 TF-IDF 的文档。我正准备向集合中添加更多文档,我想知道是否有一种方法可以在不重新处理整个数据库的情况下将 TF-IDF 分数添加到新文档中?

0 投票
3 回答
5804 浏览

java - 从对 lucene 索引的查询中获取向量空间模型 (tf-idf)

我需要从 lucene 查询的结果中获取向量空间模型(带有 tf-idf 权重),但不知道该怎么做。看起来应该很简单,在这个阶段,也许你们中的一个人可以为我指明正确的方向。

我一直在试图弄清楚如何做到这一点,或者我还没有理解我所阅读的内容是我需要的(很可能),或者解决方案还没有发布到我的特别的问题。我什至尝试自己直接从查询结果中计算 VSM,但我的解决方案非常复杂。

编辑:对于任何其他偶然发现此问题的人,有一个解决方案@这里更清晰的问题我需要什么可以通过 IndexReader.getTermFreqVector(String field, int docid) 方法得到。

不幸的是,这对我不起作用,因为我正在处理的索引没有存储术语频率向量,所以我想我仍在寻找更多帮助!

0 投票
2 回答
4660 浏览

sql - 使用 Sql 计算 TF-IDF

我的数据库中有一个包含自由文本字段列的表。

我想知道每个单词出现在所有行上的频率,或者甚至可能为所有单词计算一个 TF-IDF,其中我的文档是该字段每行的值。

是否可以使用 Sql Query 进行计算?如果没有,或者有更简单的方法,你能指导我吗?

非常感谢,

乔恩

0 投票
3 回答
1618 浏览

java - 计算Lucene文档之间的相似度和质心

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

我能想到的就是用 tf-idf 加权构建我自己的向量空间模型,使用 TermFreqVectors 和整体词频来填充它。

我的问题是:这不是一种有效的方法,有没有更好的方法来做到这一点?

这感觉有点不清楚,所以任何关于如何改进我的问题的建议也值得赞赏。