在Matlab中处理非常大的矩阵

时间:2016-02-05 08:30:30

标签: matlab

我有epinions网站的数据集,并希望实施推荐系统 在第一步,我应该改变数据集的结构,它应该像120000*780000 rows and columns 它真的很大矩阵,由于缺乏记忆,它是不可能做到的 在我的工作中,每个用户都应该有M维向量,而 M 780000的项目总数 我不能使用稀疏矩阵因为我需要索引而且它太慢了 我现在能做什么?我怎样才能在matlab中拥有这个大数据集?

1 个答案:

答案 0 :(得分:0)

您可以尝试不同的方法来减少数据量:

  1. 取一个随机的观察子集:120.000次观察非常多,尝试在几个较小的子集中随机分割,并检查哪个是系统的性能。
  2. 使用PCA降低数据的维数:780.000维度很多。您可能会大幅减少使用PCA的尺寸数量。
  3. 如果您的数据大部分为零或不变,您实际上可以使用稀疏矩阵。稀疏矩阵跟踪非零数据的索引,所以不用担心。