https://www.youtube.com/live/ejZ9XAm7jck
발표자 : 이승유님
LLM API 를 어디서 쓰시는지
- Deep Infra
- Together AI
LLM에서 Validation 전략
- 다양한 도메인에서, 다양한 테스크를 직접 선택하여 validation을 가져감
- Lora 기준 1000개 정도. 충분히 수많은 도메인, 어려운 테스크 담을 수 있어서
- Val Loss 정보 가지고 감을 잡을 수 있다.
- 30만개를 학습시킨다고 하면, 만 개 정도 쓰면 될 것 같은데, 저라면 하이퀄리티로 천개 만들어 쓸것 같아요.
- 평가 내용
더보기
- Comprehensive Korean Benchmarks
- KMMLU, HAERAE-Bench
- Common Reasoning
- Hellaswag, Winogrande, PIQA, ARC, CommonsenseQA
- World Knowledge and Facutuality
- Hellaswag, Winogrande, PIQA, ARC, CommonsenseQA
- Mathmatics
- GSM8k, MATH
- Coding Capabilities
- HumanEval, MBPP
- Instruction Following and Chatting Abilities
- MT-Bench
- Harmlessness
- TruthfulQA, BOLD
- TruthfulQA, BOLD
LLM 생태계는?
- sLLM 위주의 모델의 한계점을 넘어 거대한 Foundation 모델들이 공개되어 나오고 있음.
- 중형 및 대형 사이즈 크기의 모델들이 SOTA급 성능을 자랑하며, 다국어 및 다양한 모델들로 개발
- 따라서 선택지가 많아졌고, GPU 자원을 적절하게 활용하는 기술 확보와 목적에 맞게 튜닝하는 기술이 중요해짐.
- 특히 sLLM의 방향은 on-device로 적용되는데 초점을 맞출 것으로 예상
- 파운데이션 모델을 잘 활용하여, 특정 목적에 맞추어 Fine-Tuning 혹은, 프롬포트 엔지니어링, 데이터 생성기로 활용하는 기술력 확보가 주요할 것으로 사료됨.
- 중형급 모델을 잘 다루어 효율/효과성을 다 잡을 수 있게 진행하는 방법론도 주요할 것으로 사료 됨.
- 27B Gemma, 70B Llama 3.1 등 사용해서 Knowledge distilation 으로 8B 짜리를 중형급 모델 만큼 성능을 내게 해서 쓴다던가.
LLM 한 줄 평
- Llama 3.1 8B, 70B 405B의 등장
- 거대한 Pretraining 이 성능을 이끌어낸다. (15조 개의 다국어 토큰, 128,256 vocab size)
- Nvidia의 Nemotron 4-340의 등장
- RoPE를 활용한 훈련 ( 시퀀스를 좀 더 길게 가져갈 수 있음, 근데 4k의 sequence length ... )
- Mistral AI도 12B의 Nemo와 128B의 mistral Large 모델 공개
- mistral과 nvidia의 공동 개발 작품, Fp8 추론 방식 활용시 효과적, 속도가 진짜 빠름(131,072 / 32,768 의 vocab 사이즈)
- Gemma2 2.6B & 9B & 27B(4~6장의 GPU)
- GQA와 LocalGlobal Attention, 2조에서 13조 개의 토큰을 사용한 훈련 ( 조 단위 토큰, Exponential 하게 성능 올라갈 수 밖에)
Service 한 줄 평
- Open AI - GPT4 omni / mini
- LLM을 넘어 LMM으로!
- Google의 Gemini
- 바닥부터 Multi-modal -> On Device 모델로 간다.
Finetuning에 대한 평가
1. Sota LLM을 활용하여 평가
- GPT4, 하이퍼클로바 X, Gemini 등을 활용하여 Insturction에 대한 답변의 적절성을 평가
- 가장 간편한 평가 방법 중 하나로 논문, 연구에서 진행되고 있는 방식
- 다만, 이 방식은 시행마다 같은 Instruction과 같은 답변이지만, 점수가 매번 다르게 측정된다는 문제점이 있음. ( N을 키우자 )
- 시행 횟수를 충분히 키우고, 지표의 변동성을 고려, 신뢰구간을 설정, 실제 값이 포함될 신뢰 가능 범위를 구해서 추정
API로 안하고, 문서 업로드 해서 평균 알려달라 이렇게 써도 괜찮더라
2. Human Evaluation
- 인간의 선호도 기반으로 평가를 진행하는 방식
- 대표적으로 Chatbot Arena와 같은 평가 방식을 활용 가능
- Pairwise Comparison: 두 개의 익명의 비교군 모델에 질문을 한 후 둘 중 선호되는 답변을 채택
- Elo 레이팅: 경쟁게임에서 가장 많이 사용되는 Elo 레이팅 시스템 활용하여, Pairwise Comparison 결과 기반으로 모델의 점수를 부여하여 순위화 시키는 방식
- 다만, 모델의 템플릿이나 답변 형식에 따라 익명성이 오염될 수 있으며, 시간과 비용이 상대적으로 많이 소요됨.
- 대표적인 핵심 질문을 샘플링 한 후, 익명으로 Human evaluator가 점수를 매기는 방식으로 진행할 수 있음.
- 위와 같은 방식도, 특정 도메인의 경우, 전문가 수준의 평가자 필요, 노동과 시간이 필요함.
3. Multiple-choice
- 객관식 평가로 모델의 답변을 accuracy와 f1-sore로 비교하는 방식
- Few-shot으로 prompt에 예제 문제와 예제 답변 형식을 준 후, 모델의 답변을 통해서 비교 (위에서 언급한 평가 항목)
- GT 기준으로 비교를 할 수 있기에 정량화된 평가가 가능
4. Confidence Evaluation
- LLM 모델을 의사결정을 위한 도구로 활용하였을 때, 대다수의 모델은 over confident 하게 답변
- 스탠포드에서 이를 Confidently hallucinate 라고 정의함 (Band et al. 2024)
- 모델의 Output을 확률 기반으로 답변할 수 있게 align 한 이후, 이를 기반으로 의사결정 수행 (Bayesian Optimal Decision)
- 이러한 기법을 Linguistic Calibration 이라고 한다.
- 환자의 병명을 알려주세요.
=> 몇 % 확률로 감기이고, 몇 %의 확률로 천식이고, 몇 %의 확률로 폐 결정 입니다.
Finetuning Template 선택
- 원 모델의 템플릿을 최대한 따르려고 합니다.
- 멀티 턴이면 chat ML Template을 많이 씁니다. (알파카 템플릿은 답변이 애매하고, 장황해질 수 있어서)
- 질문 4개 답변 4개 받고 뭐 그렇게 한다고 하면, EOS 토큰을 싹다 지워줘야죠. 있으면 훈련이 잘 안돼서
오픈소스 모델을 훈련할 때, 적은 데이터 셋으로 특정 도메인에서 효과를 볼 수 있을까요?
- 50개에서 100개를 가지고만 효과를 보기는 어렵구요. 차라리 General 한 데이터에 포함시켜서, General한 데이터 900개를 만들어서 1000개 가량 만든 다음에 LoRa말고 Full Finetuning을 쓰면 효과를 볼 수 있을 것 같다.
- LoRa로 1000개를 쓰면 성능 절대 안나옵니다. Adapter라는게 의미없는 가중치를 넣어서 학습시키는것이기 때문에 데이터를 몇 만개를 봐야 가중치가 학습됩니다.
- 반면에, Full Finetuning은 이미 사전학습이 된 가중치에 대해 데이터를 조금 밀어넣어준 것이기 때문에 1000개의 데이터로도 어느정도 미세 조정이 됩니다.
- 13B 모델 정도가 A100 3 ~ 4개로 8시간 정도 훈련시켰을 때, Full finetuning이 가능합니다.
- lr을 무척 적게 가져가다가, 유의하지 않다 싶을 때 좀 바꿔주고, 옵션도 조금씩 변형해가면서 밀어주는게 중요합니다.
매우 긴 시퀀스 length에 대한 Eval 은 어떻게 진행되나요
- 논문 추천 https://arxiv.org/abs/2307.03172
- 시퀀스에 대한 개념을 잡기에 추천 드립니다.
* GPU N 대 사용하려면.. 런팟
https://jiogenes.github.io/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C/2023/11/08/runpod-1.html
'LLM' 카테고리의 다른 글
테디노트 - Upstage Document Parse (1) | 2024.11.24 |
---|---|
DoLa: Decoding by Contrating Layers Improves Factuality in Large Language Models (2) | 2024.09.04 |
테디노트 - 강수진 박사님 프롬포트 노하우 (29) | 2024.08.10 |
LLM 얇고 가볍게 흝기 (0) | 2024.08.04 |