파운데이션 모델
Contents
- 텍스트 파운데이션 모델
- 텍스트 파운데이션 모델(거대 언어 모델)이란?
- 거대 언어 모델 예시
- 거대 언어 모델의 학습
- 지시 학습
- 선호 학습
- 거대 언어 모델의 추론
- 디코딩
- 거대 언어 모델의 평가와 응용
- 거대 언어 모델의 평가
- 거대 언어 모델의 응용/한계
텍스트 파운데이션 모델
파운데이션 모델의 3가지 구성요소
- 빅데이터
- 자가 학습(Self-supervised Learning) 알고리즘
- 어텐션(Attention)
어텐션(Attention) : 입력 데이터에서 중요한 부분에 집중하는 메커니즘
트랜스포머(Transformer) : 어텐션 메커니즘을 기반으로 한 신경망 구조
텍스트 파운데이션 모델이란?
대량의 데이터를 기반으로 사전 학습된 대규모 AI 모델
텍스트 파운데이션 모델(거대 언어 모델)의 특이점
- 규모의 법칙(Scaling Law) : 더 많은 데이터, 큰 모델, 긴 학습 -> 더 좋은 성능
- 창발성(Emergent Property) : 특정 규모를 넘어서면 갑자기 모델에서 발현되는 성질
텍스트 파운데이션 모델 (LLM)
- 기존 대비 (1) 더 큰 모델(>7B)이 (2) 더 많은 데이터(>1T)에서 학습되어 창발성이 나타나기 시작한 언어 모델
폐쇄형 거대 언어 모델
- ChatGPT, Claude, Gemini
폐쇄형(Closed) 거대 언어 모델 장점
- 일반적으로 더 우수한 성능 및 최신 기능을 갖고 있으며 사용하기 쉬움
폐쇄형(Closed) 거대 언어 모델 단점
- API 사용 시 마다 비용이 발생
- 모델이나 출력에 대한 정보가 제한적으로 제공됨
폐쇄형 거대 언어 모델 예시
ChatGPT(OpenAI) : 가장 많은 활성 유저 수. 전반적으로 뛰어난 성능
Claude(Anthropic) : 안전 지향적 모델. 코딩 관련 작업에 특히 뛰어난 성능
Gemini(Google) : 가장 긴 입력 및 출력을 지원. 뛰어난 멀티 모달 성능
개방형 거대 언어 모델
- LLaMa(Meta), Gemma(Google), Qwen(Alibaba)
개방형 거대 언어 모델 장점
- 무료로 다운로드 및 사용 가능
- 모든 정보가 공개되어 있음
개방형 거대 언어 모델 단점
- 충분한 계산 자원(GPU 등) 필요
- 상대적으로 폐쇄형 모델에 비해 성능이 낮은 편
거대 언어 모델의 학습
- 지시 학습 (instruction tuning)
- 선호 학습 (preference learning)
지시 학습 (Instruction Tuning)
주어진 지시에 대해 어떤 응답이 생성되어야 하는지를 학습
Instruction tuning (FLAN)
학습 데이터의 다양성 증대를 위해, 각 테스크를 다양한 지시(템플릿)로 표현할 수 있음
지시 학습의 한계 : 주어진 입력에 대해 적절한 하나의 응답이 있다고 가정하기 떄문에, 정답이 정해져 있지 않은 개방형(Open-ended) 테스크에서는 한계가 있음
선호 학습 (Preference Learning)
다양한 응답 중 사람이 더 선호하는 응답을 생성하도록 추가 학습
InstructGPT
InstructGPT의 핵심 아이디어 : 사람의 피드백을 통한 강화학습
InstructGPT의 학습 방법
- 지시 학습을 통한 텍스트 파운데이션모델의 추가 학습
- 실제 유저로부터 다양한 지시 입력을 수집하고, 해당 입력에 대해 훈련된 사람 주석자들이 정답 데이터를 생성
- 사람의 선호 데이터를 수집하여, 보상 모델(Reward model, RM)을 학습
- 주어진 입력에 대한 선택지는 모델이 생성, 다양한 선택지에 대한 선호도는 사람이 생성
- 사람과 일치한 선호도를 출력할 수 있도록 보상 모델을 지도 학습
- 보상이 높은 응답을 생성하도록 강화 학습을 통해 추가 학습
- Step 1&2에서 보지 못한 질문에 대해 사람의 추가적인 개입 없이 학습된 모델들을 통해 추가 학습이 진행
- 지시 학습된 모델을 보상 모델 기반 강화 학습을 통해 한 번 더 추가 학습
InstructGPT의 결과
유저의 지시를 얼마나 잘 수행하는 지를 사람이 직접 평가
- 프롬프팅이나 지시 학습에 비해 발전된 지시 수행 능력을 보여줌
- 모델 크기가 커질 수록 동일한 방법에서도 전반적인 지시 수행 능력이 꾸준히 향상됨
얼마나 안전한 응답을 생성하는지 평가
- 기존 대비, InstructGPT는 해로운 응답(RealToxicity)과 거짓말(TruthfulQA, Hallucinations)을 덜 생성
LLaMA2
InstructGPT와 비슷하게 RLHF와 대화 데이터를 활용한 LLaMA2 Chat 모델을 공개
거대 언어 모델의 추론
디코딩(Decoding) 알고리즘
다음 단어를 선택하는 방법
핵심 아이디어
1. Greedy Decoding
- 핵심 아이디어 : 가장 확률이 높은 다음 토큰을 선택
- 장점 : 사용하기 쉽다
- 단점 : 직후만 고려하기 때문에 생성 응답이 최종적으로 최선이 아닐 수 있다
2. Beam Search
- 핵심 아이디어 : 확률이 높은 k개(beam size)의 후보를 동시에 고려
- 장점 : 최종적으로 좋은 응답 생성 확률이 높다
- 단점 : 계산 비용이 많이 늘어난다 (각 후보마다 LLM 추론을 수행)
3. Sampling
- 핵심 아이디어 : 거대 언어 모델이 제공한 확률을 기준으로 랜덤하게 생성
- 장점 : 다양한 응답을 생성할 수 있음
- 단점 : 생성된 응답의 품질이 감소할 수 있음
4. Sampling “with Temperature”
- 핵심 아이디어 : 하이퍼 파라미터 T를 통해 거대 언어 모델이 생성한 확률 분포를 임의로 조작
- 장점 : 모델 예측 시, 다양성이 극대화 됨
- 단점 : 품질은 떨어질 수 있음 (불안정)
5. Top-K Sampling
- 핵심 아이디어 : 확률이 높은 K개의 토큰들 중에서만 랜덤하게 확률에 따라 샘플링
- 장점 : 품질이 낮은 응답을 생성할 가능성을 줄일 수 있음
- 단점 : 확률 분포의 모양에 상관 없이 고정된 k개의 후보군을 고려
6. Top-P Sampling (or Nucleus Sampling)
- 핵심 아이디어 : K를 고정하는 대신, 누적 확률(P)에 집중하여 K를 자동으로 조절
- 장점 : 다양한 평가 지표에서 기존 디코딩 알고리즘들 대비 좋은 성능을 달성
- 단점 : P값 설정이 필요
디코딩(Decoding) 알고리즘 별 장단점 요약
| 알고리즘 | 장점 | 단점 |
|---|---|---|
| Greedy Decoding | 쉬운 사용법 | 최적해 보장 x |
| Beam Search | 좋은 응답 생성 확률 상승 | 큰 계산 비용 |
| Sampling | 다양한 응답 생성 가능 | 품질 불안정 |
| Sampling with “Temperature” | 창의성/안정성 조절 가능 | T증가 : 품질 저하, T감소 : 다양성 부족 |
| Top-K Sampling | 잡음 단어 배제, 품질 향상 | K값 고정 -> 문맥 따라 불균형 |
| Top-P Sampling (Nucleus) | 확률 누적 기준, 품질&다양성 균형 | P값 설정 필요 (경우에 따라 랜덤성 존재) |
거대 언어 모델의 평가와 응용
평가
구축한 시스템이 실제로 잘 동작하는지를 확인하는 단계
평가의 3가지 요소
- 목표 : 시스템으로 무엇을 달성하고자 하는지
- 평가 방법 : 어떤 방법으로 평가할 것인지
- 평가 지표 : 어떻게 성공 여부를 판단할 것인지
거대 언어 모델 평가의 특징
- 특정 테스크에서 학습된 기존 AI 모델들과 달리, 거대 언어 모델은 다양한 테스크에 대해 동시에 학습됨
- 따라서, 거대 언어 모델의 성능을 올바르게 평가하기 위해서는 많은 테스크에서의 성능을 종합적으로 판단해야함
- 또한 디코딩 알고리즘은, 입력 프롬프트에 따라 같은 질문에 대해서도 예측이 바뀌므로, 공평한 비교를 위해서는 해당 부분도 고려해야함
거대 언어 모델 평가 방법의 종류
정답이 정해진 경우
- 예측과 정답을 비교하여 일치도를 측정 : 정확도(Accuracy)
정답이 정해져 있지 않은 경우
- 평가 방법 #1 : 사람이 임의의 정답을 작성 및 이와 예측을 비교
- 평가 방법 #2 : 정답과 무관하게 생성 텍스트 자체의 품질만을 측정
거대 언어 모델을 활용한 평가
- LLM-as-judge (or G-Eval) : 거대 언어 모델을 통해 생성 텍스트를 평가
유저는 다음과 같은 정보를 제공
- 풀고자 하는 테스크
- 평가하고자 하는 텍스트
- 평가 기준을 제공
거대 언어 모델의 응용 및 한계
거대 언어 모델의 응용 : 멀티모달 파운데이션 모델
예) GPT-4o -> 멀티모달 입력(이미지, 비디오, 오디오), 멀티모달(오디오, 텍스트) 출력 생성
다른 모달리티 데이터를 거대 언어 모델이 이해할 수 있도록 토큰화 및 추가 학습
거대 언어 모델의 응용 : 합성 데이터 생성
- self-instruct : 175개의 데이터를 사람이 작성한 뒤, GPT-3를 통해 52,000개의 합성 데이터 생성
거대 언어 모델의 한계 : 환각 (Hallucination)
- 사실과 다르거나, 전적으로 지어낸 내용임에도 불구하고 진위성을 구별하기 어렵게 만듦
- 사전 학습 데이터가 특정 시점까지의 정보만 포함하고 있어 환각 현상의 원인이 되기도 함 (검색 증강 생성 (Retrieval-augmented Generation, RAG)을 통해 해결 가능)
거대 언어 모델의 한계 : 탈옥 (Jailbreaking)
- 프롬프팅 엔지니어링을 통해 거대 언어 모델의 정렬을 우회할 수 있다는 것이 확인됨 (Do Anything Now(DAN) 프롬프팅)
거대 언어 모델의 한계 : AI 텍스트 검출
- 거대 언어 모델의 무분별한 사용이 학교 및 회사에서 여러가지 새로운 문제를 만들고 있음