Theano自定义运算符的梯度,返回矩阵

时间:2018-11-09 13:14:10

标签: theano

我必须编写一个Theano自定义运算符,该运算符将返回矩阵

class MyOp(tt.Op):
    itypes = [tt.dscalar, tt.dscalar, tt.dscalar]
    otypes = [tt.dmatrix]

    def perform(self, node, inputs, outputs):
        c11, c12, c22 = inputs
        outputs[0][0] = np.array([[c11,c12],[c12,c22]])

对此说,该操作符如何实现grad()方法? 由于变量是c11,c12和c22,因此此方法应返回数组

[g1,g2,g3]

其中

g1=[[1,0],[0,0]]
g2=[[0,1],[1,0]]
g3=[[0,0],[0,1]]

谢谢, F

0 个答案:

没有答案