【发布时间】:2018-07-11 14:11:30
【问题描述】:
我有一些embedding_vectors,我需要使用以下new_embeddings:
new_embeddings = tf.nn.embedding_lookup_sparse(
params=embedding_vectors,
sp_ids=some_ids,
sp_weights=None,
)
问题在于some_ids 确实很大并且非常稀疏但对于给定的数据二维张量是恒定的。我的管道包括对其indices、values 和shape 的评估,我在训练循环中直接使用sparse_placeholder 来填充some_ids 占位符。
不幸的是,它非常慢。似乎在每个训练步骤中,some_ids 都被转换为密集张量,这似乎真的没有必要而且很奇怪。我对这种转换是否正确?embedding_lookup_sparse 有什么替代方法吗?
【问题讨论】:
标签: python tensorflow sparse-matrix embedding