美文网首页
TfIdf的计算

TfIdf的计算

作者: 云彩修建站站长 | 来源:发表于2019-10-16 22:48 被阅读0次

一个字的tfidf离不开他所在的doc,因为要计算这个字的在他所在doc的tf。
参考

sklearn

sklearn计算tfidf的类是sklearn.feature_extraction.text.TfidfVectorizer
其中fit(docs)的作用是从docs里面学习idf,在做transform(docs)的时候,再从docs里面获取tf做正式计算。

def sentence_vec(contents, sentence):
    """
    :param contents: 需要fit的docs,doc中的句子都需要经过jieba分词
    :param sentence: 需要transform的句子,jieba分词后的句子
    :return:list 每个word对应的tfidf,返回的长度等于len(sentence.split())
    """
    vectorizer = TfidfVectorizer(token_pattern=r"(?u)\b\w+\b").fit(contents)
    vocabulary = vectorizer.vocabulary_
    tfidf_handler = vectorizer.transform([sentence])  # 传入句子组成的list
    tfidf_arrays = tfidf_handler.toarray()

    sentence_tfidf = []
    for word in sentence.split():
        index = vocabulary.get(word, -1)
        if index == -1:
            sentence_tfidf.append(0)
        else:
            tfidf = tfidf_arrays[0][index]
            sentence_tfidf.append(tfidf)
    return sentence_tfidf

相关文章

  • TfIdf的计算

    一个字的tfidf离不开他所在的doc,因为要计算这个字的在他所在doc的tf。参考 sklearn sklear...

  • 文本特征提取-TfidfVectorizer和CountVect

    Bag of words(词袋) 统计每个词在文档中出现的次数 输出为: tfidf 计算文档中每个词的tfidf...

  • tfidf

    NLP的应用范围:情感分析,文本相似度计算,文本分类。 问题的关键在于,如何把文本表示成计算机能懂的数据形式? 1...

  • 面试代码

    tfidf 计算 auc计算 在有M个正样本,N个负样本的数据集里。一共有MN对样本(一对样本即,一个正样本与一个...

  • 利用tfidf计算文本相似度

    利用TF-IDF及余弦公式处理文本相似性的计算 https://www.jianshu.com/p/68b0b31...

  • python:将一个文件按文件中的字段值分写到以字段值命名的新文

    近来有一个需求:计算文件的tfidf值,然后将整个文件拆分,写到以tag_id_act命名的信文件中。我的文件字段...

  • 余弦相似度-矩阵比向量计算性能比较

    背景 比如在推荐系统,通过算法计算出数据在返回向量时,就需要比较向量之间的距离,来判断相似度。 比如用tfidf计...

  • TFIDF与BM25

    TFIDF 先复习一下 tfidf,tf是词频,即某个词 i 在 文章 j 中出现的频率。分母是文章中所有词的个数...

  • Hanlp分词实例:Java实现TFIDF算法

    算法介绍 最近要做领域概念的提取,TFIDF作为一个很经典的算法可以作为其中的一步处理。 关于TFIDF算法的介绍...

  • TFIDF算法的python实现

    1 、TFIDF简介 TF-IDF(term frequency–inverse document freque...

网友评论

      本文标题:TfIdf的计算

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