Word Embedding & Sentence Embedding
자연어 처리(Natural Language Processing, NLP)에서 단어 임베딩과 문장 임베딩은 텍스트 데이터를 수치화하여 모델이 이해할 수 있도록 하는 중요한 개념이다.
각각의 방법에 대해 간략하게 설명하고, 이들 간의 차이와 각각의 장단점을 알아보자
### 단어 임베딩(Word Embedding)
- 단어 임베딩은 단어를 고정된 차원의 실수 벡터로 매핑하는 기술
- 주로 사전 훈련된 임베딩 모델(Word2Vec, GloVe, FastText)을 사용하거나, 모델 자체에서 임베딩 레이어를 학습
- 장점
- 단어 간 의미적 유사성을 캡처하므로 단어 간의 관계를 이해하기 쉬움
- 희소성 문제를 해결하고 차원 감소로 효과적인 특징 추출이 가능
- 단점
- 단어 간의 문맥적 의미를 완전히 포착하기 어려울 수 있다
- 단어 간의 순서를 고려하지 않는다.
### 문장 임베딩(Sentence Embedding)
- 방법
- 문장 임베딩은 문장을 고정된 차원의 벡터로 매핑하는 기술
- 주로 임베딩 레이어를 통해 문장의 표현을 학습하는 방식, 또는 전체 문장을 나타내는 고정 크기의 벡터를 생성하는 모델이 사용
- 장점
- 문장의 전반적인 의미를 캡처할 수 있어 문맥을 고려하는 데 유용
- 단어 임베딩의 특징을 활용하여 단어 간의 상호 작용을 반영할 수 있다
- 단점
- 문장 내 단어의 순서를 완전히 보존하지 않을 수 있다.
- 문장이 길어지면 정보 손실이 발생할 수 있다.
### 차이
- 대상 단위
- 단어 임베딩은 개별 단어를 대상으로 한다.
- 문장 임베딩은 전체 문장을 대상으로 한다.
- 표현 방법
- 단어 임베딩은 각 단어를 벡터로 표현
- 문장 임베딩은 전체 문장을 단일 벡터로 표현
### 장단점 정리
- 단어 임베딩
- 장점: 단어 간 의미적 유사성을 잘 캡처하고 희소성 문제를 해결
- 단점: 문맥적 의미와 단어 순서를 완전히 반영하지 않는다
- 문장 임베딩
- 장점: 문맥을 고려하여 문장의 의미를 전반적으로 파악
- 단점: 단어 간의 상호 작용 및 순서 정보가 상대적으로 약할 수 있다.
두 임베딩 방법은 종종 함께 사용되어 텍스트 데이터를 모델에 효과적으로 제공하는 데 활용된다.