출처
강의 링크
https://web.stanford.edu/class/cs25/
CS25: Tranformers United!
Disussing the latest breakthroughs with Transformers in diverse domains
web.stanford.edu
강의 영상
Transformers and LLMs: An Intorudction
NLP Throughout the Years
- Linguistic Foundcations
- 각각의 단어를 숫자 벡터로 표현
- Word2Vec(2013), GloVe, BERT, ELMo
- Seq2seq Models
- RNNs, LSTMs
- 비효율적
- 병렬화(parallelize) 할 수 없음
- cf) 병렬화: 작업을 여러 개의 작은 작업으로 나누어 여러 프로세서나 코어에서 동시에 실행하도록 만드는 과정
- Attention mechanism
- 쿼리(query): 찾고 있는 것 - 질문
- 키(key): 찾도록 도와주는 것 - 데이터
- 값(value): 최종 정보
- softmax in attention: 가장 관련 있는(relevant) 것을 찾아주는 soft match
- Transformer & Multi-Head Attention
- 각 헤드(head)가 처음에 랜덤으로 초기화(initialized)
- 학습과정에서 서로 다른 정보를 학습하게 됨 - 다양한 패턴을 동시에 포착
- 최종적으로 모든 헤드의 출력값을 연결(concatenate)
- 트랜스포머 활용 예시
- T5(Text-to-Text Transfer Transformer): 모든 NLP 작업을 텍스트 입력 - 텍스트 출력으로 통합한 모델
- BART (Bidirectional and Auto-Regressive Transformer): 텍스트 복원 및 생성에 특화된 모델
- GPT(Generative Pre-trained Transformer): 디코더만을 사용해 ‘이전까지 생성된 텍스트’를 문맥으로 삼아 순차적으로 생성
- Cross-Attention
- 디코딩할 때 두 가지의 attention 소스가 있음
- (1) encoder hidden state
- key, value를 encoder의 출력에서 가져옴
- decoder는 encoder의 정보를 활용해 입력 시퀀스와 관련된 출력 생성
- (2) self attention between decoder
- 디코더가 스스로 생성한 토큰 간의 관계 분석
- 디코더의 출력(hidden vector)을 인코더의 출력과 결합(concatenate)해 다음 토큰 생성
- LLM
- filtering: 입력 텍스트 바탕으로 중요 정보 추출/ 관련 없는 정보 걸러냄
- 훈련 목표: 입력된 이전 토큰을 모두 고려하여 다음 토큰 예측 ex) GPT autoregressive 학습
- 높은 계산 비용(heavy computational costs)
- plug & play: 추가 학습 없이 zero-shot이나 few-shot 프롬프트를 통해 다양한 작업에 적용 가능
- = Transformer 구조를 대규모로 확장한 버전
- LLM 확장
- 창발 능력(emergent ability): 작은 모델에서는 관찰되지 않는 새로운 능력이 대형 모델에서 나타나는 현상
- 예측 불가능성(unpredictable)
- 상전이(phase transition): 특정 크기를 넘어서면, 훈련되지 않은 작업에서도 적은 예제(few-shot prompting)만으로 강력한 성능 발휘
- Beyond Scaling
- 모델 확장이 LM 성능을 향상시킬 수 있는 최선의/유일한 방법인가?
- 더 작은 모델에서도 능력을 구현할 수 있는가?
- 창발 능력(emergent ability): 작은 모델에서는 관찰되지 않는 새로운 능력이 대형 모델에서 나타나는 현상
LLM 소개: RLHF, ChatGPT, GPT-4, Gemini
- Reinforcement Learning with Human Feedback (RLHF)
- 인간 평가자(human labelers)가 모델의 출력물을 평가해 선호도 데이터를 제공
- 이 데이터를 바탕으로 보상 함수(reward function)를 학습
- 최종적으로 강화학습을 통해 보상 함수를 최대화하는 방향으로 모델 개선
- = 인간의 피드백을 이용해 강화학습을 수행하는 방법
- Direct Preference Optimization (DPO)
- RLHF는 보상 함수를 학습해 강화학습을 수행하는 반면, DPO는 직접적인 선호 데이터를 통해 모델을 업데이트
- DPO는 계산량이 적고 구현이 간단하며, 강화학습보다 더 안정적인 결과를 제공할 수 있음
- = 인간의 선호 데이터를 직접 활용하여 모델을 최적화
- ChatGPT
- 디코더 기반 Transformer 아키텍처
- RLHF로 학습되어, 인간 친화적이고 대화에 특화된 성능 제공
- 제로샷(Zero-shot) 및 퓨샷(Few-shot) 학습을 통해 다양한 작업 수행 가능
- = OpenAI의 대규모 언어 모델 시리즈로, GPT-4를 기반으로 작동
- Gemini
- MoE는 모델의 특정 부분만 활성화하여 작업을 처리하는 방식으로, 계산 효율성과 확장성을 높임
- = Google DeepMind의 모델로, Mixture of Experts(MoE) 구조 채택
→ 다양한 모델이 각각 다양한 용도에 적합
- Diffusion Transformer ↔ U-net Transformer
- Diffusion Transformer = 이미지 생성 및 변환 작업에서 사용
- 확률적 과정을 통해 데이터를 점진적으로 변형하며 고품질 결과를 생성
- U-Net Transformer = 이미지 복원 및 생성 작업에 주로 사용
- U-Net 구조와 Transformer의 결합으로 로컬 정보와 전역 문맥을 동시에 활용
- Diffusion Transformer = 이미지 생성 및 변환 작업에서 사용
- 고급 AI 모델 분야
- 범용 에이전트
- 긴 영상 이해와 생성
- 금융 및 비즈니스 응용
- 매우 긴 시퀀스 모델링
- 도메인별 기초 모델
- AGI/ASI 개발에 부족한 요소
- 계산 복잡성 감소
- 강화된 인간 제어 가능성
- 인간 뇌 모델과의 정렬
- 적응형 학습과 도메인 간 일반화
- 다중 감각 멀티모달 구현
- 무한/외부 메모리
- 무한한/지속적인 자기 개선
- 완전한 자율성과 장기적인 의사 결정
- 감정 지능과 사회적 이해
- 윤리적 추론과 가치 정렬
- cf) AGI , ASI
- AGI(Artificial General Intelligence) 일반 인공지능: 모든 지적 작업을 인간처럼 수행할 수 있는 인공지능
- ASI(Artificial Superintelligence) 초인공지능: 인간의 지적 능력을 훨씬 초월하는 수준의 인공지능
Recent Trends and Remaining Weakness of LLMs
- Baby LM: Children vs. LLMs
- 소규모 LLM(Minified LLMs), 온디바이스 LLM(On-Device LLMs)
- 미래에는 로컬 환경/핸드폰에서 모델 fine tuning이 가능해질 것
- 아직까지 모델 크기가 크고 비용이 높음
- 메모리 확장 및 개인화 Memory Augmentation & Personalization
- 문제점: LLM은 특정 시점에 고정된 지식을 사용(frozen in knowledge)하며, 실시간으로(on the fly) 지식을 업데이트하지 못함
- 목표:
- 대화 중 또는 대화 간 사용자 정보를 기억해 개인화된 응답 제공
- widesclae: 몇몇의 사용자로부터 모델 지식 실시간으로 업데이트
- 특정 유저에게 말하기 방식(talking style)과 페르소나 맞춤(adapt)
- potential approaches
- Memory Bank: 비효율적
- Prefix-Tuning(모델의 일부만 파인튜닝): 여전히 비용이 큼
- Prompt-Based Personalization: 모델 자체 변경은 어려움
- Retrieval-Augmented Generation (RAG): 외부 데이터로 컨텍스트 확장, 근본적인 기술 및 능력 개선에는 한계
- 사전 학습 데이터 생성 및 선택 (Pretraining Data Synthesis & Selection)
- 현재 트렌드: 합성 데이터 생성 (Synthetic Data Generation)을 통해 소형 모델이나 동료 모델(peer model) 훈련
- 모델 디스틸레이션(Model Distillation)과 관련 - 대형 모델(teacher)의 지식을 소형 모델(student)에 이전
- Microsoft Phi-2 모델 (Microsoft Phi-2 Model): 고품질 데이터(textbook-quality)와 합성 데이터로 학습해 2.7억 매개변수만으로 대형 모델과 경쟁
- 새로운 지식 vs 단순 암기? (New Knowledge or “Memorizing”?)
- Innovation vs. Regurgitation: LLM이 새로운 아이디어를 생성하는지, 기존 지식을 재조합하는지 여부
- Test-Time Contamination: 학습 데이터와 평가 데이터의 중복으로 인한 벤치마크 왜곡
- Cognitive Simulation: LLM이 인간의 사고를 모방하는지, 아니면 단순 패턴 매칭인지
- 지속 학습 (Continual Learning)
- 인간처럼 상호작용에서 지속적으로 학습하고 발전
- 현재: 작은 모델을 미세 조정하거나 더 나은 모델의 데이터를 사용해 재학습(재훈련, 디스틸레이션에 가까움)
- 미래 방향: 재훈련 없이 무한 적응 (Infinite, Adaptive Learning) 가능 방법 개발. ex) UltraChat-200k, LLMs Can Self-Improve 논문
- LLM의 해석 가능성 (Interpretability of LLMs)
- 문제: LLM은 "블랙박스 (Black-Box)"로 작동 원리를 이해하기 어려움
- 연구 분야
- 기계적 해석 가능성 (Mechanistic Interpretability): 모델 구성 요소와 의사결정 관계를 분석
- 모델 편집 (Model Editing): 특정 뉴런이나 가중치를 조정해 지식 업데이트
- 예시
- ROME (Rank-One Model Editing): 특정 사실을 업데이트하기 위한 가중치 수정
- 중간 계층 조작 (Mid-Layer Interventions): 사실 연관성 저장 및 업데이트
- 모델 모듈화 및 전문가 혼합 (Model Modularity & Mixture of Experts, MoE)
- 개념: 문제를 해결하기 위해 여러 개의 모델/전문가가 함께 작업
- 모델을 여러 전문가(Experts) 또는 하위 모델로 나누어 작업에 특화
- causal intervention method
- → 여러 전문가의 능력을 결합해 복잡한 문제 해결
- 하나의 모델을 여러 구획으로 나눠 특정 분야(논리, 언어, 공간적 추론 등)에 특화
- → 기초 모델 위에 도메인별 레이어 추가
- 개념: 문제를 해결하기 위해 여러 개의 모델/전문가가 함께 작업
- 자기 개선 및 자기 반성 (Self-Improvement & Self-Reflection)
- LLM이 반복적인 자기 반성을 통해 성능을 지속적으로 개선
- AGI의 핵심 개발 요소로 간주
- 환각 문제 (Hallucination Problem)
- 자신이 무엇을 모르는지 알지 못함
- 해결책 (Solutions):
- Retrieval-Based Fact-Checking: 검색 기반 사실 확인
- Self-Refinement: 생성 후 자체 수정
- Confidence Rating: 출력 신뢰도를 평가하는 시스템 추가
- Sampling Adjustment: 환각 위험을 줄이는 토큰 샘플링 방식
Reasoning - Chain-of-Thought
- 개념: 인간의 사고 과정을 참고하여, 여러 단계로 구성된 문제를 분해해서 해결하는 방식
- CoT는 모델의 행동(답을 도출하는 과정, 추론 경로에서 오류가 발생하는 지점)을 이해할 수 있는 해석 가능한 창을 제공
- CoT 에러의 종류
- calculator error
- mapping error: 기호 및 변수 처리 방식에 있어서의 오류
- ‘one missing step’ error
- semantic understanding error
- 작은 모델에 적용하는 방법
- CoT(연쇄적 사고)는 약 1000억 개 이상의 매개변수(param)를 가진 모델에서 효과적으로 작동
- 하지만 소형 모델에서는 여전히 ‘one missing step’ error, semantic understanding error가 흔하게 나타남
- Tree of Thoughts(ToT): 문제를 해결하기 위해 여러 추론 경로를 탐색하고, 선택지를 스스로 평가하며, 필요할 경우 되돌아가 수정하는 고급 추론 방식
- Socratic Questioning: 자기 질문(self-questioning)과 재귀적 사고(recursive thinking) 과정을 모방한 분할 정복 방식의 알고리즘
- 문제를 더 작고 다루기 쉬운 하위 문제로 나누고, 이를 재귀적으로 해결하는 분할 정복(divide-and-conquer) 접근 방식을 따름
Why human-like AI Agents?
- 5 levels of autonomy
- L5 자율성(완전 자동화): 인간의 개입 없이 모든 작업을 독립적으로 처리할 수 있는 AI의 궁극적인 목표
Computer Interactions
- agent computer interaction
- API(programmatic)
- direct interaction(browser/desktop control)
- Memory & Personalization
- input token → AI model → output token (powered by NN)
AI models as Neural Compute Unit
- input / output token in binary
- transformer as computer unit, memory like disk
- transformer specialized languages
Long-term Memory
: store, retrieve, embedding
- 저장(Store): 중요한 정보를 장기적으로 저장
- 검색(Retrieve): 필요할 때 정보를 검색
- 임베딩(Embedding): 정보를 효율적으로 처리하고 사용하기 위한 벡터 형식으로 변환
Personalization
- user-agent alignment problem: 에이전트가 사용자의 요구와 목표에 맞게 작동하도록 만드는 것
Agent-to-Agent Communication
- multi agent autonomous AI systems
- 시간 문제 해결: 작업을 병렬처리하여 속도 향상
- 업무 특화 가능
- challenges: 에이전트 간 커뮤니케이션 문제 - natural language has loss
- 구조: 유저 → manager AI agent → worker AI agent
- 에이전트 간 자연어 기반 통신의 정보 손실 문제
- 계층적 구조(hieararchy)를 통한 작업 관리
- 동기화 메커니즘(synchronization primitives)
- 앞으로의 과제
- robust communication protocols & syncing primitives
Future Directions
- 신뢰성(reliability)
- looping & plan divergence
- testing & benchmarking
- 실제 환경에서의 배포 real world - deployment & observability
- trust
- 인간의 개입 가능성(human override)을 시스템에 내장
- 계획 이탈 plan divergence
- keep making mistakes ex) autoGPT
- Karpathy의 LLM OS
- LLM을 운영 체제(OS)로 간주
- ALU(산술 논리 유닛) 역할을 수행하도록 설계
Future needs for AI agents
- 오류 수정 메커니즘 (Error Correction Mechanisms): 에이전트가 스스로 오류를 감지하고 수정할 수 있는 능력
- 보안 및 사용자 권한 모델 (Security & User Permission Models): 사용자의 데이터와 권한을 안전하게 보호
- 샌드박스 및 위험 환경 배포 (Sandboxing & Deployment in Risky Settings): 위험한 환경에서도 안전하게 테스트하고 배포할 수 있는 샌드박스 모델