38
CS546: Machine Learning in NLP (Spring 2018) http://courses.engr.illinois.edu/cs546/ Julia Hockenmaier [email protected] 3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation

Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546: Machine Learning in NLP (Spring 2018)http://courses.engr.illinois.edu/cs546/

Julia [email protected] Siebel CenterOffice hours: Tue/Thu 2pm-3pm

Lecture 2Overview/Motivation

Page 2: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

A bit more admin…

2

Page 3: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Class website…… is now up at https://courses.engr.illinois.edu/cs546

3

Page 4: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Required readingY. Goldberg (2017) Neural Network Methods for Natural Language Processing PDF at http://www.morganclaypool.com/doi/10.2200/S00762ED1V01Y201703HLT037

4

Page 5: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Current planWeeks 1—4 Intro lectures

Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably Goldberg Chs. 10, 11, 14, 15)

Weeks 5—14 Student-led paper presentationsWeek 15 Project presentations

5

Page 6: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS447: Natural Language Processing (J. Hockenmaier)

Why is natural language understanding hard?

6

Page 7: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

“I made her duck”What does this sentence mean?

“duck”: noun or verb?“make”: “cook X” or “cause X to do Y” ?“her”: “for her” or “belonging to her” ?

Language has different kinds of ambiguity, e.g.:Structural ambiguity

“I eat sushi with tuna” vs. “I eat sushi with chopsticks”“I saw the man with the telescope on the hill”

Lexical (word sense) ambiguity“I went to the bank”: financial institution or river bank?

Referential ambiguity “John saw Jim. He was drinking coffee.”

7

Page 8: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

“I made her duck cassoulet”(Cassoulet = a French bean casserole)

The second major problem in NLP is coverage:We will always encounter unfamiliar words and constructions.

Our models need to be able to deal with this.

This means that our models need to be able to generalize from what they have been trained on to what they will be used on.

8

Page 9: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Two core problems for NLPAmbiguity: Natural language is highly ambiguous-Words have multiple senses and different POS-Sentences have a myriad of possible parses-etc.

Coverage (compounded by Zipf’s Law)-Any (wide-coverage) NLP system will come across words or constructions that did not occur during training. -We need to be able to generalize from the seen events during training to unseen events that occur during testing (i.e. when we actually use the system).

9

Page 10: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS447: Natural Language Processing (J. Hockenmaier)

Review: The NLP pipeline

10

Page 11: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

The NLP (NLU) PipelineAn NLP system may use some or all of the following steps:

Tokenizer/Segmenterto identify words and sentences

Morphological analyzer/POS-taggerto identify the part of speech and structure of words

Word sense disambiguationto identify the meaning of words

Syntactic/semantic Parserto obtain the structure and meaning of sentences

Coreference resolution/discourse modelto keep track of the various entities and events mentioned

11

Page 12: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Task: Tokenization/segmentation

We need to split text into words and sentences.-Languages like Chinese don’t have spaces between words.-Even in English, this cannot be done deterministically: There was an earthquake near D.C. You could even feel it in Philadelphia, New York, etc.

NLP task:What is the most likely segmentation/tokenization?

12

Page 13: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

POS tagging

POS tagging is a sequence-labeling task.Standard techniques include- Hidden Markov Models (generative)- Chain Conditional Random Fields (discriminative)

Accuracy on English newspaper text is excellent (~97%),but is worse on other domains

13

Pierre Vinken , 61 years old , will join IBM ‘s board as a nonexecutive director Nov. 29 .

Pierre_NNP Vinken_NNP ,_, 61_CD years_NNS old_JJ ,_, will_MD join_VB IBM_NNP ‘s_POS board_NN as_IN a_DT nonexecutive_JJ director_NN Nov._NNP 29_CD ._.

Page 14: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Task: Syntactic parsing

14

Verb Det Noun Noun , Name . Open the pod door , Hal .

NOUNNP

VP

NP

S

Page 15: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Observation: Structure corresponds to meaning

Correct analysis

Incorrect analysis

eat with tunasushiNPNP

VP

PPNP

V P

sushi eat with chopsticksNPNP

VP

PPVPV P

eat sushi with tuna

eat sushi with chopsticks

eat sushi with chopsticksNPNP

NPVP

PPV P

eat with tunasushiNPNP

VP

PPVPV P

eat sushi with tuna

eat sushi with chopsticks

15

Page 16: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

PP attachment ambiguityA man walks down a field with a crowd in the stands behind him.

16

Does the man walk with the crowd? Is the man in the stands? Is this a field with a crowd?

There is a combinatorial explosion of possible analyses (most of which are wildly implausible for people).

Page 17: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

What about NL Generation?Depending on the task, NLG systems have to decide… what to say

[i.e. what information to convey that is appropriate for the context and application]

… and how to say itThis breaks down into: … fluency: how to produce a grammatical, fluent utterance that is appropriate (in the context, for the user, etc.)… faithfulness: how to produce an utterance that actually conveys the intended information

Challenges for NLG from an ML perspective include:- lack of appropriate training data (esp. for dialog)-suitable evaluation metrics

17

Page 18: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

NLP research questions reduxHow do you represent (or predict) words?

Do you treat words in the input as atomic categories, as continuous vectors, or as structured objects?How do you handle rare/unseen words, typos, spelling variants, morphological information?Lexical semantics: do you capture word meanings/senses?

How do you represent (or predict) word sequences?Sequences = sentences, paragraphs, documents, dialogs,…As a vector, or as a structured object?

How do you represent (or predict) structures?Structures = labeled sequences, trees, graphs, formal languages (e.g. DB records/queries, logical representations)How do you represent “meaning”?

18

Page 19: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Another core NLP task: Language ModelingA language model defines a distribution P(w) over the strings w = w1w2..wi… in a language

Typically we factor P(w) such that we compute the probability word by word: P(w) = P(w1) P(w2 | w1)… P(wi | w1…wi−1)

Standard n-gram models make the Markov assumption that wi depends only on the preceding n−1 words: P(wi | w1…wi−1) := P(wi | wi−n+1…wi−1)

19

Page 20: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Why does NLP need ML?

20

Page 21: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Statistical models for NLPNLP makes heavy use of statistical models as a way to handle both the ambiguity and the coverage issues.-Probabilistic models (e.g. HMMs, MEMMs, CRFs, PCFGs)-Other machine learning-based classifiers

Basic approach:-Decide what kind of model to use-Define features that could be useful (especially for classifiers), or decide on the tag set/grammar to be used-Train and evaluate the model.

21

Page 22: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Features for NLPMany systems use explicit features:-Words (does the word “river” occur in this sentence?)-POS tags-Chunk information, NER labels-Parse trees or syntactic dependencies (e.g. for semantic role labeling, etc.)

Feature design is usually a big component of building any particular NLP system.

Which features are useful for a particular task and model typically requires experimentation, but there are a number of commonly used ones (words, POS tags, syntactic dependencies, NER labels, etc.)

22

Page 23: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Why neural approaches to NLP?

23

Page 24: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Motivation for neural approaches to NLP: Features can be brittle

Word-based features:How do we handle unseen/rare words?

Many features are produced by other NLP systems (POS tags, dependencies, NER output, etc.)These systems are often trained on labeled data.

Producing labeled data can be very expensive.We typically don’t have enough labeled data from the domain of interest.We might not get accurate features for our domain of interest.

24

Page 25: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Features in neural approachesMany of the current successful neural approaches to NLP do not use traditional discrete features.

Words in the input are often represented as dense vectors (aka. word embeddings, e.g. word2vec)

Traditional approaches: each word in the vocabulary is a separate feature. No generalization across words that have similar meanings. Neural approaches: Words with similar meanings have similar vectors. Models generalize across words with similar meanings

Other kinds of features (POS tags, dependencies, etc.) are often ignored.

25

Page 26: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Motivation for neural approaches to NLP: Markov assumptions

Traditional sequence models (n-gram language models, HMMs, MEMMs, CRFs) make rigid Markov assumptions (bigram/trigram/n-gram).

Recurrent neural nets (RNNs, LSTMs) can capture arbitrary-length histories without requiring more parameters.

26

Page 27: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Neural approaches to NLP

27

Page 28: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

What is “deep learning”? Neural networks, typically with several hidden layers

(depth = # of hidden layers)Single-layer neural nets are linear classifiersMulti-layer neural nets are more expressive

Very impressive performance gains in computer vision (ImageNet) and speech recognition over the last several years.

Neural nets have been around for decades. Why have they suddenly made a comeback?

Fast computers (GPUs!) and (very) large datasets have made it possible to train these very complex models.

28

Page 29: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

What are neural nets?Simplest variant: single-layer feedforward net

29

Input layer: vector x

Output unit: scalar y

Input layer: vector x

Output layer: vector y

For binary classification tasks: Single output unitReturn 1 if y > 0.5Return 0 otherwise

For multiclass classification tasks:K output units (a vector)Each output unit yi = class iReturn argmaxi(yi)

Page 30: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Multiclass models: softmax(yi)

Multiclass classification = predict one of K classes.Return the class i with the highest score: argmaxi(yi)

In neural networks, this is typically done by using the softmax function, which maps real-valued vectors in RN into a distribution over the N outputsFor a vector z = (z0…zK): P(i) = softmax(zi) = exp(zi) ∕ ∑k=0..K exp(zk)

(NB: This is just logistic regression)

30

Page 31: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Single-layer feedforward networksSingle-layer (linear) feedforward network

y = wx + b (binary classification)w is a weight vector, b is a bias term (a scalar)

This is just a linear classifier (aka Perceptron)(the output y is a linear function of the input x)

Single-layer non-linear feedforward networks:Pass wx + b through a non-linear activation function, e.g. y = tanh(wx + b)

31

Page 32: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Input layer: vector x

Hidden layer: vector h1

Multi-layer feedforward networksWe can generalize this to multi-layer feedforward nets

32

Hidden layer: vector hn

Output layer: vector y

… … …… … … … … ….

Page 33: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Challenges in using NNs for NLPOur input and output variables are discrete:words, labels, structures.

NNs work best with continuous vectors.We typically want to learn a mapping (embedding) from discrete words (input) to dense vectors.We can do this with (simple) neural nets and related methods.

The input to a NN is (traditionally) a fixed-length vector. How do you represent a variable-length sequence as a vector?

Use recurrent neural nets: read in one word at the time to predict a vector, use that vector and the next word to predict a new vector, etc.

33

Page 34: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

How does NLP use NNs?Word embeddings (word2vec, Glove, etc.)

Train a NN to predict a word from its context (or the context from a word).This gives a dense vector representation of each word

Neural language models:Use recurrent neural networks (RNNs) to predict word sequencesMore advanced: use LSTMs (special case of RNNs)

Sequence-to-sequence (seq2seq) models:From machine translation: use one RNN to encode source string, and another RNN to decode this into a target string.Also used for automatic image captioning, etc.

Recursive neural networks:Used for parsing

34

Page 35: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Neural Language ModelsLMs define a distribution over strings: P(w1….wk) LMs factor P(w1….wk) into the probability of each word: P(w1….wk) = P(w1)·P(w2|w1)·P(w3|w1w2)·…· P(wk | w1….wk−1)

A neural LM needs to define a distribution over the V words in the vocabulary, conditioned on the preceding words.

Output layer: V units (one per word in the vocabulary) with softmax to get a distributionInput: Represent each preceding word by its d-dimensional embedding.

- Fixed-length history (n-gram): use preceding n−1 words- Variable-length history: use a recurrent neural net

35

Page 36: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Recurrent neural networks (RNNs)Basic RNN: Modify the standard feedforward architecture (which predicts a string w0…wn one word at a time) such that the output of the current step (wi) is given as additional input to the next time step (when predicting the output for wi+1).

“Output” — typically (the last) hidden layer.

36

input

output

hidden

input

output

hidden

Feedforward Net Recurrent Net

Page 37: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Word Embeddings (e.g. word2vec)Main idea: If you use a feedforward network to predict the probability of words that appear in the context of (near) an input word, the hidden layer of that network provides a dense vector representation of the input word.

Words that appear in similar contexts (that have high distributional similarity) wils have very similar vector representations.

These models can be trained on large amounts of raw text (and pretrained embeddings can be downloaded)

37

Page 38: Lecture 2 Overview/Motivation3324 Siebel Center Office hours: Tue/Thu 2pm-3pm Lecture 2 Overview/Motivation. ... Neural network basics (Goldberg Ch. 2—5) Neural NLP basics (probably

CS546 Machine Learning in NLP

Sequence-to-sequence (seq2seq) modelsTask (e.g. machine translation):

Given one variable length sequence as input, return another variable length sequence as output

Main idea:Use one RNN to encode the input sequence (“encoder”)Feed the last hidden state as input to a second RNN (“decoder”) that then generates the output sequence.

38