Deep Learning for Natural Language Processing

Similar documents
From perceptrons to word embeddings. Simon Šuster University of Groningen

word2vec Parameter Learning Explained

Part-of-Speech Tagging + Neural Networks 3: Word Embeddings CS 287

UNSUPERVISED LEARNING

Artificial Neural Networks D B M G. Data Base and Data Mining Group of Politecnico di Torino. Elena Baralis. Politecnico di Torino

An overview of word2vec

Deep Learning for Natural Language Processing. Sidharth Mudgal April 4, 2017

Machine Learning. Neural Networks. (slides from Domingos, Pardo, others)

Index. Santanu Pattanayak 2017 S. Pattanayak, Pro Deep Learning with TensorFlow,

How to do backpropagation in a brain

Knowledge Extraction from DBNs for Images

arxiv: v3 [cs.cl] 30 Jan 2016

Need for Deep Networks Perceptron. Can only model linear functions. Kernel Machines. Non-linearity provided by kernels

Machine Learning. Neural Networks. (slides from Domingos, Pardo, others)

Natural Language Processing

Natural Language Processing and Recurrent Neural Networks

The Origin of Deep Learning. Lili Mou Jan, 2015

NEURAL LANGUAGE MODELS

Deep unsupervised learning

GloVe: Global Vectors for Word Representation 1

Deep Neural Networks

Learning Deep Architectures for AI. Part II - Vijay Chakilam

Need for Deep Networks Perceptron. Can only model linear functions. Kernel Machines. Non-linearity provided by kernels

Machine Learning for Large-Scale Data Analysis and Decision Making A. Neural Networks Week #6

Lecture 6: Neural Networks for Representing Word Meaning

Speaker Representation and Verification Part II. by Vasileios Vasilakakis

Deep Generative Models. (Unsupervised Learning)

Artificial Neural Networks. Introduction to Computational Neuroscience Tambet Matiisen

Deep Learning and Lexical, Syntactic and Semantic Analysis. Wanxiang Che and Yue Zhang

An efficient way to learn deep generative models

Neural Networks with Applications to Vision and Language. Feedforward Networks. Marco Kuhlmann

Deep Learning Architectures and Algorithms

Semantics with Dense Vectors. Reference: D. Jurafsky and J. Martin, Speech and Language Processing

Sparse vectors recap. ANLP Lecture 22 Lexical Semantics with Dense Vectors. Before density, another approach to normalisation.

ANLP Lecture 22 Lexical Semantics with Dense Vectors

CS230: Lecture 8 Word2Vec applications + Recurrent Neural Networks with Attention

Lecture 5 Neural models for NLP

ACS Introduction to NLP Lecture 2: Part of Speech (POS) Tagging

Neural Networks Language Models

APPLIED DEEP LEARNING PROF ALEXIEI DINGLI

Neural Networks. David Rosenberg. July 26, New York University. David Rosenberg (New York University) DS-GA 1003 July 26, / 35

Administration. Registration Hw3 is out. Lecture Captioning (Extra-Credit) Scribing lectures. Questions. Due on Thursday 10/6

Deep Learning Autoencoder Models

Deep Recurrent Neural Networks

Lecture 16 Deep Neural Generative Models

Deep learning / Ian Goodfellow, Yoshua Bengio and Aaron Courville. - Cambridge, MA ; London, Spis treści

CSC321 Lecture 20: Autoencoders

Deep Learning for NLP

Course Structure. Psychology 452 Week 12: Deep Learning. Chapter 8 Discussion. Part I: Deep Learning: What and Why? Rufus. Rufus Processed By Fetch

11/3/15. Deep Learning for NLP. Deep Learning and its Architectures. What is Deep Learning? Advantages of Deep Learning (Part 1)

Machine Learning for Signal Processing Neural Networks Continue. Instructor: Bhiksha Raj Slides by Najim Dehak 1 Dec 2016

Jakub Hajic Artificial Intelligence Seminar I

CSE446: Neural Networks Spring Many slides are adapted from Carlos Guestrin and Luke Zettlemoyer

Deep Learning Srihari. Deep Belief Nets. Sargur N. Srihari

Greedy Layer-Wise Training of Deep Networks

CS 6501: Deep Learning for Computer Graphics. Basics of Neural Networks. Connelly Barnes

CSC321 Lecture 7 Neural language models

Sequence Models. Ji Yang. Department of Computing Science, University of Alberta. February 14, 2018

Task-Oriented Dialogue System (Young, 2000)

Deep Learning for NLP

Introduction to Convolutional Neural Networks (CNNs)

Neural Networks. William Cohen [pilfered from: Ziv; Geoff Hinton; Yoshua Bengio; Yann LeCun; Hongkak Lee - NIPs 2010 tutorial ]

Unsupervised Learning

Neural Networks and Deep Learning

Google s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation

Apprentissage, réseaux de neurones et modèles graphiques (RCP209) Neural Networks and Deep Learning

lecture 6: modeling sequences (final part)

CS224n: Natural Language Processing with Deep Learning 1

Homework 3 COMS 4705 Fall 2017 Prof. Kathleen McKeown

Deep Learning Recurrent Networks 2/28/2018

CSC321 Lecture 15: Recurrent Neural Networks

The representation of word and sentence

Deep Learning for NLP Part 2

Recurrent Neural Networks (Part - 2) Sumit Chopra Facebook

Deep Learning. Ali Ghodsi. University of Waterloo

Introduction to Deep Neural Networks

Probabilistic Graphical Models: MRFs and CRFs. CSE628: Natural Language Processing Guest Lecturer: Veselin Stoyanov

DEEP LEARNING AND NEURAL NETWORKS: BACKGROUND AND HISTORY

Neural Networks for NLP. COMP-599 Nov 30, 2016

Deep Learning & Neural Networks Lecture 2

Lecture 15: Recurrent Neural Nets

Neural Networks 2. 2 Receptive fields and dealing with image inputs

Deep Learning. What Is Deep Learning? The Rise of Deep Learning. Long History (in Hind Sight)

Reading Group on Deep Learning Session 4 Unsupervised Neural Networks

How to do backpropagation in a brain. Geoffrey Hinton Canadian Institute for Advanced Research & University of Toronto

Neural Word Embeddings from Scratch

Online Videos FERPA. Sign waiver or sit on the sides or in the back. Off camera question time before and after lecture. Questions?

NLP Programming Tutorial 8 - Recurrent Neural Nets

Restricted Boltzmann Machines

Deep Learning Basics Lecture 8: Autoencoder & DBM. Princeton University COS 495 Instructor: Yingyu Liang

(Feed-Forward) Neural Networks Dr. Hajira Jabeen, Prof. Jens Lehmann

Chapter 16. Structured Probabilistic Models for Deep Learning

Lecture 13: Structured Prediction

Machine Learning. Neural Networks

Introduction to Neural Networks

Neural Networks. Single-layer neural network. CSE 446: Machine Learning Emily Fox University of Washington March 10, /9/17

A graph contains a set of nodes (vertices) connected by links (edges or arcs)

Neural Networks. Yan Shao Department of Linguistics and Philology, Uppsala University 7 December 2016

Deep Feedforward Networks. Seung-Hoon Na Chonbuk National University

Sequence Modeling with Neural Networks

Transcription:

Deep Learning for Natural Language Processing Dylan Drover, Borui Ye, Jie Peng University of Waterloo djdrover@uwaterloo.ca borui.ye@uwaterloo.ca July 8, 2015 Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 1 / 59

Overview 1 Neural Networks: An Intuitive Look The Basics Deep Learning RBM and Language Understanding RNN and Statistical Machine Translation 2 Neural Probabilistic Language Model Why Use Distributed Representation Bengio s Neural Network 3 Google s Word2Vec CBOW+Hierarchical Softmax CBOW+Negative Sampling Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 2 / 59

Introduction to Neural Network Models A Black Box with a Billion Dials But we can do better... Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 3 / 59

The Artificial Neuron Base unit for (most) neural networks is a simplified version of a biological neuron Neuron has a set of inputs which have associated weights, an activation function which then determines whether a neuron will fire or be activated Together these can form very complex function modellers/approximators Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 4 / 59

The Artificial Neuron Output y is some function of the sum of the ( weights and the inputs. m ) y = f j=0 w kjx j Each neuron has a weight vector and each layer has a weight matrix W ylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 5 / 59

Multilayer Perceptron Performs multiple logistic regressions at once for arbitrary function approximation The multilayer perceptron which you might consider deep but isn t. It suffers from the vanishing gradient problem Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 6 / 59

Backpropogation: Learning with Derivatives The basic idea behind learning in a neural network is that a network will have: Objective function: J(θ), E(v, h) or training vector This applies for supervised and unsupervised learning The network s output is compared with objective to obtain an error Optimization algorithm: Stochastic Gradient Descent, Contrastive Divergence etc. These algorithms direct learning within the weight space But how do we adjust weights to optimize the objective? Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 7 / 59

Chain Rule Use the chain rule to determine how each output effects the final desired output Now have many gradients that we can use for optimization Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 8 / 59

Backpropogation Calculate network error (where, t is the target, y is the network output) E = 1 2 (t y)2 E = E w ij o j net j w ij = w ij o j net j net j w ij ( n k=1 w ij = α E w ij w kj x k ) = x i Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 9 / 59

High Dimensional Optimization Problem: Weight Space Training a neural network is a N-dimensional optimization problem Weight in a NN, is a dimension and the goal is to mind the minimum error ( hight ) with gradient descent There are many optimization algorithms for finding weights Hessian-Free Optimization, Stochastic Gradient Descent, RMSProp, AdaGrad, Momentum, etc. Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 10 / 59

What is Deep Learning and why should we care? Deep Learning is just a re-branding of artificial neural networks Multiple factors led to the new deeper NN architectures Pre-training (unsupervised) Faster optimization algorithms Graphic Processing Units (GPU) A myriad of techniques existed previously but things began to come together in the mid 2000s Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 11 / 59

Better Results Through Pre-Training Train each layer of network greedily using other layers output as input with unsupervised learning Combine layers and use fine tune training as in MPL Network starts with better position in weight space MNIST error rates [Erhan et al., JMLR 2010] Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 12 / 59

Promise for NLP Improved results for Part of Speech tagging and Named Entity Recognition Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 13 / 59

Application of Deep Belief Networks for Natural Language Understanding [Sarikaya et al.] Sarikaya et al. attempt to solve the problem of spoken language understanding (SLU) in the context of call-routing (call-centre data) Data: 27 000 transcribed utterances serve as unlabelled data Sets of 1K, 2K, 3K, 4K, 5K, 6K, 7K, 8K, 9K, 10K are used as labelled data sets Restricted Boltzmann Machines (RBM) were trained with unlabelled data and then stacked to form a Deep Belief Network Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 14 / 59

Restricted Boltzmann Machine Composed of visble and hidden neurons Unlabelled training data is presented as v Hidden neurons (stochastic binary units) and weights attempt to approximate a joint probability distribution of data (Generative Model) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 15 / 59

Learning Without Knowing Joint energy distribution of RBM is defined as: E(v, h) = i a i v i b i h i v i w i,j h j Which defines the probability distribution: p(v,h) = 1 Z e E(v,h) Which is marginalized over over hidden vectors: p(v) = 1 Z Z acts as a normalizing factor: Z = v,h e E(v,h) h e E(v,h) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 16 / 59

Learning without Knowing Training uses a reconstruction (the math is easier)of the input vector that is achieved in the hidden units with: p(h j = 1 v) = σ(a j + i v i w ij ) Which is used in: p(v i = 1 h) = σ(b i + j h j w ij ) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 17 / 59

Learning without Knowing The hidden units compare their rough reconstruction to the actual input. Based on the reconstruction, the weights are changed to improve logp(v) w ij = v i h j v v i h j model w ij v i h j data v i h j model w ij v i h j data v i h j recon This is a rough approximation, however it works well in practice. *(Angle brackets are the expectation with respect to the subscript distribution) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 18 / 59

Visualization of Weights from a RBM Each square is a set of weights for one neuron Features emerge from unsupervised learning Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 19 / 59

Deep Belief Network Use one RBM to train the next layer RBM Each layer learns features Each successive layer learns features of features This continues until a supervised layer Results in a Deep Belief Network Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 20 / 59

Results Results show improvements from unsupervised learning in all aspects Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 21 / 59

Autoencoders Creates compressed representation of data (Dimensionality reduction) Central layer acts as a non-linear principal component analysis Decoder weights are transposed encoder weight matrices: W li and W T li Each layer trained greedily (similar to DBN layers) ylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 22 / 59

Recurrent Neural Networks Input is treated as time series:..., x t 1, x t, x t+1,... Retain temporal context or short term memory Trained with backpropogation through time (BPTT) ylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 23 / 59

Long Short Term Memory Prevent the vanishing gradient problem Can retain information for arbitrary amount of time Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 24 / 59

Learning Phrase Representations using RNN EncoderDecoder for Statistical Machine Translation [Cho et al.] Combination of a RNN with an autoencoder Encoder maps variable length source phrase X = (x 1, x 2,..., x N ) (English sentence) into a fixed length internal representation vector c The decoder then maps this back into another variable length sequence, the target sentence Y = (y 1, y 2,..., y N ) (French Sentence) Analysis showed that the internal representation (in the 1000 hidden units) preserved syntactic and semantic information Learns probability distribution: p(y 1,..., y T x 1,..., x T ) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 25 / 59

Learning Phrase Representations using RNN EncoderDecoder for Statistical Machine Translation The decoder uses the compressed semantic meaning vector c as well as the previous word in its translation h t = f (h t 1, y t 1, c) Next element in translated sequence is conditioned on: P(y t y t 1,..., y 1, c) = g(h t 1, y t 1, c) Training of the network attempts to maximize the conditional log likelihood of: 1 N max log p θ (y θ N n, x n ) n=1 where θ are the model parameters (weights) and (y n, x n ) are input and output pairs. Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 26 / 59

Encoder - Decoder Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 27 / 59

Big Data The training of the model used: Bilingual corpora Europarl (61M words) News commentary (5.5M words) UN transcriptions (421M words) 870M words from crawled corpora However to optimize results only a subset of 348M words for training translation Final BLEU scores for the model were 34.54 Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 28 / 59

Learning Phrase Representations using RNN EncoderDecoder for Statistical Machine Translation This model is not restricted to just translation (which is why ANN are so useful and exciting) This model also created semantic relations between similar words and sentences from their continuous vector space representations (more on that later) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 29 / 59

Results Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 30 / 59

Results Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 31 / 59

Results Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 32 / 59

Results Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 33 / 59

Neural Probabilistic Language Model Presenter: Borui Ye Papers: 1 Efficient Estimation of Word Representations in Vector Space 2 A Neural Probabilistic Language Model Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 34 / 59

What is Word Vector One-hot representation: represents a word using a long vector. For example: microphone is represented as : [0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0...] phone is represented as : [0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0...] PROS: this method can coordinate well with max entropy, SVM, CRF algorithm. CONS: word gap Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 35 / 59

What is Word Vector (Cont.) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 36 / 59

How To Train Word Vector Language Model In practice, we usually need to calculate the probability of a sentence: P(S) = p(w 1, w 2, w 3, w 4, w 5,..., w n ) = p(w 1 )p(w 2 w 1 )p(w 3 w 1, w 2 )...p(w n w 1, w 2,..., w n 1 ) Markov s Assumption Each word depends only on the last n 1 words. P(S) = p(w 1, w 2, w 3, w 4, w 5,..., w n ) = p(w 1 )p(w 2 w 1 )p(w 3 w 1, w 2 )...p(w n w 1, w 2,..., w n 1 ) p(w 1 )p(w 2 w 1 )p(w 3 w 2 )...p(w n w n 1 ) (bigram) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 37 / 59

How To Train Word Vector (Cont.) Problems With N-gram Model: It is not taking into account contexts farther than 1 or 2 words Cannot capture the similarities among words. Example: The cat is walking in the bedroom A dog was running in a room Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 38 / 59

Bengio s Neural Network Training Set a sequence w 1...w T of words w t V, where the vocabulary V is a large but finite set. Objective learn a model : f (w t,..., w t n+1 ) = ˆP(w t w t 1 1 ) Constraint V i=1 f (i, w t 1,..., w t n+1 ) = 1, with f > 0 Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 39 / 59

Bengio s Neural Network (Cont.) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 40 / 59

Parameters Definitions C : a shared word vector matrix, C R V m x : vector of hidden layer, x = (C(w t 1 ), C(w t 2 ),..., C(w t n+1 )) y : vector of output layer, y = b + Wx + Utanh(d + Hx) P(w t = i context) = ˆP(w t w t 1,..., w t n+1 ) = eyw t i ey i Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 41 / 59

Parameter Estimation The goal is to find the parameter that maximized the training corpus penalized log-likelihood: L = 1 T t log f (w t, w t 1,..., w t n+1 ; θ) + R(θ) where θ = (b, d, W, U, H, C) SGD: θ θ + ɛ ˆP(w t w t 1,...,w t n+1 ) θ Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 42 / 59

Google s Word2Vec Project url : http://code.google.com/p/word2vec/ Feature : Additive Compositionality : vector( Paris ) - vector( France ) + vector( Italy ) vector( Rome ) vector( king ) - vector( man ) + vector( woman ) vector( queen ) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 43 / 59

Google s Word2Vec (Cont.)./distance Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 44 / 59

Two Models and Two Algorithms Models Continuous Bag of Words Skip-gram Hierarchical Negative Hierarchical Negative Alg. Softmax Sampling Softmax Sampling Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 45 / 59

CBOW+Hierarchical Softmax Predict the probability of a word given its context: P(w Context(w)) Learning objective : maximize log-likelihood: ζ = log p(w Context(w)) w C Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 46 / 59

CBOW+Hierarchical Softmax (Cont.) Input Layer 2c word vectors in Context(w) : v(context(w) 1 ), v(context(w) 2 ),...v(context(w) 2c ) R m Projection Layer Adding all the vectors in input layer: x w = 2c i=1 v(context(w) i ) R m Output Layer A Huffman tree using words in vocabulary as leaves. Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 47 / 59

CBOW+Hierarchical Softmax (Cont.) Notations p w : Path from root to corresponding leaf w l w : Number of nodes included in p w p w 1, pw 2,..., pw l w : l w nodes of path p w d w 2, d w 3,..., d w l w {0, 1} : Huffman code of each node on path p w, root does not have code θ w 1, θw 2,..., θw l w : vector of each node on path p w, Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 48 / 59

Huffman Tree I love watching Brazil football game Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 49 / 59

Learning Objective We assign every node a label: Lable(pi w ) = 1 di w, i = 2, 3,..., l w So the probability of a node being classified as positive label is : δ(x T w σ) = 1 1 + e xt w θ Then: where l w p(w Context(w)) = p(dj w x w, θj 1) w j=2 { p(dj w x w, θj 1) w σ(xw T θj 1), w dj w = 0; = 1 σ(xw T θj 1), w dj w = 1; Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 50 / 59

Learning Objective Full learning objective is to maximize: l w ζ = log {[σ(xw T θj 1)] w 1 dw j [1 σ(xw T θj 1)] w dw j } w C j=2 = l w {(1 dj w ) log[σ(xw T θj 1)] w + dj w log[1 σ(xw T θj 1)]} w w C j=2 Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 51 / 59

CBOW+Negative Sampling In a nutshell, it doesn t have Huffman tree in the output layer, but a set of negative samples instead (Given Context(w), word w is positive, while others are negative). Negative samples are randomly selected. Assume that we have had a negative sample set NEG(w) Φ, w D, we denote the label of w as follows: { 1, w = w; L w ( w) = 0, w w; Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 52 / 59

CBOW+Negative Sampling (Cont.) Given (Context(w), w) our goal is to maximize: g(w) = p(u Context(w)) u w NEG(w) where { σ(xw T θ u ), L w (u) = 1; p(u Context(w)) = 1 σ(xw T θ u ), L w (u) = 0; Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 53 / 59

CBOW+Negative Sampling (Cont.) To increase the probability of positive sample and decrease negative ones: g(w) = p(u Context(w)) u w NEG(w) = σ(x T w θ w ) u NEG(w) (1 σ(x T w θ w )) Then: G = w C = g(w) where C is the corpus. Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 54 / 59

Learning Objective Full learning objective: maximize the following: ζ = log G = log g(w) = log g(w) w C w C = log {[σ(xw T θ u )] Lw (u) [1 σ(xw T θ u )] (1 Lw (u)) } w C u {w} NEG(w) Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 55 / 59

Difference Between CBOW and Skip-gram Skip-gram is more accurate. Skip-gram is slower given larger context. Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 56 / 59

Why Use Negative Sampling & Hierachical Softmax I love watching Brazil football game Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 57 / 59

References Sarikaya, Ruhi, Geoffrey E. Hinton, and Anoop Deoras. Application of deep belief networks for natural language understanding. Audio, Speech, and Language Processing, IEEE/ACM Transactions on 22.4 (2014): 778-784. Cho, Kyunghyun, et al. Learning phrase representations using rnn encoder-decoder for statistical machine translation. arxiv preprint arxiv:1406.1078 (2014). http://nlp.stanford.edu/courses/naacl2013/ NAACL2013-Socher-Manning-DeepLearning.pdf http://devblogs.nvidia.com/parallelforall/ introduction-neural-machine-translation-gpus-part-2/ http://blog.csdn.net/itplus/article/details/37969979 http://licstar.net/archives/328 Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 58 / 59

Thank you! Dylan Drover, Borui Ye, Jie Peng (University of Waterloo) NN for NLP July 8, 2015 59 / 59