and no similarity information included
纵向d表示单词数,横向n表示文档数,即$ d = vocab size $
左边$U$矩阵的每一行就是每一个单词的K维表示,右边$V^T$矩阵每一列就是每一篇文档的$K$维表示
这就是Latent Sementic Index(Analysis)的做法 这与PCA的区别就是,这里没有减均值的操作(Centeralize)。
为什么不减均值?因为这里矩阵中的每一个数,其实是表示某个词在某篇文章中的出现频次,减去均值,那必然有很多词被表示成了负数,这是没有意义的。
教授举了图像的例子。对于图像矩阵做SVD,同样,行是像素点,列是某一个图片,那么,在SVD分解后,U矩阵的每一列单独拿出来,仍然可以看成是某一种图像,如果做了Centeralization,那就什么都不是了。那文本做了SVD之后,对于U的每一列,就相当于是一个Topic,上面的数字表示每一个词在当前这个topic的出现频率;对于V的每一列,则表示每一篇文章,分别由哪几个主题,以什么比例组成。
教授补充:对于一个非负矩阵,SVD分解的结果会出现负值。所以现在有了Non negative matrix factorization的方法。
这里还有点乱。
只有Non negatie matrix factorization之后的结果,才可以看成主题模型那样的理解,因为没有负值;而PCA和SVD都会出现负值,所以不能那样理解。
out of sample 就是没出现过的,不在训练集中的
Glove directly used, word2vec indirectly used this
这里的每一列(或者行,因为是对称的)表示一个词的window
这里的length of window表达有歧义,其实是在说input layer只有一个值是1,其它都是零。正常理解的length = 1,是会有两个值为1.
In [ ]: