我想构造一个权重,其某些元素为零且永不改变,其他元素是变量。例如:
[[0,0,a,0],[0,0,b,0],[0,0,0,c],[0,0,0,d]]
这是一个tf变量,所有零都保持不变。只使用梯度下降来调整a,b,c,d。
有谁知道如何定义这样的矩阵?
答案 0 :(得分:1)
你应该研究SparseTensor。它针对张量由许多零组成的操作进行了高度优化。
因此,在您的情况下,初始化SparseTensor:
a,b,c,d = 10,20,30,40
sparse = tf.SparseTensor([[0,2], [1,2], [2,3], [3,3]], [a,b,c,d], [4,4])