딥러닝 모델에는 text를 input으로 넣을 수 없습니다.
그래서 text를 숫자로 변환해서 넣어주어야 하는 데 이것을 word Encoding 이라고합니다.
여기서 "Thank you love you" 를 위처럼 0 , 1 ,2 로 변환할 수 있습니다.
위 방법보다는 딥러닝에서 자주사용하는 인코딩 방법은 바로 One Hot Encdoing 입니다.
단어갯수만큼의 n차원 Vector를 만들어 독립적인 방법으로 표현하는 것 입니다.
있으면 1 없으면 0
예를들어 중복되지 않는 단어가 100개면 100차원 Vector가 됩니다.
2020/10/23 - [Data Science/Machine learning] - [데이터 전처리] . 이산형 데이터 처리하기 ( OneHotEncoding )
[데이터 전처리] . 이산형 데이터 처리하기 ( OneHotEncoding )
이산형 데이터를 어떻게 처리할까? { Green , Blue , Yellow } 같은 데이터들을 머신러닝 혹은 딥러닝에 활용하기 위해선 숫자의 형태로 바꿔줘야합니다. 일반적으로는 Ont-Hot-Encoding 을 많이 사용합니
acdongpgm.tistory.com
하지만 One Hot Encoding 은 서로간의 유사도를 측정할 수 없습니다.
"king" 이라는 단어가 "woman" 보다"man" 과 더 유사하다는 것을 One Hot Encoding 으로는 알 수 없습니다.
유사도 측정방법으로는 대표적으로
유클리디안 유사도 , 코사인 유사도가 있는데
One hot encoding 은 위 그림 처럼 방향도 똑같고 , 거리도 똑같이 1이라 서로간의 유사도를 알 수 없습니다.
하지만 Embedding 을 사용하면 저차원의 상태로 단어간의 유사도를 구할 수 있습니다.
위 그림처럼 man 과 king 까리 뭉쳐있고 woman과 queen 이 뭉쳐있어
man과 king 이 유사하다는 것을 알 수 있습니다.
이 것이 바로 임베딩 기법이고 대표적으로 word2vec 이 있습니다.
'Machine learning > NLP' 카테고리의 다른 글
[NLP]. Transformer : Structure - part1 (0) | 2021.08.19 |
---|---|
[NLP] Sequence to Sequence(시퀀스 투 시퀀스) 코드 (0) | 2021.08.19 |
[NLP] Sequence to Sequence (시퀀스 투 시퀀스), Attention(어텐션) 개념 (0) | 2021.08.18 |
[NLP] 수능 영어지문을 풀어주는 인공지능 (WMD) (0) | 2021.01.30 |
[NLP] TF-IDF 를 활용한 제목별 추천 시스템. (0) | 2021.01.07 |