Я изучаю библиотеку Theano Python. Я просто столкнулся блок кода, используя Theano показанный ниже:Проблемы с кодом Python с использованием Theano
import theano
import theano.tensor as T
from collections import OrderedDict
import numpy
params = OrderedDict() ### params is a python ordered dictionary.
r = numpy.random.rand(10, 5) ### Generate a random matrix with dimension of 10 * 5.
params['haha'] = (0.01 * r).astype('float32') ### insert a key 'haha' with its value into the dictionary.
sparams = OrderedDict() ### sparams is another python ordered dictionary.
sparams['haha'] = theano.shared(params['haha'], name='haha') ### Create Theano Shared Variable from the params.
x = T.matrix('x', dtype='int64') ### x is a theano tensor matrix
n1 = x.shape[0] ### What does it mean?
n2 = x.shape[1] ### What does it mean?
h = sparams['haha'][x.flatten()].reshape([n1, n2, 5]) ### What does it mean?
Моя проблема в том, что я не могу понять эту часть кода:
n1 = x.shape[0] ### What does it mean?
n2 = x.shape[1] ### What does it mean?
h = sparams['haha'][x.flatten()].reshape([n1, n2, 5]) ### What does it mean?
Кроме того, мне интересно, если есть способ в Python для проверьте значения, а также размеры тензорных переменных Фано. Я очень признателен, если кто-нибудь может помочь мне решить проблему.
Спасибо за ваш великий ответ ! Фактически, я попытался напечатать тензорную переменную кодом: 'print h', но, похоже, напечатал что-то вроде:' Reshape {3} .0'. Поэтому я не могу определить значение тензорной переменной, а также размерность. Кроме того, я либо не понимаю смысла 'h = sparams ['haha'] [x.flatten()]. Reshape ([n1, n2, 5])' ... –