일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 언어모델
- gitpull
- 99클럽
- 티스토리챌린지
- adsp공부법
- 항해99
- please tell me who you are
- gitcommands
- 완전탐색
- 프로그래머스 피로도
- 데이터분석자격증
- gitpush
- BFS
- ADsP
- author identity unknown
- ai 개발자
- AI 역사
- deepseek
- 이진탐색
- 너비우선탐색
- Til
- 오블완
- 개발자취업
- 알고리즘
- 비전공자ADSP
- 딥시크
- 코딩테스트준비
- unable to auto-detect email address
- 생성형 AI
- 생성형 ai의 역사
- Today
- Total
Thinking Box
Introducing 딥시크(DeepSeek) LLM 본문
오늘 글에서는 뜨거운 감자인 딥시크에 대해서 알아보자.
가장 최신 모델 R1은 오픈소스로 웹, 앱, API 방식을 통해 사용할 수 있으며 OpenAI 의 o1 모델과 견줄 수 있는 대표적인 모델이다.
📌 딥시크 LLM 소개
딥시크 LLM은 670억 개의 파라미터로 구성된 고급 언어모델이다.
영어와 중국어 두 가지 언어로 이루어진 무려 2조 개의 토큰 데이터셋을 활용해 훈련되었다.
LLM Base/Chat 모델 두 종류가 있으며 모델 크기는 각각 7B/67B 로 나뉜다.
- DeepSeek LLM Base: Pre-trained 된 기본 모델로, 특정 작업에 맞춰 추가적인 미세조정(fine-tuning)이 필요함.
- DeepSeek LLM Chat: 대화형으로 미세조정이 되어 있는 모델로, 챗봇이나 대화형 어플리케이션에 사용하기에 적합함.
현존하는 LLM 모델들과 비교했을 때 뛰어난 성능을 자랑한다.
67B Base 모델이 Llama2 70B Base 모델을 훨씬 능가하는 성능을 이성, 코딩, 수학, 중국어독해 등에서 보였다고 발표되었다.
아무래도 압도적인 양의 중국어 데이터셋을 이용해 학습한 모델인 만큼, 딥시크는 중국어의 성능에 있어서 강력한 자신감을 드러내고 있다.
딥시크는 7B/67B Base/Chat 모델 모두 퍼블릭으로 풀어둔 상태이며 라이센스에 따라 모델의 상업적 이용도 가능하다.
라이센스 확인은 링크 참고하기 👉 (https://github.com/deepseek-ai/DeepSeek-LLM?tab=readme-ov-file#8-license)
🔗 모델 바로가기 링크
Model | Download |
DeepSeek LLM 7B Base | https://huggingface.co/deepseek-ai/deepseek-llm-7b-base |
DeepSeek LLM 7B Chat | https://huggingface.co/deepseek-ai/deepseek-llm-7b-chat |
DeepSeek LLM 67B Base | https://huggingface.co/deepseek-ai/deepseek-llm-67b-base |
DeepSeek LLM 67B Chat | https://huggingface.co/deepseek-ai/deepseek-llm-67b-chat |
네 개 모델 중에서 가장 높은 다운로드 수는 지난 달에만 10만을 넘긴 7B Chat 모델이다.
📌 Chat 모델의 성능 평가
'Never-Seen-Before Exam' 방식을 이용해서 모델 성능을 평가했다.
새로운 문제 셋을 디자인함으로써 기존 평가 데이터와의 중복을 방지하고 특정 테스트에 과적합되는 문제를 해결했다.
헝가리 수학 시험, 구글 평가데이터, LeetCode 코딩 문제에서 모두 우수한 성과를 기록했고, 다중선택형(multiple choice) 문제를 추가하는 경우 특정 벤치마크(MMLU, CMMLU, C-Eval)에서의 성능이 크게 향상된 것을 확인했다. 하지만 일반적인 지식 평가에서는 성능 향상에 영향을 주지 않았기 때문에 overfitting 방지를 위해 파인튜닝 단계에서는 multiple choice 데이터는 포함하지 않았다고 한다.
딥시크는 조만간 세부적인 질문 및 테스트 케이스를 공개하겠다고 공지했다.
📌 딥시크의 훈련 데이터
| 데이터 필터링
딥시크 LLM은 단순한 웹 크롤링이 아니라, 데이터 품질을 철저히 검토하는 과정을 거친다고 한다.
이 과정을 위해서 휴리스틱 규칙 및 모델 기반 필터링을 적용하여 다음 사항들을 중점적으로 관리한다.
- 저품질 웹 데이터 제거
- 낮은 자원에서 얻은 희귀한 지식 보존
- 유해하거나 독성이 강한 콘텐츠 삭제
특히, 개인 정보 보호 및 저작권 준수를 최우선으로 하여, 개인 정보가 포함된 콘텐츠나 저작권 문제가 있는 데이터는 철저히 걸러냈다(고 하는데 잘 믿을 수는 없다..ㅎ)
| 중복 제거
딥시크는 또한 중복 제거를 통해서 데이터의 독창성과 무결성을 유지하고자 심혈을 기울였다.
MinhashLSH 기법을 사용해서 문서 및 문자열 수준까지도 중복 제거를 철저하게 진행했다.
이렇게 처리하게 되면 중복 데이터로 인한 overfitting 을 방지해서 모델 학습의 신뢰도를 높일 수 있기 때문이다.
📌 Pre-Training 과정
딥시크 LLM은 기본적으로 LLaMA 아키텍처를 기반으로 한 autoregressive transformer decoder 모델을 사용했고, 7B/67B 모델에 각각 다른 최적화 기법을 적용해서 성능을 끌어올렸다.
| 모델별 비교
항목 | 7B | 67B |
아키텍처 | Multi-Head Attention (MHA) | Grouped-Query Attention (GQA) |
토큰 수 | 2조 개 | 2조 개 |
시퀀스 길이 | 4096 | 4096 |
최적화 알고리즘 | AdamW | AdamW |
배치 크기 | 2304 | 4608 |
학습률 | 4.2e-4 | 3.2e-4 |
학습률 스케줄링 | 2000 스텝 웜업 후 감소 | 2000 스텝 웜업 후 감소 |
1.6조 토큰 학습 시 학습률 | 최대치의 31.6% | 최대치의 31.6% |
1.8조 토큰 학습 시 학습률 | 최대치의 10% | 최대치의 10% |
| 정리
딥시크 LLM의 사전 훈련 과정은 7B 모델과 67B 모델 모두 대규모 데이터를 학습하는 데 초점을 맞추었지만, 모델 크기에 따라 최적화 방식이 달랐다. 7B 모델은 비교적 가벼운 구조를 가지고 있어 일반적인 AI 애플리케이션이나 연구용으로 적합하게 설계되었다. 반면, 67B 모델은 더 방대한 매개변수를 활용하며, 대량의 데이터를 더 효율적으로 처리할 수 있도록 설계되었다. 특히, 67B 모델은 보다 발전된 Grouped-Query Attention(GQA) 구조를 적용해 연산량을 줄이면서도 성능을 최적화했다는 특징이 있다.
그리고 모델의 규모가 커질수록 학습 안정성을 유지하는 것이 중요하기 때문에, 67B 모델은 학습률 조정과 배치 크기 설정을 더욱 신중하게 설계했다. 학습 초기에는 모델이 급격히 변하지 않도록 학습률을 천천히 증가시키는 warm-up 단계를 거쳤고, 이후에는 토큰 학습량에 따라 학습률을 점진적으로 낮추는 다단계 학습률 스케줄링을 적용해 overfitting과 학습 불안정을 방지했다.
이러한 차이점들은 7B 모델이 빠른 실험과 연구용으로 적합한 반면, 67B 모델은 보다 정확하고 정교한 AI 모델을 구축하기 위한 고성능 모델임을 보여주고 있다.
딥시크 LLM 모델은 조만간 프로젝트에서 직접 사용해보고자 한다.
얼마나 재밌을지 기대기대...😊 ㅎㅎㅎ