设置
我有一个网络,它的参数是一个大嵌入矩阵(300万×300大小),embed_mat说。
在训练期间,对于每一小批,我只更新一个小子集的向量从embed_mat (最大15000向量)被选择使用embedding_lookup op。我正在使用Adam优化器来训练我的模型。
由于无法将此embed_mat存储在GPU中,由于它的大小,我在CPU (例如/cpu:0)设备下定义了它,但是模型的其余参数、优化器等都是在GPU (例如gpu:/0)设备下定义的。
问题
发布于 2016-11-18 21:02:54
试着在张紧板上想象一下,你的每个操作都放在哪里。在“图形”选项卡中,你可以用“设备”来着色。理想情况下,嵌入变量、嵌入查找和嵌入梯度更新应该在CPU中,而大多数其他东西应该在GPU中。
https://stackoverflow.com/questions/40621240
复制相似问题