SelfAttention Визуализация - PullRequest
0 голосов
/ 15 января 2020

Я тренировал простой GRU со слоем внимания, и теперь я пытаюсь визуализировать весы внимания (я их уже получил). Входные данные представляют собой 2 последовательности, закодированные в одну горячую строку (одна правильная, другая почти такая же, но имеет перестановки букв). Задача состоит в том, чтобы определить, какая из последовательностей является правильной. Вот мой NN:

optimizer = keras.optimizers.RMSprop() 
max_features = 4 #number of words in the dictionary
num_classes = 2
model = keras.Sequential()
model.add(GRU(128, input_shape=(70, max_features), return_sequences=True, activation='tanh'))
model.add(Dropout(0.5))
atn_layer = model.add(SeqSelfAttention()) 
model.add(Flatten())
model.add(Dense(num_classes, activation='sigmoid'))

model.compile(loss='binary_crossentropy',
              optimizer=optimizer,
              metrics=['accuracy']) 

Я пробовал несколько вещей, найденных в StackOverflow, но безуспешно. Дело в том, что я не понимаю, как соединить вес и вклад моего внимания. Буду признателен за любую помощь и предложения.

...