Podczas kompilowania funkcji w theano
można zaktualizować wspólną zmienną (np. X), podając updates=[(X, new_value)]
. Teraz staram się aktualizować tylko podzbiór wspólnej zmiennej:Jak mogę przypisać/zaktualizować podzbiór tensora współdzielonego w Theano?
from theano import tensor as T
from theano import function
import numpy
X = T.shared(numpy.array([0,1,2,3,4]))
Y = T.vector()
f = function([Y], updates=[(X[2:4], Y)] # error occur:
# 'update target must
# be a SharedVariable'
Kody podniesie błędzie „target aktualizacji musi być SharedVariable”, myślę, że oznacza Aktualizuj cele nie mogą być zmienne niewspólną . Czy istnieje sposób na skompilowanie funkcji po prostu udpate podzbiór wspólnych zmiennych?
+1 To uratowało mój dzień. Dzięki! – displayname
Aby zaktualizować wartości nieciągłe: 'X_update = (X, T.set_subtensor (X [[2,4]], Y))' –
[tutaj] (http://deeplearning.net/software/theano/tutorial/ faq_tutorial.html) mówi, że 'inc_subtensor' jest preferowany do' set_subtensor' – Kirbies