임베딩(Embedding)이란 텍스트나 이미지같은 비정형 고차원 데이터를 원래 데이터의 잠재적인 정보를 보존한 채 저차원의 공간으로 매핑하는 방법 또는 결과물이라고 합니다.
즉, 수치 데이터가 아닌 텍스트, 이미지 데이터를 수치데이터로 변환하는 방식을 의미합니다.
위 데이터에서 King[6,4] 이라는 위치 좌표를 가지고 있습니다. 이 외에도 Man은 [3,2] , woman 은 [4,3] 라는 위치 좌표를 가지고 있을 때, Queen 은 다음과 같은 위치 좌표를 가지고 있습니다.
King[6,4] - Man[3,2] + woman[4,3] = Queen [7,5]
■ Word2Vec 학습방법
먼저, Word2Vec은 Distributional Hypothesis(분포 가설)을 가정합니다.
비슷한 위치에서 등장하는 단어들은 비슷한 의미를 가진다라는 의미입니다.
Ex1) 나는 고양이를 좋아한다.
Ex2) 나는 개를 좋아한다.
위 2개의 단어에서 고양이와 개는 문장 내에서 비슷한 위치에 있다라는 가정입니다.
이러한 분포가설로 시작해서 CBOW 와 Skip-gram이라는 학습방법을 사용합니다.
CBOW(Continuous Bag of Words): 주변 단어들로 타겟 단어를 예측해 더 빠른 속도로 학습합니다.
빠른 속도로 학습하는 이유는 입력이 들어오면 look-up table 형태로 임베딩을 조회하기 때문입니다.
Look-up table이란 입력값과 출력값으로 구성된 테이블로 계산 대신 미리 저장된 값을 참조하여 결과를 얻을 수 있습니다. 비슷한 상품과 연관 컨텐츠 등을 추천하는데 탁월하기 때문에 뉴스추천이나 상품명/상품후기 활용 추천에 자주 활용합니다.
Skip-Gram: 타켓 단어(중심단어)로 주변의 단어들을 예측해 희소 단어 표현에 강점을 보인다라는 특징이 있습니다. 작동방식은 다음과 같습니다.
1. 문장에서 중심 단어를 선택
2. 중심 단어를 입력값으로 사용하고 주변 단어를 출력값으로 설정
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.