【问题标题】:scikit-learn CountVectorizer. vocabulary_scikit-learn CountVectorizer。词汇_
【发布时间】:2020-01-15 15:57:38
【问题描述】:

我有以下例子:

sentences = ['Rashmi likes ice cream', 'Rashmi hates chocolate.']

vectorizer = CountVectorizer(min_df=0, lowercase=False)
vectorizer.fit(sentences)
vectorizer.vocabulary_

输出:

{'Rashmi': 0, 'likes': 5, 'ice': 4, 'cream': 2, 'hates': 3, 'chocolate': 1}

那么这些数字代表什么?没看懂。

【问题讨论】:

  • 根据documentation,它是“术语到特征索引的映射”。
  • 是的,我读过这个,但我不明白。 Rashmi 如何获得数字 0 并喜欢 5 ?这背后的逻辑是什么?

标签: python scikit-learn countvectorizer


【解决方案1】:

这是从单词到它的 ID 的映射

当对向量调用 fit 时,每个单词都会映射到字典中的值。

【讨论】:

    【解决方案2】:

    来自docs

    词汇_:字典 术语到特征索引的映射。

    解释

    vocabulary_ 是一个字典,其中键是术语,值是特征矩阵中的索引。

    CountVectorizer 将文本文档集合转换为标记计数矩阵。它从词汇表中生成每个单词的计数的稀疏矩阵。矩阵的形状是 NxM(N 是文档(行)的数量,M 是词汇表(列)的大小)。这些数字只是该矩阵中跨列的词汇表中每个单词的索引。

    【讨论】:

      猜你喜欢
      • 2019-03-14
      • 2016-10-18
      • 2017-02-25
      • 2020-05-05
      • 2014-07-13
      • 2016-07-02
      • 1970-01-01
      • 2014-08-14
      • 2019-06-08
      相关资源
      最近更新 更多