分布式TF:如何处理具有50亿特征的超大型稀疏LR模型?

时间:2018-12-21 10:08:39

标签: python tensorflow distributed-computing

我正在尝试使用TF中的参数服务器,用稀疏特征向量中的样本训练LR模型。特征ID索引高达50亿,样本的密集大小约为5000。

使用tf.feature_column.categorical_column_with_identity的num_buckets为50亿,首席工作人员可以轻松地消耗大约100GB的内存,并且在尝试在训练开始之前尝试保存checkpoint-0时被系统杀死。我还尝试了tf.feature_column.categorical_column_with_hash_bucket,hash_buckets_size为5B,但是没有运气。

由于我只有一个功能插槽,并且每个功能ID都对应一个特定功能,所以我不想执行任何嵌入操作来减小功能尺寸。

有什么办法可以减少首席工作人员的内存消耗?

我的模型中的其他信息:

数据存储在TFRecord中;

样本数量约为5500万;

优化器是FTRL;

batch_size可以是64/128/256/512;

0 个答案:

没有答案