Conversational AI. Dialogsysteme, Chatbots, Assistenten Veranstalter: Christoph Ringlstetter - Sitzung IV: Natural Language Generation
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Conversational AI. Dialogsysteme, Chatbots, Assistenten Veranstalter: Christoph Ringlstetter Sitzung IV: Natural Language Generation 22.10.2019 1
Today. • (1) NLG Sprachgenerierung Nur grober Überblick. • (2) NLT GPT2/3 Framework. Marcelina Wisniewska . • (3) Emotions and Empathic Dialog Systems. Masa Maric • (4) Ausgefallen. Dialogmanagement, Probabilistic Markov Decision Process, End-End Methods. Geplant für 17.12. 22.10.2019 2
NLG. Kurzer Überblick. • Was wird denn da gemacht? • Nachdem der Dialogmanager die Äußerung interpretiert hat und die . nächste Aktion festgelegt ist: • (1) Inhalt der Antwort festlegen (Content Determination) • (2) Oberflächenform der Antwort festlegen (Content Realization) Literatur: Survey of the State of the Art in Natural Language Generation: Core tasks, applications and evaluation Albert Gatt/ Emiel Krahmer A Survey of Natural Language Generation Techniques with a Focus on Dialogue Systems - Past, Present and Future Directions Sashank Santhanam/ Samira Shaikh The Illustrated Transformer Jay Allamar 22.10.2019 3
NLG. Überblick • Vorgehensweisen. • (1) Templates von vorher festgelegten Antworten . • (2) Linguistisch motiviertes Pipeline-Modell klassisches NLG • (3) Deep Learning basierte Architekturen NLG 22.10.2019 4
NLG. Überblick. Templates - “Canned Text” McTear Kap 12 • Restricted Domains. E.g. Flugbuchung. • Prompts zur Informationsgewinnung. Wann wollen sie losreisen? • Prompts zum Troubleshooting. „Ich habe Sie nicht verstanden.“ • Prompts zu Confirmation. „Sie wollen also nach London“ . • Prompts zur Knowledge Presentation. „Wir haben einen Flug von München über Frankfurt nach London für 210 Euro, Economy.“ Strategie: sog. Canned Text und Slotfilling „Sie wollen also am $depaturetime nach $destination fliegen“ 22.10.2019 5
NLG. Überblick. Klassische NLG. • Ausgabe muss je nach Laufzeitparametern strukturiert werden. • Präsentation soll flexibler sein. • Summarization notwendig z.B. nach Websearch. • Erste Systeme: Wettervorhersagen. Summaries von . Katastrophen/medizinischen Reports. 22.10.2019 6
NLG. Überblick. Klassische NLG. Wettervorhersage • Signalanalyse • Daten Interpretation • Document Planning. Content Determination + Discourse Planning . • Microplanning / Sätze • Oberflächenrealisierung Reiter: An Architecture for Data-to-Text Systems 22.10.2019 7
NLG. Überblick. Statistische NLG. • Rieser/Lemmon aus McTear. System zur Präsentation von Restaurantinformation. • Summary. I found 26 restaurants… • Recommend. The restaurant XX hast the best overall quality . • Compare. Restaurant XX has a terrace whereas YY is in moderate price range. • Jetzt werden die Präsentationsmöglichkeiten einer Treffermenge und deren Kombinationen mit einem MDP und RL modelliert und über eine Rewardfunktion eine optimale Präsentation gelernt. 22.10.2019 8
NLG. Überblick. Deep Learning basiert. • Seit 2015 erreichen DL Architekturen state-of-the-art Performanz zu den verschiedenen NLP Tasks. • Erste benutzte Architekturen: Feedforward DNN, CNN • Für sequenzielle Daten Language Modells als Encoder-Decoder . Architektur nur aggregierte Daten werden verarbeitet • RNNs einfache Nodes, Netz als Loop das Sequenzen verarbeitet • LSTMs Netz aus Memory Cells (schon 1997 von Hochreiter/Schmidhuber): vanishing Gradient Lösung • Memory Networks • Transformers 22.10.2019 9
NLG. Überblick • Ausgangspunkt für sequentielle Modelle. Brauchen irgendeine Art Memory. Z. B. Einfache Referenzierung. „In 2022 kommt der lang erwartete Elektro-Bulli. Das Fahrzeug wird die . Größe des legendären T2 haben.” Um solche Abhängigkeiten zu modellieren wurden RNNs eingesetzt die über ihren Loop Mechanismus die vorhergehenden Eingaben berücksichtigen können (sollten). • 22.10.2019 10
NLG. Überblick. Deep Learning basiert. RNN. • Vergleich mit einem Standard Feedforward Netz: keine Möglichkeit einer sequentiellen Eingabeverarbeitung welche irgendwie Wichtigkeit von Kontext in Bezug zur Nähe modelliert. . • Für sequentielle Daten: z.B. einem Eingabesatz, Benutzeräußerung. • Netz füttert seinen Zustand für jeden neuen Input in das Netz zurück. Aufgeklappt als Netz mit t-vielen Layern. https://towardsdatascience.com/transformers-141e32e69591 22.10.2019 11
NLG. Überblick. Deep Learning basiert. RNN. Lernmechanismus: Da NN nur Zahlenobjekte als input, nehmen werden die Wörter aus dem Eingabetext in Vektoren z.B. Embeddings kodiert (word2vec or GloVe… ELMO, positional Embedd ) 3 zentrale Formeln: . (1) ht Vektorrepräsentation des Inputs zum Zeitpunkt (t): berechnet aus dem gewichteten Inputvektor und dem vorhergehenden Vektor ht-1 (2) Vorhersage des nächsten Wortes aus dem hidden State Vektor und der Ausgabebewichtsmatrix. Durch Softmax bekommen wir die Summe von 1 über alle Möglichkeiten. (3) Fehler. Hier Cross Entropie Loss Function. Fehler zwischen vorhergesagtem und tatsächlichem. Vanishing Gradient: in der Backpropagation werden die Gewichte auf der selben Matrix über die gesamte Länge der Sequenz angepasst und verschwinden 22.10.2019 12
NLG. Überblick. RNNs für die Wordprediction Task. (1) Clouds in the ___ (2) I grew up in France. We had a wonderful time in an old ….. I speak fluently ___ Die Informatiohn wird für jeden Schritt weiter gereicht und je länger die Kette ist desto wahrscheinlicher gehen .long distanc informationen verloren. Wieder und wieder multipliziert. Wird klein. Z.B. 0,7**10 = 0.0282475249. Ganzer Text. Lösungsvorschlag LSTM. • 22.10.2019 13
NLG. Überblick. LSTMs für die Wordprediction Task. https://towardsdatascience.com/transformers-141e32e69591 • Statt einfachen Nodes komplexe Zellen. Jede Zelle nimmt als Inputs x_t (ein Wort im Fall etwas der Satz-Satz Übersetzung), den vorhergehenden Zustand der Zelle, den output der vorhergehenden Zelle. Darauf basierend wird eine neuer Zellenzustand t und ein Output für t generiert. 22.10.2019 14
NLG. Überblick. Deep Learning basiert. LSTM. LSTMs. Vanishing/Exploding gradient. Statt einfachen hidden units werden in LSTMs sogenannte Memory Cells eingesetzt die den Input zusammen mit dem schon Gelerntem verarbeiten. Update Formeln. . ($) !" = '((! ) $ +ℎ + .! $−1 ($) $ /" = '((/ ) +ℎ $−1 + ./ ($) 0" = '((0 ) $ + ℎ $−1 + .0 ($) ($−1) ($) ($) ($) 1" = 1" × 0" + !" × /" ($) 3" = '((3 ) $ + ℎ $−1 + .3 ($) ($) ($) 4" = 3" × tanh( 1" ) Allerdings waren die LSTMs bezüglich der Modellierung von Dependencies nicht wirklich erfolgreich. LSTM is dead long live Transformers 22.10.2019 15
NLG. Überblick. Deep Learning basiert. RNN, LSTM. RNN mit Attention. Statt nur den ganzen Satz in einen hidden State zu kodieren wird für jedes wort im Encoding ein zusätzlicher Zustand belegt der vom Decoder aufgerufen werden kann. . https://towardsdatascience.com/transformers-141e32e69591 22.10.2019 16
NLG. Überblick. Deep Learning basiert. RNN, LSTM. • RNN und auch LSTM. Sehr langsam zu trainieren da der Input nicht parallel sondern sequentiel verarbeitet wird. • Long Term dependencies können gerade nicht gelernt werden da sie . auch im LSTM vergessen werden. 22.10.2019 17
NLG. Überblick. Deep Learning basiert. Encoder/Decoder Sequence-2-Sequence Architektur Problem ist dass im Vektor C der . durch den Encoder gelernt wird der gesamte Input kodiert wird. Lösung; Attention Mechanismus der es dem Dekoder erlaubt unterschiedliche Teile des Inputs zu berücksichtigen. 22.10.2019 18
NLG. Überblick. Deep Learning basiert. Memory Networks. Seitenast. • Zusätzlicher Speicher um zu kurze Memory Zeit der hidden States zu überbrücken. Wurden für Q/A Tasks verwendet um Faktendatenbanken einzupflegen. Kommen in Q/A Sitzung darauf zurück. . 22.10.2019 19
NLG. Überblick. Transformer Models. Transformer Models. • Haben für eigentlich alle NLP Tasks Verbesserungen gebracht. • Basierend auf dem Attention Mechanismus werden für Seq2Seq globale Dependencies zwischen Input und Output modelliert. •. Der Transformer modelliert die Encoder/Decoder Architektur aber jeder Encoder ist ein Stack von 6 Encodern wobei jeder Encoder Self-Attention und ein Feedforward Netz enthält. • Der Decoder ist ebenfalls ein Stack mit den selben Komponenten. Plus zusätzlichem Attention Layer der dem Decoder hilft jeweils auf die relevanten Teile des Input Satzes zu zeigen. 22.10.2019 20
NLG. Überblick. Transformers. Transformer Modelle werden z.B. bei OpenAI für die Sprachmodelle benutzt auch z.B. bei DeepMind für AlphaStar. Wurden . entwickelt um Seq2Seq Probleme wie MT zu verbessern. Damit natürlich auch für unser Problem der Dialogmodellierung sehr relevant.. 22.10.2019 21
NLG. Überblick. Transformers. Kurze Erklärung Beschreibung des Encoding. Jeder String des Inputs in 512 Vektor. In den Ersten Encoder. Dann bekommt jeder Encoder den Output vom letzen und führt ihn durch die beiden Layer. • http://jalammar.github.io/illustrated-transformer/ 22.10.2019 22
NLG. Überblick. Transformers. Kurze Erklärung Drei Vektoren für jedes Input Token (Embeddings). Query vector, Key vector und Value vector. Durch Multiplikation mit drei gelernten Matrizen WQ,WK,WV. Dimension 64 wg Effizienz. • http://jalammar.github.io/illustrated-transformer/ 22.10.2019 23
NLG. Überblick. Transformers.Kurze Erklärung. Jetzt wird für das erste Wort für jedes Wort t im Satz die Bedeutung als Score zwischen q1 und kt berechnet. Die scores werden dann noch manipuliert. Softmax. Multiplizieren alle vi vektoren der Wörter im Fenster mit ihrem score für • http://jalammar.github.io/illustrated-transformer/ q1 und summieren die Werte in einen z1-Wert für den Output zum FF-Layer 22.10.2019 24
NLG. Überblick. Transformers. Kurze Erklärung. Im Decoding wird dann auf die berechneten Vektoren zur Attention zurückgegriffen. 22.10.2019 • http://jalammar.github.io/illustrated-transformer/ 25
NLG. Überblick. Santhanam Paper. Literaturreview zu Open Domain Systemen seit 2015 in Tabellenform. Trends. Corpora. Open Subtitles, Twitter Conversation Dialogues, Movie Triples. Persona Chat .Data Set. Reddit Dataset. Architecture. Variations of Seq2seq models with Attention mechanism. Transformer Models also in Dialog. Evaluation Scores. Adapting Bleu, Meteor. Hatten wir schon drüber gesprochen. And Embedding based metrics. Human Evaluation: Semantic Relevance, Appropriateness, Intristingness, Fluencey, Grammar. 22.10.2019 26
NLG. Überblick. Transformers. Open Challenges. Encoding Context. Weltwissen aus Wissensbanken oder vorhergehendem .Dialog Turns. Der Agent braucht diese Information um eine kohärente informative Antwort zu generieren: “In tune with the context of the conversation“. Die meisten Arbeiten bislang sind single-turn. Eingang-Response. Damit kann also bislang das multi-turn problem Kontext nicht mal untersucht werden. Wenn es versucht wurde. Seq2seq, oder hierarchical. 22.10.2019 27
Sie können auch lesen