基本思路

  1. 遍历一个庞大的数据集,并用矩阵 Word Vectors - SVD based methods - 图1 的形式累计单词的共现次数。
  2. Word Vectors - SVD based methods - 图2 进行 SVD 分解,得到 Word Vectors - SVD based methods - 图3
  3. 使用 Word Vectors - SVD based methods - 图4 的行向量作为 word vector

    矩阵X的选择

    Word-Document Matrix

  • 假设: 相关的单词经常出现在同一篇文档中。
  • 构造方法:Word Vectors - SVD based methods - 图5

    • Word Vectors - SVD based methods - 图6:是词表的大小,Word Vectors - SVD based methods - 图7 是文档数
    • 遍历整个数据集,如果单词 i 出现在文档 j 中,则令 Word Vectors - SVD based methods - 图8 加 1 。
    • 矩阵大小随文档数量的增大而增大

      Windows based Co-occurence Matrix

  • 构造方法:Word Vectors - SVD based methods - 图9

    • 计算每个单词在感兴趣的单词(目标单词)周围的一个固定大小的窗口中出现的次数
  • 例子:窗口大小为 1

image.png

对矩阵 X 进行 SVD 并降维

  1. Applying SVD to X

image.png

  1. Reducing dimensionality by selecting first k singular value

image.png

  • 根据 Word Vectors - SVD based methods - 图13 来确定 k 的值,它指明了被前 k 个维度所捕捉到的方差的比例

    存在的问题

  • 矩阵 X 的维度会经常变化,因为经常会有新的单词。
  • 矩阵 X 比较稀疏,因为大部分的单词不会同时出现。
  • 通常 X 的维度比较高,Word Vectors - SVD based methods - 图14
  • 训练成本是二次的,要进行 SVD 。
  • 需要额外的技巧去处理 X 中词频的不平衡性。