50
Deep Adversarial Learning for NLP William Wang Sameer Singh With contributions from Ji 1 weiLi. Slides: http://tiny.cc/adversarial

Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

  • Upload
    others

  • View
    20

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Deep Adversarial Learning for NLP

William Wang Sameer Singh

With contributions from Ji1weiLi.Slides: http://tiny.cc/adversarial

Page 2: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Agenda

• Introduction, Background, and GANs (William, 90 mins)

• Adversarial Examples and Rules (Sameer, 75 mins)

• Conclusion and Question Answering (Sameer and William, 15 mins)

2Slides: http://tiny.cc/adversarial

Page 3: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

3

Outline

• Background of the Tutorial

• Introduction: Adversarial Learning in NLP

• Adversarial Generation

• A Case Study of GANs in Dialogue Systems

Page 4: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

4

Rise of Adversarial Learning in NLP

• Through a simple ACL anthology search, we found that in 2018, there were 20+ times more papers mentioning “adversarial”, comparing to 2016.

• Meanwhile, the growth of all accepted papers is 1.39 times during this period.

• But if you went to CVPR 2018 in Salt Lake City, there were more than 100 papers on adversarial learning (approximately 1/3 of all adv. learning papers in NLP).

Page 5: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

5

Questions I’d like to Discuss

• What are the subareas of deep adversarial learning in NLP?

• How do we understand adversarial learning?

• What are some success stories?

• What are the pitfalls that we need to avoid?

Page 6: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

6

Opportunities in Adversarial Learning

• Adversarial learning is an interdisciplinary research area, and it is closely related to, but limited to the following fields of study:

• Machine Learning

• Computer Vision

• Natural Language Processing

• Computer Security

• Game Theory

• Economics

Page 7: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Attack in ML, Vision, & Security• Goodfellow et al., (2015)

7

Page 8: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Physical-World Adversarial Attack / Examples (Eykholt et al., CVPR 2018)

8

Page 9: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Success of Adversarial Learning

CycleGAN (Zhu et al., 2017)

9

Page 10: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Failure Cases

CycleGAN (Zhu et al., 2017)10

Page 11: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Success of Adversarial Learning

GauGAN (Park et al1.1,2019)

Page 12: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Deep Adversarial Learning in NLP

• There were some successes of GANs in NLP, but not so much comparing to Vision.

• The scope of Deep Adversarial Learning in NLP includes:

• Adversarial Examples, Attacks, and Rules

• Adversarial Training (w. Noise)

• Adversarial Generation

• Various other usages in ranking, denoising, & domain adaptation.

12

Page 13: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

13

Outline

• Background of the Tutorial

• Introduction: Adversarial Learning in NLP

• Adversarial Generation

• A Case Study of GANs in Dialogue Systems

Page 14: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Examples

• One of the more popular areas of adversarial learning in NLP.

• E.g., Alzantot et al., EMNLP 2018

14

Page 15: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Attacks (Coavoux et al., EMNLP 2018)

The main classifier

predicts a label y from

a text x, the attacker

tries to recover some

private information z

contained in x from the

latent representation

used by the main

classifier.

15

Page 16: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

16

Adversarial Training

• Main idea:• Adding noise, randomness, or adversarial loss in optimization.

• Goal: make the trained model more robust.

Page 17: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

17

Adversarial Training: A Simple Example

• Adversarial Training for Relation Extraction• Wu, Bamman, Russell (EMNLP 2017).

• Task: Relation Classification.

• Interpretation: Regularization in the Feature Space.

Page 18: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Training for Relation Extraction

Wu, Bamman, Russell (EMNLP2017).

18

Page 19: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Training for Relation Extraction

Wu, Bamman, Russell (EMNLP2017).

19

Page 20: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

20

Outline

• Background of the Tutorial

• Introduction: Adversarial Learning in NLP

• Adversarial Generation

• A Case Study of GANs in Dialogue Systems

Page 21: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

GANs (Goodfellow et al., 2014)

• Two competing neural networks: generator & discriminator

the classifier trying to

detect the fakesample

Image: https://ishmaelbelghazi.github2.1io/ALI/

forger trying to produce

some counterfeit material

Page 22: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

GAN Objective

D(x): the probability that x camefrom

the data rather thangenerator

D

G

22

Page 23: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

GAN Training Algorithm

Discriminator

Generator

23

Page 24: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

GAN Equilibrium

• Global optimality

• Discriminator

• Generator

D

G

s.t.

24

Page 25: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Major Issues of GANs• Mode Collapse (unable to produce diverse samples)

25

Page 26: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

26

Major Issues of GANs in NLP

• Often you need to pre-train the generator and discriminator w. MLE

• But how much?

• Unstable Adversarial Training• We are dealing with two networks / learners / agents

• Should we update them at the same rate?

• The discriminator might overpower the generator.

• With many possible combinations of model choice for generator and discriminator networks in NLP, it could be worse.

Page 27: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Major Issues of GANs in NLP

• GANs were originally designed for images• You cannot back-propagate through the generated X

• Image is continuous, but text is discrete (DR-GAN, Tran et al., CVPR 2017).

27

Page 28: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

SeqGAN: policy gradient for generating sequences(Yu et al., 2017)

28

Page 29: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

29

Training Language GANs from Scratch

• New Google DeepMind arxiv paper (de Masson d’Autume et al., 2019)

• Claims no MLE pre-trainings are needed.

• Uses per time-stamp dense rewards.

• Yet to be peer-reviewed and tested.

Page 30: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

30

Why shouldn’t NLP give up on GAN?

• It’s unsupervised learning.

• Many potential applications of GANs in NLP.

• The discriminator is often learning a metric.

• It can also be interpreted as self-supervised learning (especially with dense rewards).

Page 31: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

31

Applications of Adversarial Learning in NLP• Social Media (Wang et al., 2018a; Carton et al., 2018)

• Contrastive Estimation (Cai and Wang, 2018; Bose et al., 2018)

• Domain Adaptation (Kim et al., 2017; Alam et al., 2018; Zou et al.,2018; Chen and Cardie, 2018; Tran and Nguyen, 2018; Cao et al.,2018; Li et al., 2018b)

• Data Cleaning (Elazar and Goldberg, 2018; Shah et al., 2018; Ryu et al., 2018; Zellers et al., 2018)

• Information extraction (Qin et al., 2018; Hong et al., 2018; Wang et al., 2018b; Shi et al., 2018a; Bekoulis et al., 2018)

• Information retrieval (Li and Cheng, 2018)

• Another 18 papers on Adversarial Learning at NAACL2019!

Page 32: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

GANs for Machine Translation

• Yang et al., NAACL 2018

• Wu et al., ACML 2018

32

Page 33: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

SentiGAN (Wang and Wan, IJCAI 2018)Idea: use a mixture of generators and a multi-classdiscriminator.

33

Page 34: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

No Metrics Are Perfect: Adversarial Reward Learning (Wang, Chen et al., ACL 2018)

34

Page 35: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

AREL Storytelling Evaluation

20%

10%

0%

30%

40%

GAN AREL

• Dataset: VIST (Huang et al., 2016).

Turing Test

50%

XE BLEU-RLCIDEr-RL

Win Unsure

-17.5-13.7

-26.1

-6.3

35

Page 36: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

DSGAN: Adversarial Learning for Distant Supervision IE (Qin et al., ACL 2018)

36

Page 37: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

DSGAN: Adversarial Learning for Distant Supervision IE (Qin et al., ACL 2018)

37

Page 38: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

KBGAN: Learning to Generate High-QualityNegative Examples (Cai and Wang, NAACL2018)

Idea: use adversarial learning to iteratively learnbetter

negative examples.

38

Page 39: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

39

Outline

• Background of the Tutorial

• Introduction: Adversarial Learning in NLP

• Understanding Adversarial Learning

• Adversarial Generation

• A Case Study of GANs in Dialogue Systems

Page 40: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

40

What Should Rewards for Good Dialogue Be Like ?

Page 41: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

TuringTest

Reward for GoodDialogue

41

Page 42: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

How old are you?

I’m25.

I don’t knowwhat you are

talking about

A human evaluator/ judge

Reward for GoodDialogue

Jl3

42

Page 43: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

How old are you?

I don’t knowwhat you are

talking about

I’m25.

Reward for GoodDialogue

Jl3

43

Page 44: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

P= 90% human generated

I’m 25.

How oldare

you ?

I don’t knowwhat you are

talking about

P= 10% human generated

Reward for GoodDialogue

Jl3

44

Page 45: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Learningin

Image Generation (Goodfellow et al.,2014)

Jl3

Jl4

45

Page 46: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Model BreakdownGenerative Model (G)

how are you ?

I’m fine . EOS

Encoding Decoding

eos I’m fine .

46

Page 47: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Model BreakdownGenerative Model (G)

how are you ?

I’m fine . EOS

Encoding Decoding

eos I’m fine .

Discriminative Model (D)P= 90% humangenerated

how are you ? 47eos I’m fine .

Page 48: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Model BreakdownGenerative Model (G)

how are you ?

I’m fine . EOS

Encoding Decoding

eos I’m fine .

Discriminative Model (D)Reward

how are you ? 48eos I’m fine .

P= 90% humangenerated

Page 49: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

REINFORCE Algorithm(William,1992)

PolicyGradientGenerative Model (G)

how are you ?

I’m fine EOS

Encoding Decoding

eos I’m fine .

49

Page 50: Deep Adversarial Learningfor NLPstatic.tongtianta.site/paper_pdf/95dc5768-97b9-11e9-8912-00163e08bb… · •Introduction: Adversarial Learning in NLP •Adversarial Generation •A

Adversarial Learning for Neural DialogueGeneration

Update the

Discriminator

Update the

Generator

The discriminator forcesthe

generator to produce

correct responses 50