【发布时间】:2016-11-16 02:08:47
【问题描述】:
我想通过训练具有超过 10 亿个特征维度的数据来训练 DNN 模型。所以第一层权重矩阵的形状将是 (1,000,000,000, 512)。这个权重矩阵太大了,不能放在一个盒子里。
到目前为止,是否有任何解决方案来处理如此大的变量,例如将大权重矩阵划分为多个框。
更新:
感谢 Olivier 和 Keveman。让我添加有关我的问题的更多详细信息。 该示例非常稀疏,所有特征都是二进制值:0 或 1。参数权重看起来像 tf.Variable(tf.truncated_normal([1 000 000 000, 512],stddev=0.1))
kaveman 给出的解决方案看起来很合理,我会在尝试后更新结果。
【问题讨论】:
-
你的数据中有什么结构吗?例如,它是每天/每秒都有数据的时间序列吗?
-
每个数据示例都是稀疏张量,只有不到 1000 个非零值。权重矩阵是输入层和第一个隐藏层之间的连接权重。因为第一个隐藏层的大小是 512,权重矩阵看起来像 tf.Variable(tf.truncated_normal([1 000 000 000, 512],stddev=0.1))。
-
所以这是分类数据?您应该使用其他信息更新您的问题。无论如何,第一层已经有 512G 的参数将被证明无法优化,所以你需要找到另一种方法
-
@HanbinZheng 有更新吗?
标签: tensorflow