当前位置: 首页 > news >正文

政府网站集群建设汇报/福建省人民政府

政府网站集群建设汇报,福建省人民政府,设计网页的工作叫什么,旅游网站建设的总结在基于TF-IDF进行特征提取时,因为文本背景是某一具体行业,不适合使用通用的IDF语料库,我觉得应该使用自定义的基于该行业背景的IDF语料库。请问如何生成自定义IDF语料库呢? 我现在有的数据是几十万个该行业的文档,初步…

 

在基于TF-IDF进行特征提取时,因为文本背景是某一具体行业,不适合使用通用的IDF语料库,我觉得应该使用自定义的基于该行业背景的IDF语料库。请问如何生成自定义IDF语料库呢?

我现在有的数据是几十万个该行业的文档,初步想法是:对每个文档分词去重,把所有文档分词结果汇集去重后形成一个分词集,然后对于分词集里的每一个词语w,按idf=log(该行业文档总数/(含有w的文档数量+1))**公式求出词语w的IDF值f,最后txt文件里每一行放一个(w, f)。

一、逆文件频率

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

line 是单个文档all_dict = {}
for line in lines:temp_dict = {}total += 1cut_line = jieba.cut(line, cut_all=False)for word in cut_line:temp_dict[word] = 1for key in temp_dict:num = all_dict.get(key, 0)all_dict[key] = num + 1
for key in all_dict:w = key.encode('utf-8')p = '%.10f' % (math.log10(total/(all_dict[key] + 1)))

 二、逆文档频率文件用于jieba 分词模块

用法:jieba.analyse.set_idf_path(file_name) # file_name为自定义语料库的路径

自定义的IDF文本语料库会覆盖jieba自带的语料库,因为根据其源码,加载IDF语料库时候只能是自定义路径OR默认。

class TFIDF(KeywordExtractor):def __init__(self, idf_path=None):self.tokenizer = jieba.dtself.postokenizer = jieba.posseg.dtself.stop_words = self.STOP_WORDS.copy()self.idf_loader = IDFLoader(idf_path or DEFAULT_IDF)self.idf_freq, self.median_idf = self.idf_loader.get_idf()...self.idf_loader = IDFLoader(idf_path or DEFAULT_IDF)

 

 

相关文章: