从github代码看来,MatMul op不支持分区矩阵。那么在张量流中是否有任何工具支持两个分布在多个节点上的巨大矩阵的乘法?张量流中分布式矩阵乘法的任何现有实现?
回答
TensorFlow内置了支持跨机器分布计算。我会建议阅读分布式TensorFlow文档以了解如何设置TensorFlow集群。
一旦建立了群集,您可以决定如何对问题进行分区,并使用with tf.device
将每个工作人员分配到他们的工作分区。
例如,假设您乘以a*a'
,并且您想要将中间乘法平均分配给2个工人,并将合计结果分配到第3个工人。
你会做这样的事情:
with tf.device(worker0):
# load a1
b1 = tf.matmul(a1, tf.transpose(a1))
with tf.device(worker1):
# load a2
b2 = tf.matmul(a2, tf.transpose(a2))
with tf.device(worker2):
result = b1+b2
的load a1
部分取决于你有多大的矩阵存储。如果它很大,那么load a1
可能会从磁盘读取它。如果它适合内存,你可以使用a1=a[:n/2,:]
来得到它的一个分区
谢谢雅罗斯拉夫! –
我明白我们可以自己实现分布式矩阵乘法。实际上,如果我们想要实现两个不同的巨大矩阵,那么并行算法有很多选择。我的帖子主要是询问google是否已经开放了在张量流中实现分布式矩阵乘法。现在我猜想没有。这种令我感到意外的是,因为它假定我们不能在神经网络训练中存储超过记忆的大型模型。 –
过去几年的趋势是使神经网络更小。 IE,它开始于100亿参数模型,它将YouTube中的视频发现到数百万个精度更高,参数网络更小,适合手机使用的参数网络。 –
- 1. 实现卷积作为矩阵乘法
- 2. 更快的矩阵向量乘法实现[并行计算]
- 3. 张量流RNN实现
- 4. 矩阵乘矢量乘法
- 5. 张量流中的ocr实现
- 6. 什么是密集矩阵向量乘法的最有效的实现?
- 7. 如何在张量流中实现RGB图像张量?
- 8. Numpy:矩阵乘以3D张量 - 建议
- 9. 如何实现分布式信号量?
- 10. Python中的矩阵实现
- 11. 矢量矩阵乘法
- 12. NASM矩阵向量乘法
- 13. 矩阵乘法(分数)
- 14. Jaccard与张量流的距离矩阵
- 15. 使用张量流实现嵌入层
- 16. 使用张量流实现GMM
- 17. 张量流不能实现重复性
- 18. Crout矩阵分解的Python实现
- 19. 使用openMp进行矩阵乘法时出现分割错误?
- 20. C++中的矩阵向量乘法
- 21. 矩阵乘法和张量收缩之间的差别
- 22. 矩阵乘法
- 23. 矩阵乘法
- 24. LDL的Numpy阵列乘法对称矩阵的分解乘法
- 25. 张量流这两种LSTM实现有什么区别,如何初始化LSTM的8个权矩阵?
- 26. 矩阵的乘法
- 27. 的矩阵乘法
- 28. 任意矩阵乘法的复杂性
- 29. 如何在CUDA中实现密集x块对角矩阵乘法?
- 30. Eigen:向量或矩阵分量来实现?
看看这个答案。 [链接](http://stackoverflow.com/questions/35564253/tensorflow-element-wise-matrix-multiplication?rq=1)我认为这个答案可以帮助你。 –
这是不相关的,但非常感谢您的评论 –