我似乎无法找到关于此的任何信息,这意味着我以错误的方式思考共享变量...
我知道你可以使用get_value()和set_value(),所以我可以做到
>>> x = theano.shared(np.array(([1,2,3])))
>>> x.get_value()
array([1,2,3])
>>> x.set_value(np.append(x.get_value(),4))
>>> x.get_value()
array([1,2,3,4])
但我无法做到,例如
>>> x.set_value(np.vstack((x.get_value(),x.get_value())))
因为这导致了错误数量的维度的TypeError。我迭代一个函数,它将两个矩阵作为计算的一部分,但我想只将矩阵的一部分传递给函数,形状各异(想象一个神经网络,其中节点被随机删除给定迭代)。是否可以在不重新定义每次迭代的共享变量,计算和函数的情况下执行此操作?