직접 수 많은 빅데이터의 텍스트들을 수집해서 언어모델 생성
만들어진 언어 모델을 파인 튜닝 (fine tuning)해서 나만의 언어 모델 생성
리마 같은 LLM 을 파인 튜닝함
내가 구현하고 싶은 언어 모델을 위한 좋은 데이터를 생성하는 것이 중요함
내가 던진 질문에 대해서 적절한 답을 할 수 있으려면 신경망이 학습한 질문과 얼마나 유사한지 계산하는 방법을 공부

# 필요한 라이브러리 설치 (Colab이나 Jupyter 환경에서 실행 시 필요)
!pip install -q sentence-transformers
# 라이브러리 임포트
import numpy as np
from sklearn.metrics.pairwise import cosine_similarity
from sentence_transformers import SentenceTransformer
# SentenceTransformer 모델 초기화
model = SentenceTransformer('all-MiniLM-L6-v2')
# 단어 'france'와 'french'의 임베딩 생성
embedding_a = model.encode("france").reshape(1, -1)
embedding_b = model.encode("french").reshape(1, -1)
# 코사인 유사도 계산
cosine_sim = cosine_similarity(embedding_a, embedding_b)[0][0]
# 결과 출력
print("Cosine Similarity between 'france' and 'french':", cosine_sim)
# 필요한 라이브러리 설치 (Colab이나 Jupyter 환경에서 실행 시 필요)
#!pip install -q sentence-transformers #문자를 임베딩하는 클래스
# 라이브러리 임포트
import numpy as np #배열을 다루는 수학 라이브러리
from sklearn.metrics.pairwise import cosine_similarity #코사인 유사도
from sentence_transformers import SentenceTransformer #문장을 임배딩
# SentenceTransformer 모델 초기화
model = SentenceTransformer('all-MiniLM-L6-v2') #간결하면서 높은 성능을 보이는 사전에 훈련된 언어 모델
# 단어 'france'와 'french'의 임베딩 생성
#france 를 벡터로 변환하고 reshape로 2차원으로 변환
embedding_a = model.encode("france").reshape(1, -1)
#french 를 벡터로 변환하고 reshape로 2차원으로 변환
embedding_b = model.encode("french").reshape(1, -1)
print( embedding_a)
# 코사인 유사도 계산
cosine_sim = cosine_similarity(embedding_a, embedding_b)[0][0]
# 결과 출력
print("Cosine Similarity between 'france' and 'french':", cosine_sim)
Cosine Similarity between 'france' and 'french': 0.74060774
a = '하루 종일 우울해요'
b = '남편만 보면 화가 치밀어 오르고 감정 조절이 안돼요'
c = '오전에 우울하다 오후가 되면 괜찮아요'
# 필요한 라이브러리 설치 (Colab이나 Jupyter 환경에서 실행 시 필요)
#!pip install -q sentence-transformers #문자를 임베딩하는 클래스
# 라이브러리 임포트
import numpy as np #배열을 다루는 수학 라이브러리
from sklearn.metrics.pairwise import cosine_similarity #코사인 유사도
from sentence_transformers import SentenceTransformer #문장을 임배딩
# SentenceTransformer 모델 초기화
model = SentenceTransformer('all-MiniLM-L6-v2') #간결하면서 높은 성능을 보이는 사전에 훈련된 언어 모델
# 단어 'france'와 'french'의 임베딩 생성
#france 를 벡터로 변환하고 reshape로 2차원으로 변환
embedding_a = model.encode('하루 종일 우울해요').reshape(1, -1)
#french 를 벡터로 변환하고 reshape로 2차원으로 변환
embedding_b = model.encode('남편만 보면 화가 치밀어 오르고 감정 조절이 안돼요').reshape(1, -1)
embedding_c = model.encode('오전에 우울하다 오후가 되면 괜찮아요').reshape(1, -1)
#print( embedding_a)
# 코사인 유사도 계산
cosine_sim = cosine_similarity(embedding_a, embedding_b)[0][0]
cosine_sim2 = cosine_similarity(embedding_a, embedding_c)[0][0]
# 결과 출력
print("a와 b의 유사도", cosine_sim)
print("a와 c의 유사도", cosine_sim2)
