우리 태 기하 보고서 쓰셔야 한다고
소재 여쭈시길래
NLP에서 쓰이는 임베딩(텍스트 벡터 변환)을 소개해줬다.
비슷한 단어 묶음끼리의 벡터 값 유사성이 궁금하시다고
뽑아 볼 것을 요청하시는 모습이다.
📐 임베딩하기
임베딩 : 텍스트 데이터를 컴퓨터가 이해할 수 있는 수치형 데이터, 즉 벡터로 변환하는 과정
벡터는 해당 텍스트 유닛의 의미를 수치적으로 표현하며, 이러한 표현을 통해 컴퓨터는 텍스트 간의 유사성을 계산하거나, 텍스트 데이터를 기반으로 다양한 머신러닝 모델을 학습시킬 수 있음
## 구조
ragMain가 메인 파이썬 코드
files에 동물/음식 텍스트
.cache 안에 각각의 벡터 저장값
secret안에 api는 유출하면 안 돼서 빼놓
## 목적
임베딩(문서 내의 각 부분에 대한 벡터 표현)들의 데이터 확인 가능
- animal과 food 간의 차이가 보이나?
임베딩 : 텍스트 데이터를 컴퓨터가 이해할 수 있는 수치형 데이터, 즉 벡터로 변환하는 과정
임베딩 벡터를 저장하고 관리하는 벡터 저장소 : Chroma 사용
데이터 찾아 넣고
코드짜서
돌리며네
이렇게 저장
📐 유사성?
데이터에서 동물과 음식 관련 임베딩 값들 사이의 차이점을 확인하기 위해 각 벡터의 요소별 차이를 계산할 수 있음
두 벡터 간의 유사도를 측정하는 다양한 방법들
- 유클리드 거리 (Euclidean Distance):
- 두 점 사이의 '직선 거리'를 계산
- 값이 작을수록 두 벡터 간의 유사도가 높음
- 코사인 유사도 (Cosine Similarity):
- 두 벡터 간의 각도를 계산
- 값이 1에 가까울수록 유사도가 높으며, -1에 가까울수록 상반된 특성을 가짐
- 맨해튼 거리 (Manhattan Distance):
- 격자 형태의 도시에서 한 지점에서 다른 지점까지 이동할 때 '직각으로만 이동'하는 거리를 계산
- 값이 작을수록 유사도가 높음
유클리드 거리는 약 0.632
코사인 유사도는 약 0.636
두 벡터가 서로 다소 유사한 방향을 가지고 있지만 완전히 일치하지는 않음
어어 누나 이제 시험공부랑 코테준비하러갈게
'🤖 AI > AI' 카테고리의 다른 글
🔬LLM 지도 : 언어 모델에서 챗GPT까지 (1) | 2024.09.24 |
---|---|
🔬LLM 지도 : 딥러닝과 언어 모델링 (0) | 2024.09.23 |
🦙LlamaIndex 써보기 (0) | 2024.05.18 |
🌷구축형 AI 환경 세팅하기2 🌷 (2) | 2024.05.16 |
🦙 LlamaIndex - RAG 정리 (0) | 2024.05.10 |