2024-04-26 17:43:04 发布
网友
根据一些参考文献,我看到大多数情况下,1被加到idf方程的分母上,以避免log,如果任何文档中不存在一个单词,它就会变成无穷大。你知道吗
但是如果一个词存在于所有文档中呢?那么以色列国防军将是消极的。我们应该如何处理这种情况?你知道吗
从sklearn TfidfTransformer
TfidfTransformer
# perform idf smoothing if required df += int(self.smooth_idf) n_samples += int(self.smooth_idf) # log+1 instead of log makes sure terms with zero idf don't get # suppressed entirely. idf = np.log(n_samples / df) + 1
如果smooth_idf是True,则df和n_samples增加1。你知道吗
smooth_idf
True
df
n_samples
所以,我们在除法器和分母中都加一个,或者我们不改变它们中的任何一个因为我们也增加了除法器,所以永远不会得到负值。
在本例中,我们将+1添加到日志中。 因为在这一步之后,idf被转换成稀疏矩阵,稀疏矩阵省略了零。因此,我们希望每个项都有一个除0之外的值。你知道吗
+1
idf
0
从文档中了解更多关于idf的信息
smooth_idf : boolean, default=True Smooth idf weights by adding one to document frequencies, as if an extra document was seen containing every term in the collection exactly once. Prevents zero divisions.
如果一个词存在于语料库中的每一个文档中,那么它的“知识”价值就很低——因为这个词不能区分一个文档和语料库。你知道吗
从sklearn
TfidfTransformer
如果
smooth_idf
是True
,则df
和n_samples
增加1。你知道吗所以,我们在除法器和分母中都加一个,或者我们不改变它们中的任何一个
因为我们也增加了除法器,所以永远不会得到负值。
在本例中,我们将
+1
添加到日志中。 因为在这一步之后,idf
被转换成稀疏矩阵,稀疏矩阵省略了零。因此,我们希望每个项都有一个除0
之外的值。你知道吗从文档中了解更多关于idf的信息
如果一个词存在于语料库中的每一个文档中,那么它的“知识”价值就很低——因为这个词不能区分一个文档和语料库。你知道吗
相关问题 更多 >
编程相关推荐