Top Banner
Generative Deep Neural Networks for Dialogue Presented By Shantanu Kumar Adapted from slides by Iulian Vlad Serban
34

Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Jun 05, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Generative Deep Neural Networks for Dialogue

Presented By Shantanu Kumar

Adapted from slides by Iulian Vlad Serban

Page 2: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

What are Dialogue Systems?• Computer system that can

converse like a human with another human while making sense

• Types of Dialogue • Open Domain • Task Oriented

Page 3: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Applications of Dialogue Systems• Technical Support

• Product enquiry • Website navigation • HR helpdesk • Error diagnosis • IVR system in Call Centres

• Entertainment • IoT interface • Virtual Assistants

• Siri, Cortana, Google Assistant • Assistive technology • Simulate human conversations

Page 4: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

How do we build such a system??

Page 5: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Traditional Pipeline models

Page 6: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

End-To-End models with DL

Neural Network ResponseDialogue Context

Page 7: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

End-To-End models with DL

Knowledge Database

Actions

Page 8: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

What is a good Chatbot?The responses should be

• Grammatical • Coherent • In Context

• Ideally non-Generic responses

Page 9: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

How can we learn the model?

- Unsupervised Learning (Generative Models) - Maximise likelihood w.r.t. words

- Supervised Learning - Maximise likelihood w.r.t. annotated labels

- Reinforcement Learning - Learning from real users - Learning from simulated users - Learning with given reward function

Page 10: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Generative Dialogue ModelingDecomposing Dialogue Probability,

Decomposing Utterance Probability,

Page 11: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Maximising likelihood on fixed corpora - Imitating human dialogues

Generative Dialogue Modeling

Page 12: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Models proposed with three inductive biases

• Long-term memory - Recurrent units used (GRU)

• High-level compositional structure - Hierarchical structure - Multi resolution representation (MRRNN paper)

• Representing uncertainty and ambiguity - Latent variables (MRRNN and VHRED)

Generative Dialogue Modeling

Page 13: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Hierarchical Recurrent Encoder-Decoder (HRED)

- Encoder RNN - For encoding each utterance independently into an utterance vector

- Context RNN - For encoding the topic/context of the dialogue up till the current utterance using utterance vectors

- Decoder RNN - For predicting the next utterance

Akshay: Can be applied to arbitrary lengths

Page 14: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Hierarchical Recurrent Encoder-Decoder (HRED)

Page 15: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Bidirectional HRED

- Encoder RNN -> Bidirectional

- Forward and Backward RNNs combined to get fixed length representation - Concat last state of each RNN - Concat of L2 pooling over temporal dimension

Hierarchical Recurrent Encoder-Decoder (HRED)

Page 16: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Hierarchical Recurrent Encoder-Decoder (HRED)

Bootstrapping

- Initialising with Word2Vec embeddings - Trained on Google News dataset

- Pre-training on SubTle Q-A dataset - 5.5M Q-A pairs - Converted to 2-turn dialogue D = {U1 = Q, U2 = A}

Barun Akshay Prachi Dinesh Gagan

Prachi: 2 stage training

Page 17: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Dataset - MovieTriples dataset

• Open Domain - Wide variety of topics covered

• Names and Numbers replaced with <person> and <number> tokens

• Vocab of 10K most popular tokens

• Special <continued-utterance> and <end-of-utterance> tokens to capture breaks

Gagan, Rishabh, Dinesh

Why only triples?

Anshul:

Split train/val on movies?

Page 18: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Dialogue ModelingUbuntu Dialog Corpus - Goal-driven: Users resolve technical problems

- ~0.5M dialogues

Twitter Dialog Corpus - Open-domain: Social chit-chat

- ~0.75M dialogues in Train, 100K for Val and Test - 6.27 utterance and 94 tokens per dialogue

Page 19: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Expert

Hello! Recently I updated to ubuntu 12.04 LTS and I am unsatisfied by its performance. I am facing a bug since the upgrade to 12.04 LTS. Can anyone help??????????

User

Example - Ubuntu Corpus

Page 20: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Expert

Hello! Recently I updated to ubuntu 12.04 LTS and I am unsatisfied by its performance. I am facing a bug since the upgrade to 12.04 LTS. Can anyone help??????????

You need to give more details on the issue.

User

Example - Ubuntu Corpus

Page 21: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Expert

Hello! Recently I updated to ubuntu 12.04 LTS and I am unsatisfied by its performance. I am facing a bug since the upgrade to 12.04 LTS. Can anyone help??????????

You need to give more details on the issue.

Every time I login it gives me "System Error" pop up. It is happing since I upgraded to 12.04.

User

Example - Ubuntu Corpus

Page 22: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Expert

Hello! Recently I updated to ubuntu 12.04 LTS and I am unsatisfied by its performance. I am facing a bug since the upgrade to 12.04 LTS. Can anyone help??????????

You need to give more details on the issue.

Every time I login it gives me "System Error" pop up. It is happing since I upgraded to 12.04.

Send a report, or cancel it.

User

Example - Ubuntu Corpus

Page 23: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Example - Ubuntu CorpusExpert

Hello! Recently I updated to ubuntu 12.04 LTS and I am unsatisfied by its performance. I am facing a bug since the upgrade to 12.04 LTS. Can anyone help??????????

You need to give more details on the issue.

Every time I login it gives me "System Error" pop up. It is happing since I upgraded to 12.04.

Send a report, or cancel it.

I have already done that but after few min, it pops up again...

User

Page 24: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Example - Twitter CorpusPerson B

Hanging out in the library for the past couple hours makes me feel like I'll do great on this test! @smilegirl400 wow, what a nerd lol jk haha

=p what!? you changed your bio =(

@smileman400 Do you like my bio now? I feel bad for changing it but I like change. =P @smilegirl400 yes I do =) It definitely sums

up who you are lisa. Yay! you still got me =)

Person A

Page 25: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Evaluation Metric- Word Perplexity - Measures the probability of generating the exact reference utterance

- Word error-rate - Number of words in the dataset the model has predicted incorrectly divided by the total number of words in the dataset. - Penalises diversity [Akshay]

Barun Akshay Dinesh Rishabh Arindam Anshul

Page 26: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

- Word Perplexity - Can only be used with generative models - Given an utterance, what is the probability?

How do we evaluate given an output utterance? - Multi-modal output - Space of possible valid utterance is huge - Human annotation is expensive and slow

Evaluation Metric

Page 27: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

How do we evaluate given an output utterance? - Multi-modal output - Space of possible valid utterance is huge - Human annotation is expensive and slow

Automatic Evaluation Metrics - Word overlap measure (BLEU, ROUGE, Levenshtein dist.) - Embedding based measures - Poor correlation with Human annotation

Evaluation Metric

Page 28: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Results

Lack of error analysis

Page 29: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

MAP Output- Most probable last utterance - Found using beam search for better approximation - Generic responses observed - Stochastic sampling gives more diverse dialogues

Nupur: MAP vs Stochastic Sampling

Page 30: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer
Page 31: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

ExtensionsModel • [Barun][Rishabh] Attention model during decoding for long

contexts • [Prachi] Dialogue systems with multiple participants

• Different decoders for each participant? • Order of speaking

• [Rishabh] Incorporating outside knowledge using KB

Page 32: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

ExtensionsData • [Akshay][Surag] Use bigger datasets like Reddit for dialogue • [Rishabh] Using film dialogue scripts from films like "Ek ruka

hua fasla" might be useful. • [Barun] Artificially scoring generic responses • [Surag] Prune generic responses from training data

Page 33: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Extensions• [Prachi] Automatic generation of dialogue for movie given

storyline and character description • [Gagan] Pre-train word embeddings on SubTle • [Arindam] RL is the best bet to avoid generic responses • [Arindam] Adversarial evaluation • [Arindam] Train additional context to add consistency?

Page 34: Generative Deep Neural Networks for Dialoguemausam/courses/col864/spring... · 2017. 4. 21. · Adapted from slides by Iulian Vlad Serban. What are Dialogue Systems? • Computer

Thank You