Visualisierung der Aufmerksamkeitsaktivierung in Tensorflow

8

Gibt es eine Möglichkeit, die Aufmerksamkeitsgewichte bei einigen Eingaben zu visualisieren, wie die Abbildung im obigen Link (aus Bahdanau et al., 2014) in den seq2seq -Modellen von TensorFlow? Ich habe TensorFlows GitHub-Problem diesbezüglich gefunden, aber ich konnte nicht herausfinden, wie ich die Aufmerksamkeitsmaske während der Sitzung.

    
reiste 15.11.2016, 03:34
quelle

1 Antwort

3

Ich möchte auch die Aufmerksamkeitsgewichte von Tensorflow seq2seq ops für meine Textzusammenfassungsaufgabe visualisieren. Und ich denke, die vorläufige Lösung ist, session.run () zu verwenden, um den Aufmerksamkeitsmaskentensor wie oben erwähnt zu bewerten. Interessanterweise wird das ursprüngliche Seq2seq.py-Ops als Legacy-Version betrachtet und kann nicht einfach in Github gefunden werden, also habe ich einfach die Seq2seq.py-Datei in der 0.12.0 Wheel-Distribution verwendet und sie modifiziert. Um die Heatmap zu zeichnen, habe ich das "Matplotlib" -Paket verwendet, was sehr praktisch ist.

Die endgültige Ausgabe der Aufmerksamkeitsvisualisierung für Nachrichtentiteltexte sieht folgendermaßen aus:

Ich habe den Code wie folgt geändert: Ссылка

seq2seq_attn.py

%Vor%

seq2seq_model_attn.py

%Vor%

predict_attn.py und eval.py

%Vor%

Und wahrscheinlich wird Tensorflow in Zukunft einen besseren Weg haben, die Aufmerksamkeitsgewichte zu extrahieren und zu visualisieren. Irgendwelche Gedanken?

    
Xichen 19.01.2017, 03:06
quelle