RAG와 Fine-Tuning 차이사실 RAG와 Fine-Tuning 중에 하나만을 써야 하는 건 아니다. 두 개를 전부 사용하는 모델도 있다. 하지만 일단 이 두가 지 접근법을 비교하는 건 의미가 있을 것 같다.Knowledge sourceRAGparametric + non-parametric즉, external knowledge를 결합해서 시너지 효과를 보는 방법론Fine-Tuning베이스 모델을 태스크에 맞게 추가로 파인튜닝즉, parametric knowledge를 업데이트하는 방식Knowledge updateRAG소스가 되는 외부 데이터베이스를 업데이트함으로써 모델 전체를 최신화할 수 있다.Fine-Tuning반면, 파인 튜닝 방식으로 모델을 최신화하기 위해서는 학습을 다시 시켜야 한다. 살..
일반적인 생성형 언어모델의 파이프라인User가 input을 주면 GPT나 T5 같은 언어모델의 내부를 지나게 된다. 언어 모델은 사전학습된 파라미터 값들과 input값들을 통해 ouput을 만들어낸다. 우리는 이 과정에서 자세히 어떤 일이 일어나는지 알 수 없다. 단지 언어모델의 어딘가에는 학습과정 때 주어진 지식들이 저장되어 있을 거라는 걸 실험적으로 도출할 수 있을 뿐이다. 이걸 파라메트릭 메모리(Parametric Memory)라고 한다. 파라미터에 저장되어 있기때문에 이런 이름이 붙었다. 모델이 적절하게 학습되었고 또 모델의 capacity가 충분할 경우에는 모델의 첫 번째 질문, '2020년 최저시급이 얼마야?'라는 질문에 첫 번째 예시와 같이 2020년 한국의 최저시급은 8,590원이라고 정..
📌 서론이번 글에서 설명할 모델들은 이전 글에서 설명한 트랜스포머 구조를 사용한 모델들이다. 그러므로 트랜스포머 구조를 설명한 이전 글을 읽고 오면 좋을 것 같다!2024.08.19 - [Upstage AI Lab 4기/RAG] - [RAG] RAG의 기본 개념 및 트랜스포머 어텐션 설명 (1) [RAG] RAG의 기본 개념 및 트랜스포머 어텐션 설명 (1)1. RAGRAG는 “Retrieval Augmented Generation”의 약자로, 사용자의 쿼리에 대한 응답을 생성할 때 모델의 내재적 지식에만 의존하지 않고, 외부의 지식을 검색하여 보충하는 방법이다. 이 방법은 크게 세yijoon009.tistory.com BertBert는 트랜스포머의 인코더만을 사용한 모델이다.디코더 부분이 없으니 자연..
사분위 범위(IQR)사분위수(Quartile)값을 같은 개수로 4개로 나눈 각각의 값 1사분위수(Q1)25th Percentile 2사분위수(Q2)Median(중앙값), 50th Percentile 3사분위수(Q3)75th Percentile 사분위간 범위(Interquartile Range, IQR)Q3 - Q1 MaximumQ3 + 1.5 * IQR MinimumQ1 - 1.5 * IQR OutliersMinimum 보다 작거나Maximum보다 큰 값 예시 1A 마을의 나이가 다음과 같다고 가정해 보자.1사분위수(Q1)25th Percentile → 352사분위수(Q2)Median(중앙값), 50th Percentile-> 473사분위수(Q3)75th Percentile → 80사분위간 범위(Inte..
python의 pandas를 이용해 데이터의 기초 통계를 알아보자.데이터 불러오기import pandas as pd import matplotlib.pyplot as pltimport seaborn as snsimport numpy as npfrom datetime import datetime from statsmodels.tsa.seasonal import seasonal_decompose# 한글 깨짐plt.rc('font', family='NanumBarunGothic') df = pd.read_excel('../data/도로교통공단_일자별 시군구별 교통사고 건수.xlsx')df.head() 현재 발생월, 일이 조금 알아보기 어려운 형태라 이 부분만 ..
가설 검정가설 검정은 통계적으로 어떤 주장(귀무가설)이 사실인지 확인하는 방법이다. 이 과정에서 우리는 두 가지 가설을 세운다:귀무가설 (H_0): 보통 우리가 검정하고자 하는 기본 가정. (마음속으로는 기각하고자 하는 가정)대립가설 ((H_1)): 귀무가설이 사실이 아닐 경우를 나타내는 가설. (마음속으로는 채택하고 싶은 가정) 유의수준 (α)과 1종 오류유의수준(α)은 가설 검정에서 귀무가설을 잘못 기각할 확률을 나타낸다. 이 값은 우리가 허용하는 1종 오류의 최대 확률이다. 1종 오류는 귀무가설이 사실임에도 불구하고 이를 기각하는 오류를 의미한다. 일반적으로 유의수준은 0.05(5%)로 설정되며, 이는 “귀무가설이 사실일 때 5%의 확률로 잘못된 결정(귀무가설 기각)을 내릴 수 있다”는 뜻이다...
집합 A의 크기를 |A|라고 하며, 이를 A의 크기 혹은 카디널리티(cardinality)라고 부른다. 이 개념은 집합이 몇 개의 원소를 가지고 있는지를 나타낸다. 집합의 크기는 크게 두 가지로 나뉜다: 유한 집합과 무한 집합이다. 유한 집합과 무한 집합집합은 유한 집합(finite set)과 무한 집합(infinite set)으로 구분할 수 있다. 유한 집합 (Finite Set)집합 A가 공집합인 경우, 즉 A가 아무 원소도 포함하지 않는 경우, A는 유한 집합이다. 이때, A의 크기를 0이라고 정의하며, 이를 |A| = 0이라고 쓴다.만약 집합 A의 원소들이 어떤 자연수 집합 {1, 2, …, n}과 1-1 대응(일대일 대응, 1-1 correspondence)을 가질 수 있는 경우, 이 집합 A는..
1. RAGRAG는 “Retrieval Augmented Generation”의 약자로, 사용자의 쿼리에 대한 응답을 생성할 때 모델의 내재적 지식에만 의존하지 않고, 외부의 지식을 검색하여 보충하는 방법이다. 이 방법은 크게 세 가지 중요한 단계로 구성된다:Indexing: 외부 지식을 효율적으로 검색할 수 있도록 미리 처리해 두는 단계이다.Retrieval: 사용자의 쿼리에 적합한 지식을 검색하여 모델에 전달하는 단계이다.Generation: 전달받은 지식을 기반으로 사용자의 쿼리에 대응하는 응답을 생성하는 단계이다. 2. Language Models언어 모델은 자연어를 확률적으로 모델링하는 시스템이다. 즉, 주어진 단어나 문장 조합이 얼마나 자연스러운지를 학습하고, 이에 따라 확률을 부여할 수 있다..