如何在 scikit TfidfVectorizer 中赋予专有名词更多的权重

Posted

技术标签:

【中文标题】如何在 scikit TfidfVectorizer 中赋予专有名词更多的权重【英文标题】:How to give more weight to Proper Nouns in scikit TfidfVectorizer 【发布时间】:2017-11-20 19:30:37 【问题描述】:

我正在使用sci-kitTdidfVectorizer 从科学文章列表中提取关键字。 stop_words 有一个论据,但我想知道是否可以给专有名词(例如“Bohr”或“Japan”)赋予更多权重/分数。

我是否必须实现我自己的自定义 tfidf vectorizer 或者我仍然可以使用这个内置的?

tf = TfidfVectorizer(strip_accents='ascii', 
                     analyzer='word',
                     ngram_range=(1,1),
                     min_df = 0,
                     stop_words = stopwords,
                     lowercase = True)

【问题讨论】:

【参考方案1】:

您可以自己对 TfIdf 矩阵进行后处理。

首先,您需要查看所有单词索引以找到所有专有名词的索引,然后查看矩阵并增加这些索引的权重。

【讨论】:

以上是关于如何在 scikit TfidfVectorizer 中赋予专有名词更多的权重的主要内容,如果未能解决你的问题,请参考以下文章

如何在 scikit 中使用具有半正弦距离的 DistanceMetrix.pairwise()

如何在 scikit 学习模型中使用 Tensorflow 嵌入?

如何在 FeatureUnion 中对 scikit 转换器进行特征选择

如何在 Windows 上安装 scikits.audiolab 0.11.0

如何在 scikit-learn 中缩放输入 DBSCAN

如何在 scikit-learn(用于计算机视觉)中使用我自己的数据集?