我有一套不同形状的矩阵 M = (M_1, M_2, ... M_K)
. 为了提高效率,我可以将所有 M
存储到一个大小为 K x max(M_k.shape[0]) x max(M_k.shape[1])
的张量中 . 这适用于批处理矩阵乘法和元素添加等操作 . 但是,如果我想做零元素被忽略的元素划分呢?
我想出的最好的版本是:
import numpy as np
import tensorflow as tf
M = tf.constant(np.array([[1.,2.,0],[3.,4.,5.],[6.,0,0]]), tf.float32)
Minv = tf.select(tf.equal(M, 0), tf.zeros_like(M), tf.inv(M))
这是最快的方式吗? tf.select
还能通过GPU加速吗?