한국어 상업 가능 모델 출시 인상적
한국어가 저자원이라 고품질 데이터 찾기가 어려움
한국어 필터링에 대한 설명이 나이브한 느낌이 있음. Llama 3 8B 학습해서 품질 평가 맞기는게 올바른 방식 같지는 않음.
한국어와 영어에서 뛰어난 성능을 보이며 비슷한 크기의 최신 모델보다 계산 비용이 훨씬 낮은 이중 언어 모델 시리즈인 카나나(Kanana)를 소개합니다.
효율적이면서도 경쟁력 있는 모델을 만들기 위해 사전 학습 과정에서 사용된 기술들을 자세히 설명합니다.
여기에는 데이터 필터링, 단계별 사전 학습, 심층 업스케일링, pruning and distillation이 포함됩니다.
카나나 모델의 post-training 과정에서 사용자들과의 원활한 상호작용 능력을 향상시키기 위해 활용된 방법론들을 설명하며, supervised fine-tuning과 preference optimization을 사용합니다.
임베딩, RAG, function calling과 같이 특정 시나리오에 언어 모델을 적용하는 데 사용된 접근 방식에 대해 자세히 설명합니다.
카나나 모델 시리즈는 2.1B에서 32.5B 매개변수까지 다양하며, 한국어 모델 연구를 장려하기 위해 2.1B 모델(기본, 지시, 임베딩)이 공개적으로 출시되었습니다.

LLM의 발전은 학습 데이터와 모델 파라미터의 증가에 의해 주도되었습니다.
그러나 수백만 달러에 달하는 상당한 계산 비용을 초래하여, 커뮤니티가 LLM을 처음부터 개발하는 데 어려움을 안겨줍니다.
계산 비용 절감은 학계와 산업계 모두에서 LLM 개발을 보편화하기 위한 중요한 문제로 부상했습니다.
최근 연구들은 모델 아키텍처 및 스케일링, 데이터,학습 전략을 통해 계산 문제에 대한 다양한 해결책을 제시했습니다.
Kanana 모델 제품군은 SOTA 오픈 LLM과 비교하여 성능을 유지하면서도 적은 계산 비용으로 개발되었습니다.
모델 제품군에는 {2.1B, 9.8B, 32.5B} 크기의 사전 학습된 기본 모델과 후처리 학습된 명령어 모델이 포함됩니다.
그림 1에서 Kanana 모델이 학습 시간의 계산 비용 대비 성능에서 새로운 Pareto frontier(계산 비용이 낮고 모델 성능이 좋음)를 구축함을 보여줍니다.
사전 학습 단계는 LLM 학습 비용의 대부분을 차지하므로 성능을 유지하면서 계산 요구 사항을 줄이는 데 중점을 두었습니다.
사전 학습 단계의 비용은 주로 대규모 데이터셋과 모델 크기에서 발생하기 때문, 데이터 효율성과 학습 효율성을 모두 개선하여 비용을 절감합니다.
데이터 효율성을 개선하기 위, 3조 토큰의 학습 데이터셋을 신중하게 선별하여 SOTA 사전 학습 모델보다 적은 데이터셋을 사용했음에도 불구하고 경쟁력 있는 성능을 달성할 수 있었습니다.
학습 효율성을 위해서는 단계별 사전 학습, depth up-scaling과 같은 비용 효율적인 기술을 사용하여 모델 크기와 관련된 계산 비용을 줄였습니다.
얻어진 모델들을 기반으로 pruning and distillation 기술을 확장하여 소수의 사전 학습 데이터 하위 집합만을 사용하여 더 작은 모델들을 학습시켰습니다.
Kanana 기본 모델의 강력한 성능을 활용하여 instruction
and domain-specific에 따라 적응 모델을 추가로 개발했습니다.
instruction models을 개발하기 위해 지도 미세 조정 및 선호도 최적화를 포함하는 후처리 학습 과정을 적용했습니다.
instruction models은 영어-한국어 채팅, 일반 지식 추론, 명령어 따르기, 코드 생성, 수학 문제 해결 등 다양한 작업에서 SOTA 모델과 경쟁력 있는 성능을 달성합니다.
instruction models을 활용하여 임베딩 모델, 검색 증강 생성 모델, 함수 호출 모델을 개발했습니다.
pre-training이 컴퓨팅 비용의 대부분을 차지하기 때문에 비용을 줄이는 데 집중했으며 그 결과는 2.1절에 제시되어 있습니다.
LLM 사전 학습의 효율성을 높이기 위해 데이터 효율성과 학습 효율성이라는 두 가지 핵심 전략을 사용합니다.
2.2절에서는 고정된 토큰 예산 내에서 데이터 효율성을 극대화하기 위한 데이터 큐레이션 방법을 논의합니다.
2.3절에서는 모델 확장에 따른 컴퓨팅 오버헤드를 최소화하기 위해 비용 효율적인 학습 기술을 채택합니다
카나나 모델은 3조 개의 토큰을 사용해 학습하며 주로 영어와 한국어 능력에 중점을 둡니다.
학습 데이터는 다양한 출처에서 수집되며, 다음과 같이 분류됩니다.
모든 데이터는 공개적으로 사용 가능한 출처에서 가져오며 카카오의 제품이나 서비스에서 나온 데이터는 포함되지 않습니다.
데이터 수집 및 품질 개선
arXiv, 위키피디아와 같은 고품질 공개 데이터셋을 사용했지만 데이터 추출 과정의 문제로 인해 누락되거나 문단 순서가 맞지 않는 등의 품질 문제가 발견되었습니다.
이를 해결하기 위해 각 출처별로 추출 과정을 개선하여 더 가치 있고 일관성 있는 문서를 다시 추출했습니다.
코드 데이터셋의 경우 공개 데이터셋을 활용했으며 허용적인 라이선스를 가진 코드만 포함하고 비허용적이거나 라이선스가 없는 코드는 제외했습니다.
pre-training의 마지막 단계에 instruction data를 추가하여 성능을 향상시켰습니다.
웹 데이터 필터링
웹은 가치 있고 다양한 문서의 원천이므로 필터링 방법을 적용하여 고품질 데이터를 추출했습니다.
cascaded filtering: 중복 제거, 휴리스틱 필터링, 개인 식별 정보 익명화 과정을 거칩니다.
언어별 모델 기반 필터링: 계단식 필터링 후, 영어와 한국어에 대해 각각 언어별 모델 기반 필터링을 적용합니다.
한국어 웹 코퍼스 품질 평가 및 주요 통찰
'edu 필터'와 한국어 웹 코퍼스의 품질을 평가하기 위해 Llama 3 8B 모델을 250억 개의 토큰으로 지속적으로 사전 학습하는 실험을 수행했습니다.
요약 및 주요 통찰
이중 언어 코퍼스를 구축할 때, 특히 한국어와 같이 데이터가 부족한 언어의 경우 계산 효율성을 높이기 위해 두 가지 중요한 통찰을 고려해야 합니다.
LLM 사전 학습 시 계산 효율성을 높이기 위해 세 가지 핵심 기술을 사용합니다: 단계별 초기 사전 학습, depth up-scaling, pruning and distillation입니다.
2.3.1절에서는 단계별 사전 학습 방식을 사용하여 26.8B 및 8B 모델을 먼저 학습시키는데, 이는 다양한 규모의 LLM을 얻기 위한 기반이 됩니다. 2.3.2절에서는 26.8B 및 8B 모델에서 각각 깊이 확장을 통해 Kanana Flag 32.5B 및 Kanana Essence 9.8B 모델을 얻는 과정을 설명합니다. 2.3.3절에서는 8B 모델로부터 가지치기 및 증류를 통해 Kanana Nano 2.1B 모델을 도출하여, 처음부터 모델을 학습시키는 것보다 훈련 비용을 절감하면서도 우수한 성능을 달성합니다.
예산 내에서 성능을 극대화하기 위해 2단계 단계별 사전 학습 전략을 채택했습니다.
단계별 사전 학습은 사전 학습 과정을 여러 단계로 나누는데, 초기 단계에서는 대량의 보통 품질 데이터로 LLM을 학습시키고 후속 단계에서는 고품질 데이터의 비율을 점차 늘립니다.
다양한 2.7조 토큰 데이터를 사용하여 8B 모델을 처음부터 학습하기 시작했습니다.
2단계에서는 3,000억 토큰 데이터를 사용하여 모델을 추가로 학습시켰습니다.
사용 가능한 고품질 분류기를 사용하여 각 범주에 대한 고품질 데이터를 따로 준비했습니다.
데이터 혼합을 찾기 위해 경량 어닐링 실험을 수행하여 후보 데이터셋을 선정했습니다.
최적의 데이터 혼합은 어블레이션 연구를 통해 선택되었습니다.
2단계의 최종 모델은 KMMLU에서 2.79점 평균 성능에서 10.63점 증가하는 결과를 보여주었으며 단계별 사전 학습의 효과와 효율성을 입증합니다.
8B 모델 학습에 사용했던 동일한 데이터 혼합을 26.8B 모델에도 적용했습니다.
놀라운 성능과 안정적인 학습이 지속적으로 나타났으며 이는 우리 방식의 확장성을 보여줍니다.
제한된 리소스 내에서 모델 성능을 더욱 향상시키기 위해 추가 레이어를 쌓아 모델 용량을 늘리는 Depth Up-Scaling(DUS) 방식을 채택했습니다.
DUS를 적용하여 Kanana 8B를 Kanana Essence 9.8B로, Kanana 26.8B를 Kanana Flag 32.5B로 확장했습니다.
확장 과정 후에 각 모델 변형은 사전 학습에 사용되었던 것과 동일한 데이터 혼합으로 추가 학습되었습니다.
1단계에 1,000억 토큰, 2단계에 1,000억 토큰이 할당되었습니다.
확장 전략의 결과는 추가 레이어가 성능 향상에 지속적으로 기여한다는 것을 표 4에서 요약하여 보여줍니다.
Kanana Essence 9.8B는 확장되지 않은 버전인 Kanana 8B를 지속적으로 능가하며 평균 점수가 57.52에서 60.12로 상승했습니다.
이러한 개선은 HumanEval을 제외한 MMLU, KMMLU, HAE-RAE, MBPP, GSM8K에서 분명하게 나타납니다.
Kanana Flag 32.5B는 평균 점수 69.15를 달성하여 확장되지 않은 Kanana 26.8B 모델을 크게 뛰어넘습니다.
다양한 벤치마크 점수를 개선하는 데 있어 깊이 확장의 효과를 강조합니다.
9.8B 및 32.5B LLM을 처음부터 학습시키는 것과 비교하여 총 계산 비용을 11.06% 절감합니다.
깊이 확장을 통해 모델 용량을 늘리는 이 전략은 전체 학습 절차에서 총 컴퓨팅 리소스의 약 6.67%만을 차지합니다.
사전 학습과 결합하여 깊이 확장은 새로운 모델을 처음부터 구축하는 데 드는 막대한 계산 요구 없이 모델 성능을 크게 향상시키는 전략적인 접근 방식을 제공합니다.
모델 크기를 효율적으로 확장하는 것과 반대로 knowledge distillation는 모델 크기를 효율적으로 축소하는 효과적인 방법입니다.
Minitron의 pruning, distillation를 개선함으로써 더 작은 모델을 효율적으로 생성합니다.
처음부터 훈련하는 것과 비교하여 10분의 1 데이터 크기로 더 나은 성능을 가진 모델을 생산할 수 있으며 이는 표 5에 나와 있습니다.
두 번 이상 반복적으로 확장하는 것이 여전히 효과적이며 모델 크기의 50%만으로도 KMMLU 점수의 87-99%를 보존함을 추가로 보여주며 이는 표 6에 나와 있습니다.
오픈소스 모델과 경쟁적인 성능을 달성하며 이는 표 14에 제시되어 있습니다.
가지치기 및 증류 프로세스를 개선하기 위해 Minitron의 width importance scoring를 단순성과 효율성을 유지하면서 정제했습니다.
점수화 과정은 작은 캘리브레이션 데이터셋의 활성화를 사용하여 임베딩 채널, 피드포워드 뉴런, 어텐션 헤드의 중요도를 측정하는 것으로 시작합니다.
배치 및 시퀀스 축을 따라 ablations를 수행한 반면 계층별 점수 합산이 성능에 결정적인 역할을 함을 보여줍니다.
GQA의 경우 쿼리-키-값 정렬을 보장함으로써 성능을 향상시킵니다.
각 그룹 내에서 동일한 수의 쿼리 헤드를 제거하며 이는 그림 9에 나와 있습니다.
Kanana가 SwiGLU를 사용하기 때문에 게이트 및 업 상태의 평균을 사용하거나 중간 상태를 사용하는 것을 선택하며 원본 공식은 사전 활성화 값에 의존합니다.
중간 모델 구조에 초점을 맞춰 가지치기 전략을 더욱 강화합니다. Minitron의 결과와 일치하게 저희는 과도한 단일 단계 압축이 상당한 성능 저하로 이어진다는 것을 확인했습니다.
어텐션 헤드를 유지하는 것이 일반적으로 유익하지만 더 작은 모델의 경우 더 큰 규모에서 더 일찍 가지치기를 수행하는 것이 효과적임을 보여주며 이는 표 16에 제시되어 있습니다.
입력 및 출력 임베딩을 평균화하여 연결할 수 있으며 눈에 띄는 성능 저하를 유발하지 않음을 발견했으며 4.5B에서 2.1B로 가지치기를 할 때 이를 적용합니다.
증류 데이터의 구성이 성능에 직접적인 영향을 미치는 반면 가지치기 데이터는 덜 중요하다는 것을 확인했습니다.
2B보다 큰 모델의 경우 섹션 2.3.1에 설명된 3천억 개의 고품질 2단계 토큰을 사용합니다.
그러나 더 작은 모델의 경우 일반 도메인 영어 데이터의 비율을 늘리면 영어 성능과 다른 벤치마크 점수가 모두 증가하며 이는 표 18에 나와 있습니다.
사전 훈련 프로세스는 단계별 사전 훈련, 깊이 확장, 그리고 반복적인 가지치기 및 증류를 포함하며 고성능 언어 모델 개발을 위한 계산 효율적인 전략을 제공합니다.
이 결합된 접근 방식은 다양한 벤치마크에서 성능을 향상시킬 뿐만 아니라 계산 효율성도 보장하여 2.1B에서 32.5B에 이르는 모델 제품군을 생산하는 저희 전략의 효과를 입증합니다.