SlideShare a Scribd company logo
1 of 9
NLP- word2vec
2019.1.17
word2vec의 정의
• 비지도 방식의 단어 임베딩 접
근법
• 표현 벡터의 단일 요소와 대조
적으로 전체 표현 벡터의 활성
화 패턴에 의해 단어의 의미가
캡처되므로 분산 표현
Wordnet
• wordnet은 프린스턴 대학교에서 과거에 영어단어들에 대해서 구축한 일종의 온톨로지로, 단어간에 어떤 관계를 가지
고 있는지를 정리한 온톨로지다. 사전처럼 단어별로 개별적인 의미를 정리하는 것보다, 이렇게 단어간의 관계를 중심
으로 정리할 경우 그 활용도가 높아질 수 있다.
• 일반적으로 ‘온톨로지’는 특정 세계에 대해 잘 구축된 체계 정도로 번역할 수 있다(학술적으로 들어가면 좀 달라진다).
• 지속적으로 유지보수되어야 하는 문제점이 있기는 하지만, 현재 영단어에 대해서는 가장 잘 정의된 온톨로지 라고 할
수 있다.
• 국내에서도 부산대에서 비슷한 작업을 수행한 적이 있으나, 완전히 공개되지 않아서 접근성 등의 문제가 있음
• wordnet의 경우는 nltk에 통합되어 상대적으로 쉽게 쓸 수 있음
• 물론 최근에는 word-embedding 등을 사용해서 온톨로지 없이도 온톨로지와 비슷한 효과를 내고 있기 때문에, 이 라이
브러리가 반드시 필요한가?에 대해서는 현재는 의문이 있다.
• Word-embedding과 wordnet을 활용하면, 좀 더 재미있는 짓을 할 수 있지 않을까? 싶은데, 예를 들어서 1) 빠르게 학
습한다거나, 2)…..아무튼…
• wordnet에서 단어 간에 성립할 수 있는 관계는 대략 다음과 같은 정도로 표현된다.
워드넷에서 다음 네 가지를 어떻게 활용하는지 이후에 설명한다.
• synonym: 동의어
• antonym: 반의어
• hypernym: 상의어
• hyponym: 하위어
TF-IDF
• TF(단어 빈도, term frequency)는 특정한 단어가 문서 내에 얼
마나 자주 등장하는지를 나타내는 값. 이 값이 높을수록 문서
에서 중요하다고 생각할 수 있다.
• 하지만 하나의 문서에서 많이 나오지 않고 다른 문서에서 자
주 등장하면 단어의 중요도는 낮아진다.
• DF(문서 빈도, document frequency)라고 하며, 이 값의 역수
를 IDF(역문서 빈도, inverse document frequency)라고 한다.
• TF-IDF는 TF와 IDF를 곱한 값으로 점수가 높은 단어일수록
다른 문서에는 많지 않고 해당 문서에서 자주 등장하는 단어
를 의미한다.
Word2vec architecture
Word2vec skip-gram
중심단어에서 윈도우 크기(Window size)만큼의
주변 단어들을 예측하는 모델
Word2vec skip-gram
• word2vec 모델은 학습시간을 줄이기 위해 트릭을 쓰는
데, 바 로 네거티브 샘플링(negative sampling) 이다.
• 네거티브 샘플링은 앞의 그림에서 처럼 'Training
Sample'과 같은 단어 쌍들에 포함되어 있지 않는 가짜 단
어 쌍들을 만들어 낸다.
• 지정한 윈도우 사이즈 내에서 포함되지 않는 단어들을
포함시켜 단어 쌍들을 만들어 내는것이다.
• 예를 들어 위의 그림에서 두번째 줄에서 윈도우 사이즈
내에 포 함되지 않는 lazy라는 단어를 뽑아 (quick,
lazy)라는 단어쌍을 만드는 것이다.
Word2vec skip-gram
Word2vec CBOW
• 주어진 단어에 대해 앞 뒤로 C/2개
씩 총 C개의 단어를 Input으로 사용
하여, 주어진 단어를 맞추기 위한
네트워크를 만든다.
• CBOW의 계산량
• C개의 단어를 Projection 하는 데에 C x N
• Projection Layer에서 Output Layer로 가는 데에 N x V

More Related Content

Similar to Nlp word2vec

Word 2 Vec Algorithm
Word 2 Vec AlgorithmWord 2 Vec Algorithm
Word 2 Vec AlgorithmHyeongmin Lee
 
1910 tfkr3 warnikchow
1910 tfkr3 warnikchow1910 tfkr3 warnikchow
1910 tfkr3 warnikchowWarNik Chow
 
TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발Jongmyoung Kim
 
Sequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural NetworksSequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural NetworksHoon Heo
 
221108_Multimodal Transformer
221108_Multimodal Transformer221108_Multimodal Transformer
221108_Multimodal TransformerYongSang Yoo
 
문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine TranslationNAVER LABS
 
​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기복연 이
 
Brief hystory of NLP and Word2Vec
Brief hystory of NLP and Word2VecBrief hystory of NLP and Word2Vec
Brief hystory of NLP and Word2VecSilverQ
 
연구자를 위한 5가지 프루프리딩(proofreading) 팁
연구자를 위한 5가지 프루프리딩(proofreading) 팁연구자를 위한 5가지 프루프리딩(proofreading) 팁
연구자를 위한 5가지 프루프리딩(proofreading) 팁에디티지(Editage Korea)
 

Similar to Nlp word2vec (9)

Word 2 Vec Algorithm
Word 2 Vec AlgorithmWord 2 Vec Algorithm
Word 2 Vec Algorithm
 
1910 tfkr3 warnikchow
1910 tfkr3 warnikchow1910 tfkr3 warnikchow
1910 tfkr3 warnikchow
 
TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발
 
Sequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural NetworksSequence to Sequence Learning with Neural Networks
Sequence to Sequence Learning with Neural Networks
 
221108_Multimodal Transformer
221108_Multimodal Transformer221108_Multimodal Transformer
221108_Multimodal Transformer
 
문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation문자 단위의 Neural Machine Translation
문자 단위의 Neural Machine Translation
 
​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기
 
Brief hystory of NLP and Word2Vec
Brief hystory of NLP and Word2VecBrief hystory of NLP and Word2Vec
Brief hystory of NLP and Word2Vec
 
연구자를 위한 5가지 프루프리딩(proofreading) 팁
연구자를 위한 5가지 프루프리딩(proofreading) 팁연구자를 위한 5가지 프루프리딩(proofreading) 팁
연구자를 위한 5가지 프루프리딩(proofreading) 팁
 

More from 진성 김

Ch12.특이값분해
Ch12.특이값분해Ch12.특이값분해
Ch12.특이값분해진성 김
 
Ch11.특수기저
Ch11.특수기저Ch11.특수기저
Ch11.특수기저진성 김
 
코딩더매트릭스 3장
코딩더매트릭스 3장코딩더매트릭스 3장
코딩더매트릭스 3장진성 김
 
머신러닝가이드 Ch12트리학습
머신러닝가이드 Ch12트리학습머신러닝가이드 Ch12트리학습
머신러닝가이드 Ch12트리학습진성 김
 
머신러닝가이드 Ch7 김진성
머신러닝가이드 Ch7 김진성머신러닝가이드 Ch7 김진성
머신러닝가이드 Ch7 김진성진성 김
 

More from 진성 김 (6)

Ch12.특이값분해
Ch12.특이값분해Ch12.특이값분해
Ch12.특이값분해
 
Ch11.특수기저
Ch11.특수기저Ch11.특수기저
Ch11.특수기저
 
코딩더매트릭스 3장
코딩더매트릭스 3장코딩더매트릭스 3장
코딩더매트릭스 3장
 
3장 lu분해
3장 lu분해3장 lu분해
3장 lu분해
 
머신러닝가이드 Ch12트리학습
머신러닝가이드 Ch12트리학습머신러닝가이드 Ch12트리학습
머신러닝가이드 Ch12트리학습
 
머신러닝가이드 Ch7 김진성
머신러닝가이드 Ch7 김진성머신러닝가이드 Ch7 김진성
머신러닝가이드 Ch7 김진성
 

Nlp word2vec

  • 2. word2vec의 정의 • 비지도 방식의 단어 임베딩 접 근법 • 표현 벡터의 단일 요소와 대조 적으로 전체 표현 벡터의 활성 화 패턴에 의해 단어의 의미가 캡처되므로 분산 표현
  • 3. Wordnet • wordnet은 프린스턴 대학교에서 과거에 영어단어들에 대해서 구축한 일종의 온톨로지로, 단어간에 어떤 관계를 가지 고 있는지를 정리한 온톨로지다. 사전처럼 단어별로 개별적인 의미를 정리하는 것보다, 이렇게 단어간의 관계를 중심 으로 정리할 경우 그 활용도가 높아질 수 있다. • 일반적으로 ‘온톨로지’는 특정 세계에 대해 잘 구축된 체계 정도로 번역할 수 있다(학술적으로 들어가면 좀 달라진다). • 지속적으로 유지보수되어야 하는 문제점이 있기는 하지만, 현재 영단어에 대해서는 가장 잘 정의된 온톨로지 라고 할 수 있다. • 국내에서도 부산대에서 비슷한 작업을 수행한 적이 있으나, 완전히 공개되지 않아서 접근성 등의 문제가 있음 • wordnet의 경우는 nltk에 통합되어 상대적으로 쉽게 쓸 수 있음 • 물론 최근에는 word-embedding 등을 사용해서 온톨로지 없이도 온톨로지와 비슷한 효과를 내고 있기 때문에, 이 라이 브러리가 반드시 필요한가?에 대해서는 현재는 의문이 있다. • Word-embedding과 wordnet을 활용하면, 좀 더 재미있는 짓을 할 수 있지 않을까? 싶은데, 예를 들어서 1) 빠르게 학 습한다거나, 2)…..아무튼… • wordnet에서 단어 간에 성립할 수 있는 관계는 대략 다음과 같은 정도로 표현된다. 워드넷에서 다음 네 가지를 어떻게 활용하는지 이후에 설명한다. • synonym: 동의어 • antonym: 반의어 • hypernym: 상의어 • hyponym: 하위어
  • 4. TF-IDF • TF(단어 빈도, term frequency)는 특정한 단어가 문서 내에 얼 마나 자주 등장하는지를 나타내는 값. 이 값이 높을수록 문서 에서 중요하다고 생각할 수 있다. • 하지만 하나의 문서에서 많이 나오지 않고 다른 문서에서 자 주 등장하면 단어의 중요도는 낮아진다. • DF(문서 빈도, document frequency)라고 하며, 이 값의 역수 를 IDF(역문서 빈도, inverse document frequency)라고 한다. • TF-IDF는 TF와 IDF를 곱한 값으로 점수가 높은 단어일수록 다른 문서에는 많지 않고 해당 문서에서 자주 등장하는 단어 를 의미한다.
  • 6. Word2vec skip-gram 중심단어에서 윈도우 크기(Window size)만큼의 주변 단어들을 예측하는 모델
  • 7. Word2vec skip-gram • word2vec 모델은 학습시간을 줄이기 위해 트릭을 쓰는 데, 바 로 네거티브 샘플링(negative sampling) 이다. • 네거티브 샘플링은 앞의 그림에서 처럼 'Training Sample'과 같은 단어 쌍들에 포함되어 있지 않는 가짜 단 어 쌍들을 만들어 낸다. • 지정한 윈도우 사이즈 내에서 포함되지 않는 단어들을 포함시켜 단어 쌍들을 만들어 내는것이다. • 예를 들어 위의 그림에서 두번째 줄에서 윈도우 사이즈 내에 포 함되지 않는 lazy라는 단어를 뽑아 (quick, lazy)라는 단어쌍을 만드는 것이다.
  • 9. Word2vec CBOW • 주어진 단어에 대해 앞 뒤로 C/2개 씩 총 C개의 단어를 Input으로 사용 하여, 주어진 단어를 맞추기 위한 네트워크를 만든다. • CBOW의 계산량 • C개의 단어를 Projection 하는 데에 C x N • Projection Layer에서 Output Layer로 가는 데에 N x V