2023. 11. 30. 12:24ㆍNAVER AI Tech/Recommen System
Embedding : 주어진 데이터를 낮은 차원의 벡터로 만들어서 표현하는 방법
- Latent와 동일하다고 생각해도 된다.
- 보통 one-hot encoding을 통해 단어를 벡터화 한 후(이것을 sparse representation이라고 한다) embedding을 통해 조금 더 압축된 벡터로 표현한다(이것을 dense representation이라고 한다)
- 비슷한 의미를 가진 단어라면 embedding vector 또한 거리가 가깝다고 볼 수 있다.
- embedding을 표현하기 위해서는 학습 모델이 필요함! 잘 나타내기 위한 방법론을 고민.
Word2Vec : word to vector(embedding) 표현 모델.
- 학습 방법으로는 CBoW, Skip-Gram이 있다.
CBoW(Continuous Bag of Words)
- 중심 단어 예측
- 주변 단어 n개를 가지고 중심 단어 예측
Skip-Gram
- 주변 단어 예측
- (1,M) vector의 평균을 구하는 과정이 없다.
- 일반적으로 CBoW보다 성능이 좋다고 알려져있음.
Skip-Gram with Negative Sampling(SGNS)
- Skip-Gram은 주변 단어만을 예측하도록 하였는데, Negative Sampling을 통해서 주변단어 인지 아닌지 이진 분류 문제로 바꿈.
- Negative Sampling이란 우리 목적에 맞지 않는 데이터를 일부러 데이터셋에 포함시키는 과정.
- Negative Sampling 개수가 모델의 하이퍼 파라미터. positive 1개당 데이터가 적을 경우 5~20, 클 경우 2~5개가 적당하다고 함.
'NAVER AI Tech > Recommen System' 카테고리의 다른 글
11. Approximate Nearest Neighbor(ANN) (0) | 2023.11.30 |
---|---|
10. Item2Vec (0) | 2023.11.30 |
8. Model-Based Collaborative Filtering (0) | 2023.11.29 |
7. K-nearest Neighbors Collaborative Filtering (0) | 2023.11.29 |
6. Neighborhood-Based Collaborative Filtering (0) | 2023.11.29 |