Presentation is loading. Please wait.

Presentation is loading. Please wait.

Word2Vec Tutorial 2017. 9. 6 박 영택 숭실대학교.

Similar presentations


Presentation on theme: "Word2Vec Tutorial 2017. 9. 6 박 영택 숭실대학교."— Presentation transcript:

1 Word2Vec Tutorial 박 영택 숭실대학교

2 Introduction Main idea of word2vec
NLP research devised to convert words into computer-understandable forms Use translate words into numerical form to machine learning Make a numeric word into a vector of hundreds of dimensions , Predict the next word through operations on each word, Context aware or inferable. EX) Word analogy using vector operation Words embedded in a multidimensional space

3 Word2Vec Word Embedding Word2Vec
자연어 처리에서 deep learning의 성공을 뒷받침하는 주요 동력 중 하나 Text를 구성하는 하나의 word를 수치화 하여 다차원 공간의 vector로 mapping Word2Vec 2013년 Google에서 Tomas Mikolov가 발표한 Word Embedding 학습 모형 기존 방법에 비해 계산량이 적어 몇 배 이상 빠른 학습이 가능 Word embedding을 위한 두 가지 방법을 제공 Skip-gram CBOW

4 Word2vec Word2vec Flow word2vec Word Word Word One-Hot encodding
Vector output RawData Indexing NN RNN LSTM seq2seq Preprocessing to vectorize word Make Input Vector For Model Using Model’s output, calc Probability distribution and Context aware or inferable

5 Skip-Gram Model Neural Network 학습을 위해 word pair 형태로 feeding
window size = 2

6 Skip-Gram Model Word 하나를 사용해서 주변 word들의 발생을 유추 Sentence :
“Rush Hour, a comedy with Jackie Chan and Chris Tucker as well as Die Hard, an action movie with Bruce Willis”

7 Skip-Gram Model Training
Input Vector Text의 String을 neural network의 input으로 사용할 수 없음 word를 one-hot vector로 표현

8 Architecture of Neural Network
1X10,000 1X300

9 The Hidden Layer Hidden layer를 matrix로 표현
300개의 feature를 사용하여 학습하고 10,000개의 word가 존재 Hidden layer의 weight matrix

10 The Hidden Layer Hidden layer의 weight matrix를 학습하는 것이 목적
One-hot vector를 사용하는 이유 1x10,000인 one-hot vector와 10,000x300 matrix를 곱하면, 효과적으로 matching되는 row를 얻어낼 수 있음 학습된 모델의 hidden layer는 lookup table로 사용할 수 있음 Hidden layer의 output이 input word의 “word vector”

11 Lookup (Column Vector 로 가정)
Vectorization of words Corpus: Matrix multiplication : (m x n) x (n x 1) = (m x 1) One-hot(harry) 𝑊(random initialization) Vector(harry) 0.4, -0.4, 0.21, … 0.37, … 1.0 0.37 0.17 0.88 0.31 -0.6, 0.2, 0.39, … 0.17, … 200 200 X 50,000 = 0.1, -0.9, 0.47, … 0.88, … 0.9, 1.0, 0.33, … 0.31, … (200 x 50,000) (200 x 1) 102 (50,000 x 1)

12 Word2vec Vectorization of words … … Corpus: 𝑊 𝑇 (Transpose W) = output
Predict(Potter) 0.4, , …, 0.1, 0.9 -0.4, 0.2, …, -0.9, 0.2 Vector(Harry) -0.21, 0.39, …, 0.47, 0.33 0.37 0.17 0.88 0.31 50,000 X = 200 50,000 -0.37, 0.17, …, 0.88, 0.31 (200 x 1) 0.28, 0.99, …, -1.0, -0.7 (50000 x 1) (50000 x 1) (50000 x 200)

13 Word2vec Vectorization of words 000 1 000 1 … … … … Predict
Label(Potter) 000 1 000 1 50,000 50,000 Prediction 과 Label 예측 (50000 x 1) (50000 x 1)

14 Word2vec Vectorization of words 2.72 000 -9.1 5.92 2.17 1 9.02 … … … …
Predict Label(Potter) 2.72 -9.1 5.92 2.17 9.02 000 1 50,000 50,000 𝑪𝒐𝒔𝒕𝑭𝒖𝒏𝒄𝒕𝒊𝒐𝒏(Predict, Label) (50000 x 1) (50000 x 1)

15 Word2vec Vectorization of words w w’ x x One-hot(102) Predict
Label(807) Training-set (Input) w x w’ x (200 x 50,000) (50,000 x 200) (200 x 1) (50,000 x 1) (50,000 x 1) (50,000 x 1) update Cost(predict, Label) Loss minimal (Gradiet-Decent)

16 감사합니다. 참고자료 강의 - 스탠포드 word2vec 강의 논문 Distributed Representations of Words and Pharases and their Compositionality EfficientEstimationofWordRepresentationsin VectorSpace


Download ppt "Word2Vec Tutorial 2017. 9. 6 박 영택 숭실대학교."

Similar presentations


Ads by Google