Theanoはインデックス割り当てをサポートしていません。わかりましたが、そこテナント変数の単一要素へのインデックス割り当て値
theano.tensor.set_subtensor(x,y)
であり、それはあなたが[5]、B =または[5] + = bのような何かをしたい場合は、theano.tensorを参照してくださいstated
ということです。以下のset_subtensor()およびtheano.tensor.inc_subtensor()を参照してください。
したがって、set_subtensorはインデックス割り当て操作をシミュレートしますか?まあ、そうではありません。 set_subtensorは、次の例に示すように、ndimsが<のときに期待どおりに動作するように見えます。
>>> a = theano.tensor.zeros(10)
>>> a.eval()
array([ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.], dtype=float32)
>>> aa = theano.tensor.set_subtensor(a[5], 5.0)
>>> aa.eval()
array([ 0., 0., 0., 0., 0., 5., 0., 0., 0., 0.], dtype=float32)
クール、a.shape == aa.shape、[5] = 5.0のは、より暗くなるとそれを試してみましょう複製する= AAを設定することができます。
>>> b = theano.tensor.zeros((5,5))
>>> b.eval()
array([[ 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0.]], dtype=float32)
>>> bb = theano.tensor.set_subtensor(b[2][2], 5.0)
>>> bb.eval()
array([ 0., 0., 5., 0., 0.], dtype=float32)
>>> bb.shape.eval()
array([5])
set_subtensorがターゲットインデックスで指定された値を割り当てましたが、それは全体の更新テンソル変数が、更新された値を持つだけでサブテンソルを返しません。
ndims> = 2のtheano tensorsの単一要素に値を割り当てる方法を知っている人はいますか?