본문 바로가기
🤖 AI/AI

태 대학 보내기 - 📐 embedding

by 정람지 2024. 6. 15.

우리 태 기하 보고서 쓰셔야 한다고

소재 여쭈시길래

NLP에서 쓰이는 임베딩(텍스트 벡터 변환)을 소개해줬다.

비슷한 단어 묶음끼리의 벡터 값 유사성이 궁금하시다고 

뽑아 볼 것을 요청하시는 모습이다.


📐 임베딩하기

임베딩 : 텍스트 데이터를 컴퓨터가 이해할 수 있는 수치형 데이터, 즉 벡터로 변환하는 과정

 

벡터는 해당 텍스트 유닛의 의미를 수치적으로 표현하며, 이러한 표현을 통해 컴퓨터는 텍스트 간의 유사성을 계산하거나, 텍스트 데이터를 기반으로 다양한 머신러닝 모델을 학습시킬 수 있음

 ## 구조 
 ragMain가 메인 파이썬 코드
 files에 동물/음식 텍스트 
.cache 안에 각각의 벡터 저장값  
secret안에 api는 유출하면 안 돼서 빼놓  

## 목적  
임베딩(문서 내의 각 부분에 대한 벡터 표현)들의 데이터 확인 가능  
- animal과 food 간의 차이가 보이나?

임베딩 : 텍스트 데이터를 컴퓨터가 이해할 수 있는 수치형 데이터, 즉 벡터로 변환하는 과정 
임베딩 벡터를 저장하고 관리하는 벡터 저장소 : Chroma 사용 

 

데이터 찾아 넣고

코드짜서

돌리며네

이렇게 저장


📐 유사성?

데이터에서 동물과 음식 관련 임베딩 값들 사이의 차이점을 확인하기 위해 각 벡터의 요소별 차이를 계산할 수 있음

 

두 벡터 간의 유사도를 측정하는 다양한 방법들

  1. 유클리드 거리 (Euclidean Distance):
    • 두 점 사이의 '직선 거리'를 계산
    • 값이 작을수록 두 벡터 간의 유사도가 높음
  2. 코사인 유사도 (Cosine Similarity):
    • 두 벡터 간의 각도를 계산
    • 값이 1에 가까울수록 유사도가 높으며, -1에 가까울수록 상반된 특성을 가짐
  3. 맨해튼 거리 (Manhattan Distance):
    • 격자 형태의 도시에서 한 지점에서 다른 지점까지 이동할 때 '직각으로만 이동'하는 거리를 계산
    • 값이 작을수록 유사도가 높음

 

유클리드 거리는 약 0.632

코사인 유사도는 약 0.636

두 벡터가 서로 다소 유사한 방향을 가지고 있지만 완전히 일치하지는 않음


어어 누나 이제 시험공부랑 코테준비하러갈게 

'🤖 AI > AI' 카테고리의 다른 글

🦙LlamaIndex 써보기  (0) 2024.05.18
🌷구축형 AI 환경 세팅하기2 🌷  (2) 2024.05.16
🦙 LlamaIndex - RAG 정리  (0) 2024.05.10
🦜langchain - RAG 정리  (2) 2024.05.10
🪻구축형 AI 환경 세팅하기 🪻  (1) 2024.04.08