지피지기 LLM
1. LLM: Large Language Model
Autoregressive language model
원래 language model은 1950년대에 shannon’s language model 부터 있었던 개념
그런데 “Large” language model이 등장하면서 hype이 생김.
매우 큰 neural net로 매우 많은 양의 언어 데이터를 학습시켰더니, 새로운 역량이 생긴다.
왜 이런 새로운 역량이 생기는지 직관적으로 이해가 쉽지는 않음.
그런데 ‘많은’ ‘큰’ 것이 생길 때 여러 차이점이 생기는 것은 자연계에서 흔히 발생하는 일!
LLaMA에서도 같은 data로 학습했을 때, 도달가능한 Loss의 최저점이 7B > 13B > 33B > 65B
신기한 task들
GPT4는 수학 문제 풀이도 가능 IMO (국제 수학올림피아드)
A-Z로 신데렐라 요약하기
Emoji로 답변하기
LaTeX로 유니콘 그리기 (text만 가지고도 visual 적인 것을 이해했다)
Minecraft안의 게임?도 GPT4로 만들기
2. How to build LLMs
LLM recipe
•
Pretraining
•
Supervised finetuning
•
Reward modeling
•
Reinforcement learning
Pretraining
•
Next word prediction
◦
다음 단어의 확률을 예측하는 방식으로 학습
◦
별도의 labeling 없이 대량의 dataset (Web에 있는 문서, source code, 책, …)을 학습에 사용 가능
◦
LLM 학습 계산 리소스의 99%이상을 여기서 사용
◦
대부분의 추론 능력이 여기서 생김
◦
이 task의 의미?
▪
Text is a projection of the world! (Ilya Sutskever) → 세상에 대한 이해를 텍스트로 할 수 있다.
•
이렇게 pretraining된 base model을 활용할 때 생기는 문제
◦
Web data로 pretrain된 model은 우리가 원하는 문장을 생성하도록 학습되지 않았다.
→ supervised FT 필요
Supervised FT
•
사람이 원하는 답 생성할 수 있게 model tuning
•
원하는 형태의 input, output으로 구성된 예시 사용
•
Instruction 형태의 다양한 task에 대해 일반화
•
전문지식을 지닌 사람이 직접 작성 또는 GPT-4 등 이미 학습된 모델의 답변을 이용함.
•
이 단계 역시 next word prediction task임.
•
SFT의 한계점
◦
학습 feedback의 제한
▪
MLE 학습 특성 상 negative feedback 주기 어려움 (어떤 단어가 나오지 않도록 하는)
▪
얼마나 좋은지, 나쁜지 signal 주기 어려움
▪
Ground truth만을 정답으로 간주
◦
Hallucination이 더 강화될 수 있다는 주장 있음
▪
2021년까지의 data로만 학습된 ChatGPT에게 한국 대통령을 윤석열이라고 알려주면, 모델이 사전 지식을 수정하는 것이 아니라, 거짓말을 해도 되는구나 라고 일반화할 가능성 있음.
◦
SFT data 수집이 어려움
▪
전문 지식을 가진 사람에게 맡겨도 어렵다.
RLHF (Reinforcement learning from human feedback)
•
intuition: 복잡하고 추상적인 task에 대해 ground truth 답변을 직접 작성하는 것보다 생성된 답변을 평가하는 것이 훨씬 쉽다!
•
해당 instruction에 대한 답변이 얼마나 좋은지 알려주는 함수가 있다면…
◦
모델이 생성한 답변을 평가하는 reward model의 점수 이용해 학습
◦
답변 생성 과정이 미분 불가능하므로 RL 이용
•
일반적으로 RLHF를 해야 사람의 선호도가 훨씬 높아짐.
3. LLM as a Product
어떻게 제품화 할 수 있고, 어떤 어려움이 있는지
예시
•
Nvidia ACE: 비디오 + 음성 + 대화 결합한 game NPC
•
AutoGPT: 스스로 업무 계획을 짜고 수행하는 agent
•
그런데 성공한 제품은 많이 없다.
데모와 실제품의 차이
•
디아블로4도 game play 나오고 나서 4년 걸려서 출시됨.
•
Demo
◦
잘된 사례만 cherry picking 하면 됨.
◦
최적의 환경에서 실험
◦
비용 안 중요
•
실제품
◦
치명적인 결함이 없어야 함
◦
장기간 만족시켜야 함
◦
일반 사용자 대상
◦
비용 대비 가치 창출 고려
LLM은 엄청난 능력이 있는데 치명적 단점도 있음.
1.
Reliability
a.
문제:
•
LLM이 우리가 원하는 일을 해낼 수 있는지 가늠이 어려움 → 직접 해봐야 함.
b.
해결책
•
더 좋은 LLM 만들거나 더 좋은게 나오길 기다림
•
사용하는 LLM에 대한 경험 많이 쌓기
•
Iteration 빨리 돌릴 수 있는 환경 구축
•
Community 집단 지성 활용
2.
Controllability
a.
문제:
•
Hallucination (모르는 것이나 틀린 것을 얘기해주지 않음)
•
원하지 않는 행동을 하지 않도록 제어하기 어려움
◦
ex) 절대로 코끼리 생각하지 마!
b.
해결책:
•
틀려도 치명적이지 않은 use case 선택 (절대 실수하지 않게 만드는 것은 쉽지 않음)
•
Retrieval-augmented generation 활용
•
Continuous learning 통해 보완 (오답 노트 제공)
•
Module화를 통해 LLM의 약점을 보완?
3.
Test and Evaluation
a.
문제:
•
LLM 특성상 입출력 형태가 다양 → 잘 작동하는지 파악 어려움
•
정량적인 평가가 어려움
b.
해결책:
•
test set을 최대한 다양하게 잘 만든다.
•
빠르고 안전하게 소수의 사용자에게 배포 → A/B test 해보기
4.
Cost
a.
문제:
•
LLM은 학습 뿐만 아니라 inference에서도 많은 computing power 필요
•
생각보다 비용이 큼
b.
해결책:
•
적절한 크기의 모델 사용
•
성능은 큰 모델이 좋지만, 경량화, 양자화 고려
•
데이터 기반으로 성능 개선 (finetuning)
•
Prompt tuning (짧은 prompt 일수록 저렴)
5.
Serving
a.
문제:
•
Microsoft와 OpenAI도 아직 GPT-4를 안정적으로 serving 못 하고 있음.
•
GPU 부족 문제가 심함
b.
해결책:
•
적절한 크기의 모델을 사용
•
사용자 경험을 해치지 않으면서도 Traffic이 몰리지 않도록 제품적인 방법을 고민
•
Cloud와 긴밀하게 협업!
6.
Experience
a.
문제:
•
새로운 paradigm 이므로 LLM으로 실제 제품을 만들어본 경험이 있는 회사가 많지 않음.
•
사례가 없음.
b.
해결책:
•
직접 해보면서 부딪혀봐야!
Summary
•
LLM은 엄청난 가능성 지님
•
제품을 잘 만드는 것은 원래 어려움
•
빠르게 시도해보는 것이 늘 해답!
4. Scatter Lab이 꿈꾸는 미래
앞으로 몇 년 간, 세상 사람들 모두가 자신만의 AI를 갖게 될 것이다.
ex) 걸그룹 멤버, 사주 봐주는 AI…
스캐터랩은 기업과 크리에이터들이 다양한 social agent를 만들 수 있는 platform 만들고자 함.
게임, 연예인, 소셜커머스, …
Social interaction 능력이 중요
ChatGPT는 해결책 위주로 줌
하지만 이루다는 공감 능력이 뛰어남
Social agent 개발
나중에 무신사 등 쇼핑몰 대상으로 추천 + 챗봇 쪽으로도 개발하려고 하고 있음 (B2B)