레플리
글 수 282

Word2Vec의 학습 방식

조회 수 897 추천 수 0 2019.01.17 23:56:07


 

https://ratsgo.github.io/from%20frequency%20to%20semantics/2017/03/30/word2vec/

 

 

 

Word2Vec에 대해서 자세히 알려주는 글입니다. 학습방식에 따라 CBOW와 Skip-gram이 있는데, 여기서는 후자를 기준으로 설명하고 있습니다.

 

Skip-gram은 중심단어로 주변단어를 예측하도록 학습합니다. 우선 위키피디아 같은 코퍼스에서 특정 윈도우(중심단어에서 왼쪽, 오른쪽 범위) 만큼 입력과 출력 단어를 뽑아냅니다.

 

 

 

나는 너를 너무 사랑해 정말로 (중심단어:너무, 윈도우:2)
-> (너무, 나는)
-> (너무, 너를)
-> (너무, 사랑해)
-> (너무, 정말로)

 

이렇게 학습 데이터를 만들고 트레이닝을 하면 비슷한 의미를 가진 단어들은 가중치의 값이 유사하게 수렴합니다. 문맥을 통해서 단어들의 의미를 파악한다고 볼 수 있습니다.

 

 

 

그런데 문제는 단어의 개수가 많을 수록 학습시간이 오래 걸린다는 점입니다. 입력과 출력이 one-hot 인코딩이기 때문에 단어의 수만큼 가중치 연결이 늘어납니다.

 

이를 해결하기 위한 첫 번째 방법은 subsampling입니다. 자주 나오는 단어일수록 높은 확률로 학습에서 제외시킵니다. 두 번째는 negative sampling으로 정답인 positive 샘플 하나와 정답이 아닌 negative 샘플 몇 십개만 뽑아서 선택적으로 가중치를 업데이트 합니다.

엮인글 :
List of Articles
제목 글쓴이 날짜sort 조회 수
부적절한 문장을 판단해주는 딥러닝 모델 - Ask Delphi file 깊은바다 2021-11-08 399
문장을 벡터로 변환하는 방법들 깊은바다 2021-09-16 929
네이버의 초거대모델인 HyperCLOVA 논문 file 깊은바다 2021-09-13 556
챗봇의 슬롯 채우기(Slot Filling)와 DST(Dialogue State Tracking) file 깊은바다 2021-08-19 1463
죽은 약혼자를 챗봇으로 살려낸 남자 - Project December 깊은바다 2021-07-27 561
인터넷 검색을 하고 장기기억을 저장하는 페이스북의 챗봇 - Blenderbot 2 file 깊은바다 2021-07-19 653
GPT-3 데모 사이트 - gpt3demo.com 깊은바다 2021-07-13 3707
6B 파라미터의 GPT-J_6B 오픈소스 모델 깊은바다 2021-07-01 3118
GPT-3를 활용하여 주석을 코드로 바꿔주는 GitHub Copilot 깊은바다 2021-06-30 356
구글의 딥러닝 대화 모델 - LaMDA 깊은바다 2021-06-13 587
일상대화 딥러닝 모델들을 쉽게 실행할 수 있는 Openchat 깊은바다 2021-06-01 569
GPT-3를 사용하여 코딩을 하는 MS의 파워FX 깊은바다 2021-06-01 249
텍스트 스타일을 바꾸는 딥러닝 기술 깊은바다 2021-06-01 436
KoGPT2 v2.0 공개 깊은바다 2021-05-03 1589
이루다 같은 챗봇은 어떤 원리로 작동하는 걸까? 깊은바다 2021-04-03 1691