美文网首页
3.Gensim中Dict,Tf-Idf的解释

3.Gensim中Dict,Tf-Idf的解释

作者: AlwaysInCoding | 来源:发表于2019-10-29 13:59 被阅读0次

最近项目中,有用到文本相似度计算,涉及到自然语言处理的一个很强大的库gensim

1.1 基本概念和用法

corpora是gensim中的基本概念,是文档集的表现形式,也是后续进一步处理的基础。从本质上来说,corpora其实是一种格式或者说约定,其实就是一个二维矩阵。

dictionary = corpora.Dictionary(texts) # Use gensim package用文本生成dict

dictionary.token2id //dict中文本token和id位置号

前面是文本词语,后面是index值

data_dictionary.doc2bow(text)for textin bcom_data_clean.texts //把对应文本按照dict中token2id的转换成坐标

(0,1)0表示token编号,1表示出现1次

1.2 TF-IDF原理介绍

TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与文本挖掘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。

原理

在一份给定的文件里,词频(term frequency,TF)指的是某一个给定的词语在该文件中出现的次数。这个数字通常会被正规化,以防止它偏向长的文件。(同一个词语在长文件里可能会比短文件有更高的词频,而不管该词语重要与否。)对于在某一特定文件里的词语ti 来说,它的重要性可表示为:

以上式子中 ni,j 是该词在文件dj中的出现次数,而分母则是在文件dj中所有字词的出现次数之和。

逆向文件频率(inverse document frequency,IDF)是一个词语普遍重要性的度量。某一特定词语的IDF,可以由总文件数目除以包含该词语之文件的数目,再将得到的商取对数得到:

其中

|D|:语料库中的文件总数

包含词语ti的文件数目(即的文件数目)如果该词语不在语料库中,就会导致被除数为零,因此一般情况下使用

然后

某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF-IDF。因此,TF-IDF倾向于过滤掉常见的词语,保留重要的词语。

例子

有很多不同的数学公式可以用来计算TF-IDF。这边的例子以上述的数学公式来计算。词频 (TF) 是一词语出现的次数除以该文件的总词语数。假如一篇文件的总词语数是100个,而词语“母牛”出现了3次,那么“母牛”一词在该文件中的词频就是3/100=0.03。一个计算文件频率 (DF) 的方法是测定有多少份文件出现过“母牛”一词,然后除以文件集里包含的文件总数。所以,如果“母牛”一词在1,000份文件出现过,而文件总数是10,000,000份的话,其逆向文件频率就是 log(10,000,000 / 1,000)=4。最后的TF-IDF的分数为0.03 * 4=0.12。

相关文章

  • 3.Gensim中Dict,Tf-Idf的解释

    最近项目中,有用到文本相似度计算,涉及到自然语言处理的一个很强大的库gensim 1.1 基本概念和用法 corp...

  • 关键词提取

    TF-IDF 参考github本github中的tf-idf算法,最主要的处理方式就是计算tf-idf,对于tf较...

  • python-vars/dir

    官方中英文解释: vars:返回具有__dict__属性的模块、类、实例或任何其他对象的__dict__属性。Re...

  • Python基础入门—字典(dict)

    概述:python中的dict具有如下特点 dict是可变的 dict可以存储任意数量的Python对象 dict...

  • python中的dict和set

    一:字典dict python中的dict和golang中map的概念是一致的,称为“字典”。 dict可以用在需...

  • 关键词提取

    关键词识别 基于 TF-IDF 算法进行关键词提取 在信息检索理论中,TF-IDF 是Term Frequency...

  • SEO算法之TF-IDF算法

    SEO算法之TF-IDF算法 1、TF-IDF算法概念: TF-IDF(term frequency–invers...

  • NLP基本方法:TF-IDF原理及应用

    一、TF-IDF原理 1. 什么是TF-IDF TF-IDF(Term Frequency-Inverse Doc...

  • python 理解类变量与实例变量

    实例的属性存储在实例的dict中。 类属性和方法存储在类的dict中。 查找属性的顺序:特性->实例的dict->...

  • 特征选择之TF-IDF

    TF-IDF,最开始用于信息检索,在信息检索中其计算过程如下 TF-IDF模型的主要思想是:如果词w在一篇文档d中...

网友评论

      本文标题:3.Gensim中Dict,Tf-Idf的解释

      本文链接:https://www.haomeiwen.com/subject/mgnwvctx.html