레플리
글 수 72

단어 간 유사도 파악 방법

조회 수 2854 추천 수 0 2018.02.01 03:57:33


https://brunch.co.kr/@kakao-it/189

 

 

 

머신러닝에서 자연어를 처리하려면 우선 컴퓨터가 이해할 수 있는 형식으로 변환해야 합니다. 가장 쉬운 방법은 One-Hot Encoding을 사용하는 것입니다.

 

전체 단어의 수 만큼 벡터의 차원을 만들고 각 단어마다 하나의 차원에 대입합니다. 하지만 이 방식은 벡터의 차원이 너무 커지기 때문에 학습이 힘들다는 단점이 있습니다.

 

b5dpGQQWQTWH4gL1XOTBxYiPA3w.png

 

 

 

두번째 방법은 Word Embedding으로 0, 1과 같이 두개의 값이 아니라 0~1 사이의 벡터값을 가집니다. 하나의 단어마다 각 벡터의 차원을 모두 사용하기 때문에 벡터의 크기를 작게 할 수 있습니다. 또한 비슷한 단어는 벡터의 값 역시 유사하기 때문에 학습이 더 잘된다는 장점이 있습니다.

 

예를 들어, 위와 같은 단어는 다음과 같이 표현할 수 있습니다.

과학 -> (0.5, 0.1, 0.3)

공학 -> (0.4, 0.2, 0.5)

 

 

nstxpRGVr6vxcUej4gsW8oNXk3s.png

위의 글에서 카카오브레인이 만든 WordWeb이라는 것을 소개하고 있습니다. 워드 임베딩을 사용해서 입력으로 받은 단어와 비슷한 뜻을 가진 단어를 보여주는 기능입니다.

 

아래 링크에서 직접 테스트 할 수 있습니다.

-> http://ling.kakaobrain.com/wordweb

 

엮인글 :
List of Articles
제목 글쓴이 날짜 조회 수sort
파이썬으로 3줄 요약기 만들기 깊은바다 2018-01-19 10808
마르코프 체인을 사용한 자동 문장 생성 file 깊은바다 2017-04-05 8976
한국어 문장 분리기, KSS(Korean Sentence Splitter) 파이썬 포팅 file 깊은바다 2020-12-23 6151
한국어 채팅 데이터로 머신러닝 하기 깊은바다 2018-04-25 6086
자연어(NLP) 처리 기초 정리 깊은바다 2018-10-22 5766
자바 형태소 분석기 open-korean-txt 깊은바다 2017-04-11 5431
WordPiece와 BPE(Byte Pair Encoding) 깊은바다 2019-06-17 4735
한국어 자연어처리 데이터셋 - KorQuAD 깊은바다 2018-12-21 4724
한국어 전처리 기법 모음 깊은바다 2020-07-31 4539
빠르고 성능 좋은 형태소분석기 MeCab-Ko 깊은바다 2017-05-02 4422
문서에서 핵심 단어를 찾는 TF-IDF 알고리즘 file 깊은바다 2017-09-07 4253
한글 NLP with Python - KoNLPy 사용법 [2] 깊은바다 2017-12-08 4028
노가다 없는 텍스트 분석을 위한 한국어 NLP 깊은바다 2018-04-26 3902
한글 자모 분리 및 합치기 파이썬 패키지 [1] 깊은바다 2020-03-03 3241
TextRank 기법을 이용한 핵심 어구 추출 및 텍스트 요약 file 깊은바다 2018-12-28 3228