王小草SparkML笔记
笔记整理时间:2017年1月10日
笔记整理者:王小草
1. 基于词频数的文档向量
在文本特征提取_01和02中分别介绍了TF-IDF文档矩阵和基于神经网络的word2vec词嵌入矩阵。本文我们要介绍的是一个非常基础非常简单的文档向量表征。
做过LDA的小伙伴知道对于文档的特征,它只需要每个词在该文档中出现的频数即可。因此简单而言,根据频数(token counts)可以将一个文档转换成一个向量。
假设有两篇文档,分词后以词的数组形式表示,如下:
id | texts |
---|---|
0 | Array(“a”, “b”, “c”) |
1 | Array(“a”, “b”, “b”, “c”, “a”) |
通过计算词频,文档可以表示成如下表格中的第三列:
id | texts | vector |
---|---|---|
0 | Array(“a”, “b”, “c”) | (3,[0,1,2],[1.0,1.0,1.0]) |
1 | Array(“a”, “b”, “b”, “c”, “a”) | (3,[0,1,2],[2.0,2.0,1.0]) |
将两篇文档中的词去重后就组成了一个字典,这个字典中有3个词:a,b,c,分别建立索引为0,1,2.
在第三列的文档向量,是由基于字典的索引向量,