随机梯度下降设计矩阵对于 R 来说太大了
Stochastic Gradient Descent design matrix too big for R
我正在尝试使用通过随机梯度下降学习的参数来实现电影评级的基线预测模型(类似于 NetFlix 奖的各种基线模型)。但是,因为两个解释变量都是分类变量(用户和电影),设计矩阵非常大,无法放入我的 RAM。
我认为 sgd 包会自动找到解决这个问题的方法(因为它是为大量数据设计的),但事实似乎并非如此。
有人知道解决这个问题的方法吗?也许是一种将设计矩阵构建为稀疏矩阵的方法。
干杯,
您可以尝试使用Matrix::sparseMatrix
创建一个三元组,以更有效的方式描述矩阵。
您还可以尝试在 Amazon EC2 上导出您的问题并使用具有更多 RAM 的实例或配置集群以创建映射的缩减作业。
查看 xgboost Package https://github.com/dmlc/xgboost 及其文档以了解如何处理内存问题。
这也是比较实用的教程:https://cran.r-project.org/web/packages/xgboost/vignettes/discoverYourData.html
我正在尝试使用通过随机梯度下降学习的参数来实现电影评级的基线预测模型(类似于 NetFlix 奖的各种基线模型)。但是,因为两个解释变量都是分类变量(用户和电影),设计矩阵非常大,无法放入我的 RAM。
我认为 sgd 包会自动找到解决这个问题的方法(因为它是为大量数据设计的),但事实似乎并非如此。
有人知道解决这个问题的方法吗?也许是一种将设计矩阵构建为稀疏矩阵的方法。
干杯,
您可以尝试使用Matrix::sparseMatrix
创建一个三元组,以更有效的方式描述矩阵。
您还可以尝试在 Amazon EC2 上导出您的问题并使用具有更多 RAM 的实例或配置集群以创建映射的缩减作业。
查看 xgboost Package https://github.com/dmlc/xgboost 及其文档以了解如何处理内存问题。
这也是比较实用的教程:https://cran.r-project.org/web/packages/xgboost/vignettes/discoverYourData.html