编辑:我的单词表的大小是我写下的 10-20 倍。我只是忘记了一个零。
EDIT2:我将研究 SVDLIBC 并了解如何将矩阵简化为密集版本,这样也可能有所帮助。
我生成了一个巨大的 csv 文件作为我的 pos 标记和词干提取的输出。它看起来像这样:
word1, word2, word3, ..., word 150.000
person1 1 2 0 1
person2 0 0 1 0
...
person650
它包含每个人的字数。像这样我得到每个人的特征向量。
我想在这个野兽上运行 SVD,但似乎矩阵太大而无法保存在内存中以执行操作。我的问题是:
我是否应该通过删除列总和为例如 1 的单词来减小列大小,这意味着它们只被使用过一次。我是否因为这种尝试而过度偏向数据?
我尝试了 rapidminer 尝试,将 csv 加载到数据库中。然后像rapidminer建议的那样,按批次顺序读取它进行处理。但是Mysql不能在一个表中存储那么多列。如果我转置数据,然后在导入时重新转置它也需要很长时间......
--> 所以总的来说,我是在征求如何在这样的语料库上执行 svd 的建议。