임베딩 벡터 - 1. 임베딩 벡터란?
2025. 3. 26. 16:21ㆍAI/AI
📘 1. 임베딩 벡터란?
🔹 1.1 임베딩 벡터의 정의
임베딩 벡터(Embedding Vector)란 텍스트, 이미지, 사용자 행동 같은 비정형 데이터를 숫자 벡터로 변환한 표현입니다.
단순히 숫자만 나열하는 것이 아니라, 데이터의 의미나 관계를 내포한 벡터입니다.
- 예시:
- "고양이" → [0.23, -0.44, 0.91, ...]
- 이 숫자들은 고양이라는 단어의 의미를 수치적으로 압축한 것이라 볼 수 있습니다.
✅ 요약: 임베딩 벡터는 데이터를 기계가 이해하고 계산할 수 있도록 의미 기반으로 수치화한 벡터입니다.
🔹 1.2 임베딩 벡터가 필요한 이유
✅ 1) 기계는 수치 데이터만 처리 가능
딥러닝 모델은 숫자만 입력으로 처리할 수 있습니다.
텍스트나 이미지 같은 비정형 데이터는 그대로 사용할 수 없으므로, 숫자 형태로 변환이 필요합니다.
✅ 2) 기존 방식(one-hot 인코딩)의 한계
One-hot 인코딩은 단어 수만큼의 차원을 만들고, 해당 단어 위치에만 1을 부여하는 방식입니다.
- 예: 단어 사전에 "고양이"가 네 번째라면 → [0, 0, 0, 1, 0, 0, ...]
- 단점:
- 단어 간 의미 관계가 반영되지 않음
- 고차원이며 희소(sparse)해서 계산 비효율적
✅ 3) 임베딩 벡터는 의미와 효율성을 동시에 확보
- 예: "강아지"와 "고양이"는 의미가 유사하므로 벡터 공간에서도 서로 가깝게 위치
- 차원이 낮고 밀집(dense)되어 있어 학습과 계산에 효율적
💡 실생활 예시:
검색엔진에서 "디지털 카메라"를 검색하면, 문서나 상품을 임베딩 벡터로 변환한 뒤
입력 쿼리 벡터와 유사한 항목을 빠르게 찾는 방식으로 동작합니다.
🔹 1.3 임베딩 벡터 표현의 장점
✅ 1) 수학적 연산이 가능하다
임베딩 벡터는 벡터 연산을 통해 개념 간의 관계를 추론할 수 있습니다.
- 예: 벡터("왕") - 벡터("남자") + 벡터("여자") ≈ 벡터("여왕")
✅ 2) 유사도 측정이 가능하다
두 벡터 간 거리를 계산해 의미적 유사성을 파악할 수 있습니다.
비교 방식 | 개념 | 특징 | 주로 사용되는 상황 |
코사인 유사도 | 두 벡터 사이의 각도 | 방향(의미) 중심 | 문서, 문장 유사도 비교 |
유클리디안 거리 | 두 벡터 사이의 직선 거리 | 위치 중심 | 이미지, 사용자 임베딩 비교 등 |
🔎 코사인 유사도는 방향성을 고려하기 때문에 자연어 처리 분야에서 많이 사용됩니다.
✅ 3) 시각화 및 클러스터링이 가능하다
고차원 임베딩 벡터는 시각화 기법을 통해 저차원으로 변환 후 군집 구조를 확인할 수 있습니다.
- t-SNE: 국소 구조(가까운 관계)를 잘 보존, 단어 간 의미적 클러스터 확인 가능
- UMAP: 전반적인 구조 유지 + 빠른 계산 속도
📈 예를 들어, "음식", "과일", "동물" 관련 단어들이 각각 클러스터처럼 모여 있는 모습을 확인할 수 있습니다.
🔹 📌 요약 정리
항목 | 설명 |
정의 | 데이터를 의미 있는 숫자 벡터로 변환한 표현 |
필요성 | 기계 학습을 위한 수치화, 의미 관계 반영, 기존 기법의 한계 극복 |
장점 | 연산 가능, 유사도 계산 가능, 시각화 가능, 효율적 표현 |
'AI > AI' 카테고리의 다른 글
임베딩 벡터 - 3. 다양한 임베딩 유형 (0) | 2025.03.26 |
---|---|
임베딩 벡터 - 2. 임베딩의 기본 원리 (0) | 2025.03.26 |
Cloud AI - 마무리 (0) | 2025.03.18 |
Cloud AI - 5. 최종 프로젝트: 클라우드 AI를 활용한 나만의 AI 서비스 만들기 (운영 및 유지보수) (0) | 2025.03.18 |
Cloud AI - 5. 최종 프로젝트: 클라우드 AI를 활용한 나만의 AI 서비스 만들기 (실습) (0) | 2025.03.18 |