2021SC@SDUSC
2021SC@SDUSC
在python的jieba库中除了我们之前分析的TextRank算法以外,还有一种算法也用于提取关键词,即TF-IDF算法。
2021SC@SDUSC
TF-IDF算法(词频-逆文本频率)是一种用以评估字词在文档中重要程度的统计方法。它的核心思想是,如果某个词在一篇文章中出现的频率即TF高,并且在其他文档中出现的很少,则认为这个词有很好的类别区分能力。
主要运用以下公式:
其中:
这篇博文就来简单地对TF-IDF的关键算法进行分析,从而与之前几篇的TextRank算法做对比。
TFIDF类在初始化时,默认加载了分词函数tokenizer = jieba.dt、词性标注函数postokenizer = jieba.posseg.dt、停用词stop_words = self.STOP_WORDS.copy()、idf词典idf_loader = IDFLoader(idf_path or DEFAULT_IDF)等,并获取idf词典及idf中值(如果某个词没有出现在idf词典中,则将idf中值作为这个词的idf值)。
def extract_tags(self, sentence, topK=20, withWeight=False, allowPOS=(), withFlag