Python 计算CNTK中静态轴的累积和
我想计算CNTK模型中张量的累积和。这对于序列来说相当简单,但对于静态轴,如何做到这一点还不清楚。如果一个人事先知道轴的维度,你可以用一组复杂的聚集/减少和/拼接操作来实现这一点,但这将是非常低效的。像这样的操作肯定在我们的待办事项列表中。由于这可以作为矩阵积进行扩展,因此使用以下实现不会太低效:Python 计算CNTK中静态轴的累积和,python,deep-learning,cntk,Python,Deep Learning,Cntk,我想计算CNTK模型中张量的累积和。这对于序列来说相当简单,但对于静态轴,如何做到这一点还不清楚。如果一个人事先知道轴的维度,你可以用一组复杂的聚集/减少和/拼接操作来实现这一点,但这将是非常低效的。像这样的操作肯定在我们的待办事项列表中。由于这可以作为矩阵积进行扩展,因此使用以下实现不会太低效: def cumsum(x, axis=-1): d = x.shape[axis] U = C.constant(np.triu(np.ones((d,d))).astype(x.dtyp
def cumsum(x, axis=-1):
d = x.shape[axis]
U = C.constant(np.triu(np.ones((d,d))).astype(x.dtype))
if axis != -1:
x = C.swapaxes(x, -1, axis)
z = C.times(x, U)
if axis != -1:
z = C.swapaxes(z, -1, axis)
return z