Download presentation
Presentation is loading. Please wait.
1
Word2Vec
2
Word Embedding 단어에 좌표를 부여하는 것 단어의 의미를 수치화하는 것으로 생각 텍스트 처리가 더 빠르고 정확해짐
3
Latent Semantic Analysis
Term-Document Matrix를 PCA 빈도가 함께 증가/감소하는 관계의 단어들을 축으로 삼음 적은 데이터에서도 잘 작동 어순 고려 X
4
어순 나 는 오늘 밥 을 ? ? 자리에 들어갈 수 있는 말은 한정: 먹었다, 굶었다 … 어순이 중요
5
NNLM
6
NNLM Feedforward Neural Net Language Model Bengio et al. (2003)
7
NNLM이 푸는 문제 앞에 나온 단어들로 ?에 들어갈 단어를 예측
오늘 밥 을 ? 앞에 나온 단어들로 ?에 들어갈 단어를 예측 앞에 나온 단어 / 뒤에 나온 단어 / 앞뒤로 나온 단어 등도 가능
8
NNLM
9
NNLM 단어를 one-hot encoding으로 표현
10
one-hot encoding 100 종류의 단어가 있다면 각 단어에 1부터 100까지 번호를 붙임
길이 100인 벡터를 모두 0으로 채움 38번 단어 38번째 값을 1로 표시 모든 단어를 위와 같은 방법으로 벡터로 표현
11
NNLM 모든 단어에 행렬 C를 곱함
12
벡터에 행렬을 곱하면? =
13
NNLM 일반적인 앞먹임 신경망 feedforward neural network
14
NNLM 단어 예측
15
학습 텍스트를 넣고 신경망을 학습시키면 대상 단어를 잘 예측하도록 행렬 C가 구해짐 단어에 행렬 C를 곱한 결과를 사용
16
NNLM 단어의 의미
17
NNLM의 문제점 은닉층의 크기 × 단어 종류 단어 수 × 차원 수 × 은닉층의 크기 단어 종류 × 차원 수
18
Word2Vec
19
Word2Vec Mikolov et al. (2013) NNLM의 학습 효율을 높임 CBOW와 Skip-gram 제시
20
CBOW와 Skip-gram
21
CBOW Continuous Bag-Of-Words 주변 단어로 대상 단어 예측 은닉층을 단순합으로 대체
22
NNLM vs. CBOW 은닉층의 크기 × 단어 종류 단어 수 × 차원 수 × 은닉층의 크기 단어 종류 × 차원 수
23
NNLM vs. CBOW 차원 수 × 단어 종류 단어 종류 × 차원 수
24
Skip-gram CBOW와 반대로 대상 단어로 주변 단어를 예측
25
결과
26
결과 더 적은 데이터로 더 큰 벡터를 만들 수 있음 예측도 비슷하거나 더 정확
27
Word2Vec의 특이한 성질
28
Word2Vec의 성질
29
Word2Vec의 성질 왕(king) – 남자(man) + 여자(woman) = 여왕(queen)
일본(Japan) - 도쿄(Tokyo) + 서울(Seoul) = 한국(Korea)
30
Word2Vec의 활용
31
Word Embedding으로 활용 감정 분석, 문서 분류 등을 수행할 때 단어 Word Embedding으로 먼저 변환
대부분의 경우 성능 향상
32
텍스트 이외 분야에서 활용 텍스트: 단어가 순서대로 있는 것 ( )이 순서대로 있는 것이면 Word2Vec을 활용 가능
33
단백질
34
단백질 인체는 단백질은 20종의 아미노산으로 구성 아미노산의 순서에 따라 다른 단백질 아미노산:단백질 = 단어:텍스트
35
ProtVec Asgari & Mofad (2015) 아미노산을 3개씩 묶어 '단어'로 만듦
Skip-gram을 이용해 3-아미노산 '단어'를 벡터로 만듦 단백질은 ‘단어’의 합으로 표현
36
ProtVec
37
ProtVec SVM을 이용해 문제 단백질(FG-Nups)과 일반 단백질 구별 정확도 99.81%
Similar presentations