Как распечатать тензорную форму в функции лямбда-слоя? - PullRequest
0 голосов
/ 22 ноября 2018

Я определил слой Lambda, который передает тензоры в функцию attention.Я хочу напечатать формы промежуточных тензоров в attention.Я пробовал print(K.int_shape(ques)), но это не печатает формы.Я в порядке со статическими и динамическими формами.

layer = Lambda(attention, attention_shape)     

def attention(tensors):
    img = tensors[0]    # (7,7,512)
    ques = tensors[1]   # (512,)
    print('attention: img shape: '+ str( K.int_shape(img) ) )
    print('attention: ques shape: '+ str( K.int_shape(ques) ) )

    ques = RepeatVector(49)(ques)
    ques = Reshape((7, 7, -1))(ques)           # (7,7,512)

    print('attention: ques shape 2: '+ str( K.int_shape(ques) ) )

    return ques    
...