Je suis en train de mettre en œuvre une couche keras personnalisée. La méthode d'appel de ma classe est la suivante.Recherche des dimensions d'une expression intermédiaire keras
def call(self, inputs, mask=None):
if type(inputs) is not list or len(inputs) <= 1:
raise Exception('Merge must be called on a list of tensors '
'(at least 2). Got: ' + str(inputs))
e1 = inputs[0]
e2 = inputs[1]
f = K.transpose((K.batch_dot(e1, K.dot(e2, self.W), axes=1))) #Removing K.transpose also works, why?
return f
Je verfied et le code fonctionne mais je suis en train de trouver des moyens de mieux debug lors de l'implémentation d'une couche personnalisée dans keras. En supposant que e1 et e2 sont (taille_batch * d) et W est (d * d) Comment puis-je trouver les dimensions de chaque sous-partie de mon expression? Par exemple. K.dot (e2, self.W), le résultat de batch_dot etc.
Connaissez-vous le truc similaire pour tensorflow? – Apurv
Malheureusement, je ne le fais pas. Il semble qu'il devrait y avoir [fonctionnalité similaire] (http://stackoverflow.com/questions/35366970/theano-function-equivalent-in-tensorflow) dans tensorflow si! – Tivaro
Avez-vous vérifié [cette publication] (http://stackoverflow.com/questions/37221621/how-to-turn-entire-keras-model-into-theano-function?rq=1)? – Tivaro