私はtheano共分散行列を持っています。私はそれを要素の賢明な正方形で計算しようとしています。私はそれが簡単です知っているtheano matrixのelementwise square
TypeError: ('Bad input argument to theano function with name "cov.py:114" at index 0(0-based)', 'Expected an array-like object, but found a Variable: maybe you are trying to call a function on a (possibly shared) variable instead of a numeric array?')
:
COVのように計算された共分散行列であり、import theano
a, b = theano.tensor.matrices('a', 'b')
square = theano.function([a, b], a * b)
sq = square(cov, cov)
:
y1_pre = T.dot(self.x, self.W_left) + self.b_left
y1 = activation(y1_pre, self.hidden_activation)
y2_pre = T.dot(self.x, self.W_right) + self.b_right
y2 = activation(y2_pre, self.hidden_activation)
y1_mean = T.mean(y1, axis=0)
y1_centered = y1 - y1_mean
y2_mean = T.mean(y2, axis=0)
y2_centered = y2 - y2_mean
cov = T.sum(y1_centered[:, :, None] * y2_centered[:, None, :], axis=0)
しかし、それはエラー以下投げている私は同じのためのコード、次の書かれていますしかし、それでも可能な修正を見つけることができませんでした。この点で私を助けてください。
「cov」とは何ですか? – JeD
theano共分散行列 – Shweta
'sq = square(cov [:]、cov [:])'を使ってみましたか?私はassanoの行列はnumpy配列のように振る舞う? – JeD