【问题标题】:In count vectorizer which axis to use?在计数矢量化器中使用哪个轴?
【发布时间】:2020-07-02 17:37:06
【问题描述】:

我想创建一个文档术语矩阵。在我的情况下,它不像文档 x 单词,而是句子 x 单词,因此句子将充当文档。我正在使用 'l2' 规范化 post doc-term 矩阵创建。

术语计数对我在进一步的步骤中使用 SVD 创建摘要很重要。

我的问题是哪个轴适合应用“l2”标准化。经过充分的研究,我了解到:

  • Axis=1 :将给出句子中单词的重要性(按列标准化)
  • Axis=0:文档中单词的重要性(按行标准化)。

即使知道了理论,我也无法决定选择哪个替代方案,因为选择会极大地影响我的总结结果。所以请指导我一个解决方案以及相同的原因。

【问题讨论】:

    标签: python normalization countvectorizer lsa


    【解决方案1】:

    L2 归一化是指除以总数吗? 如果沿axis=0进行归一化,那么x_{i,j}的值就是单词j在所有句子i上的概率(除以全局字数),它取决于句子的长度,如较长的可以一遍又一遍地重复一些单词,并且这个单词的概率要高得多,因为它们对全局单词计数有很大贡献。 如果您沿轴 = 1 标准化,那么您是在询问句子是否具有与沿句子长度标准化的相同的单词组成。

    【讨论】:

    • 完美地由您自我质疑。我会选择axis = 0,因为我对整个文档中单词的影响感兴趣,这可以提高关键术语的概率。相反,axis = 1 的概率很低,因为我确信这些关键术语几乎不会在同一个句子中再次出现。非常感谢你让我考虑一下。
    猜你喜欢
    • 1970-01-01
    • 2014-07-29
    • 2018-10-01
    • 1970-01-01
    • 2020-11-08
    • 2011-06-20
    • 2021-01-23
    • 1970-01-01
    • 2015-04-15
    相关资源
    最近更新 更多