TF-IDF(Term Frequency-Inverse Document Frequency)即词频-逆文档频率,一般用在文本描述中。主要思想是通过统计文章的关键词频率,来衡量和某个主题的相近程度或者计算文章之间的相似性。
计算步骤
(1)通过停用词将文章从字流分为词流,这儿推荐python的jieba库,下面给出一个使用示例:
import jieba
string='小明昨天去了黄果树瀑布'
#结巴分词分为三种模式:精确模式(默认)、全模式和搜索引擎模式,下面对这三种模式分别举例介绍:
#(1)精确模式(默认)
cut = jieba.cut(string)
print(cut) #结果是一个生成器,在大数据时可节约内存
print(','.join(cut))
#(2)全模式
print(','.join(jieba.cut(string,cut_all = True)))
#(3)搜索引擎模式
print(','.join(jieba.cut_for_search(string)))
输出结果为:
<generator object Tokenizer.cut at 0x0000000002D1B8E0>
小明,昨天,去,了,黄果树,瀑布
小,明,昨天,去,了,黄果,黄果树,果树,瀑布
小明,昨天,去,了,黄果,果树,黄果树,瀑布
jieba的功能还很多,有兴趣的可以自行探索。
(2)计算TF