NLP/논문

Efficient Continual Pre-training for Building Domain Specific Large Language Models(일단 해석만)

miimu 2025. 5. 26. 16:25

https://aclanthology.org/2024.findings-acl.606/

ACL 2024 Findings

 

Abstract

LLM은 open-domain에서 놀라운 능력을 보여주었으며, 특정 도메인을 위한 LLM은 domain-specific 태스크를 다루기 위해 on domain corpus로 학습한다.

 

본 논문에서는 기존의 open-domain LLM에서 domain-specific LLM이 되기 위한 continual pre-training 전략에 대해 알아본다.

경제 도메인에서 domain-adaptive continual pre-training으로 만든 FinPythia-6.9B에 대해 소개한다.

  • FinPythia는 경제 태스크에서 기존 모델보다 일관적으로 향상된 성능을 보여준다.

 

또한, 간단하지만 효과적인 data selection 전략에 대해서도 알아본다.

  • data selection 전략은 10%의 corpus 크기와 자원으로도 기존의 continual pre-training의 성능을 능가한다.

 

domain-specific LLM을 cost-effective하게 학습할 수 있는 대안을 제안한다.

 

Introduction

본 논문에서는 다음에 대해 탐구한다.

  1. domain-adaptive continual pre-training이 domain-specific LLM에 도움이 되는가?
  2. data selection전략으로 효과적인 domain-adpative continual pre-training이 가능한가?
  3. domain-adaptive continual pre-training이 LLM의 open-domain 성능에 위해를 끼치는가?

continaul pre-train한 모델인 FinPythia를 바탕으로, 경제 도메인에서 이러한 문항들에 답변해본다.

 


첫 번째 질문에 대해 답하기 위해 Pythia가 학습한 데이터 사이즈의 8% 크기에 해당하는 on domain 데이터로 continual pre-train한 후 경제 도메인 벤치마크에서의 성능을 분석한다.

  • qualitative 분석으로 FinPythia의 최신 경제 도메인 지식 획득에 대한 근거

두 번째 질문에 대해 답하기 위해, 두 개의 간단한 data selection 테크닉을 제안함

  • task-aware Efficient Task-Similar Domain-Adaptive Continual Pre-training(ETS-DACP)
  • Efficient Task-Agnostic Domain-Adaptive Continual Pretraining(ETA-DACP)

이러한 메서드들은 선정한 domain data의 10% 또는 Pythia 학습 코퍼스의 0.8%만으로 학습하여 vanilla domain-adpative continual pre-training보다 우수한 성능을 보였다.

 

data selection으로 3가지 metric을 사용한다.

  1. similarity
  2. perplexity
  3. token type entropy

similarity는 seed data로 task data가 필요한 반면, 나머지 metric은 task-agnostic metric이다.


세 번째 질문에 대해 답하기 위해, 4개의 open-domain standard task를 벤치마크로 사용하고, continually pre-trained LLM이 도메인에 맞도록 적응해도 general한 성능을 잘 유지하는지에 대해 관찰한다.


Main Contributions

  • 경제 분야 데이터셋에서 240억개 토큰으로 구성된 대규모 경제 코퍼스 구축
  • 실험으로, 비용이 많이 드는 pre-train 대신 continual pre-train을 통해 domain-specific LLM을 구축할 가능성을 보여주며, sLM의 연구 결과를 확장함
  • vanila continual pre-train보다 효율적인 approach로 두 가지의 Efficient Domain-adpative Continual Pre-training 방안을 제안
    • 새로운 approach는 sLM의 baselines를 능가하면서 domain-adaptive pre-train cost의 일부로 더 나은 성능을 달성가능한 data selection strategy를 배포

 

Methodology

1. Financial Corpus Curation

데이터 소스 평가에 있어서, 3가지를 고려한다.

  1. public availability
  2. licensing
  3. scale

financial news common crawl과 SEC filings을 사용한다.

  • Financial News CommonCrawl은 public CommonCrawl 데이터에서 경제 뉴스만을 필터링 하여 사용
  • Pythia에 맞는 중복 제거 프로시저를 사용하여 학습 데이터에서 중복 제거
  • 두 가지 데이터를 합쳐 239억 개의 토큰(165억개 단어)로 이루어진 데이터를 생성

2. Background

Domain-adaptive Continual Pre-training(DACP)

domain-specific LLM은 엄청난 양의 도메인 데이터로 처음부터 학습하여 만들어진다.

이러한 프로시저는 두 가지 문제점을 갖고 있다.

  1. 비용이 많이 듦
  2. 엄청난 양의 도메인 데이터가 필요 : 데이터가 적은 도메인에서 적용할 수 없음

Domain-adaptive continual pretraining(DACP)는 처음부터(scratch) 학습하는 것보다 간단함;

본 논문에서는 general-purpose LLM을 대용량의 domain-specific unlabeled data로 continaul하게 pre-train한다.

 

Domain-adaptive continual pre-training은 LM이 in-domain에서 더 좋은 성능을 보이는 것을 보여줬다.

또한 LLM으로도 새로운 지식을 획득하는 것을 보여줬다.

 

본 논문에서는, 실험에서 DACP를 사용하여 그 이점을 평가한다.

 

Task-Adaptive Continual Pre-training(TACP)

Task-adaptive continual pre-training(TACP)는 타겟 태스크 성능 향상을 목적으로 continual pre-training을 진행하는 것이다.

TACP는 BERT와 같은 LM으로 연구되었다.

  • TACP는 Masked Language Modeling (MLM) loss와 같은 pre-training loss objective에서 사용되어 어떠한 다른 task label을 사용하지 않고 LM을 downstream task로 적응하도록 했다.
  • task data는 한정되어 있으며, TACP는 BERT와 같은 LM에서 상당한 효과를 보여주었다.

본 논문에서는 TACP를 LLM을 task에 대응하는 레이블 없이 continual하게 pre-train하여 4개의 경제 evaluation task에서 평가한다.

이것은 TACP에서 태스크 레이블을 사용하지 않기 때문에 어떠한 supervised learning과도 다르다. 

 

3. Towards and Efficient Domain-adaptive Continual Pre-training

TACP의 주요 한계점은 학습을 위한 unlabeled task 데이터 사용으로 인한 task별 LLM을 구축하는 것이다.

DACP는 굉장히 큰 코퍼스를 사용하기 때문에 비용이 굉장히 비싸다.

 

이러한 한계점의 균형을 맞추기 위해 두 가지를 제안한다.

  1. Efficient Task-Similar Domain-Adaptive Continual Pre-training(ETS-DACP)
    • 태스크들의 중요성을 강조하기 위해 DACP를 조정함으로써 태스크를 위한 LLM 구축을 목적으로 함
  2. Efficient Task-Agnostic Domain-Adaptive Continual Pre-training(ETA-DACP)
    • 도메인 코퍼스에서 가장 정보가 많은 샘플들을 선택함으로써 훨씬 일반적임

 

Figure 1

Efficient Task-Similar Domain-adaptive Continual Pre-training

$\mathcal{D^*}$ : Figure 1의 파란 부분에서 주어진 태스크 데이터(빨강)에 훨씬 가까운 도메인 데이터의 일부를 선택하여 최적의 데이터셋을 형성한다.

 

LLM Fine-tuning은상당한 양의 instruction을 요구할 수 있으며, 비용이 상당히 들어간다.

ETS-DACP는 상대적으로 제한된 unlabeled task 데이터를 사용하여 훨씬 큰 pre-training 도메인 코퍼스에서 유사한 샘플들을 뽑아 이러한 상황을 직접 다룬다.

 

unlabeled task 데이터로 LLM을 continual pre-train하면 모델을 태스크 분포에 따라 조정하여 타겟 태스크 성능에 이점이 있을 것이라 가정한다.

 

태스크 데이터와 도메인 코퍼스 샘플의 임베딩 간 유사도를 사용하여 data selection을 수행한다.

  • 도메인 코퍼스에서 태스크 데이터 분포와 닮은 일부 데이터 집합을 선택하도록 한다.
  • document-level의 태스크 유사도를 정량화 하기 위해 Spacy 모델을 사용하여 document 임베딩과 태스크 데이터 임베딩 간 코사인 유사도를 계산
  • 이러한 방식은 효과적인 비용으로 task-specific 정보와 경제 코퍼스 간 alignment를 측정할 수 있도록 하여, 집중적/타게팅된 pre-train이 가능하도록 한다.

Efficient Task-Agnostic Domain-adaptive Continual Pre-training

ETS-DACP가 제공된 태스크 데이터의 시나리오를 다룬다면, ETA-DACP는 태스크 데이터에 없는 데이터를 다룬다.

ETS-DACP가 LLM을 태스크 데이터에 과하게 tune을 하도록 만드는 한계점을 극복한다.

 

도메인 정보를 pre-training domain 데이터의 subset에서 얻기 위해선 2가지가 중요함 : novelty & diversity

 

Novelty

  • Novelty : LLM이 이전에 보지 못한 정보
  • document의 novelty의 수준(level)을 LLM이 기록한 perplexity를 바탕으로 측정
    • 높은 perplexity의 문서는 기존 학습 코퍼스에 적게 나타나므로, 모델에게 novel한 지식을 포함한다고 할 수 있다.
    • 이러한 sample의 경우 continual pre-training에서 novel information을 얻기에 가치 있을 것이다.

LLM에서 perplexity를 직접 사용하는 것은 상당한 비용을 발생시킴(inference는 학습 연산의 약 25% 사용)

비용을 줄이기 위해, document perplexity를 계산하기 위해 surrogate model으로 Pythia-70m을 사용.

  • 샘플 데이터셋을 사용하는 주요 실험은 Pythia-1B와 Pythia-70m perplexity 간 0.97의 강한 상관관계를 보여준다.
  • 높은 상관관계는 작은 모델의 사용이 비용 효율적 샘플링이 가능하게 하며, 믿을만한 대체제라는 것을 정당화한다.

Diversity

  • Diversity : 도메인 코퍼스에서 토큰 타입 분포의 다양성을 포착한다.
  • Part-of-speech(POS) 태깅으로 토큰 타입을 획득
  • entropy는 최고의 diversity 측정 중 하나이기에, diversity measure로 POS 태그의 entropy를 사용

Data Sampling Strategy

Hard Sampling

  • metric 백분위에 따라 도메인 코퍼스에서 샘플들의 랭크를 매김.
  • metric(s)에 기반하여 도메인 코퍼스에서 top-k 샘플들을 선택
  • 이 때, $k$는 사전학습을 위해 미리 정해진 token budget을 만족해야 하는 샘플의 수

Soft Sampling

  • top-k 밑의 샘플을 생략하여 binary 가중치를 부여하는 대신, distance metric을 기반으로 소프트 가중치 할당
  • 유사도 metric을 distance metric으로 사용하여, 한 샘플이 유사도 점수 0.9를 얻었다고 가정
    • 이 경우, 정규화되었으며, 샘플을 선정하는 확률로 여겨질 수 있음
  • 이 절차로, Figure 1의 파란색 영역 밖의 non-task 샘플들을 continual pre-training 하는 데 확인할 수 있으며, pre-training 데이터에 diversity를 추가할 수 있다.

샘플 선택 시 다음 세 가지 척도를 사용:

  1. task data에 사용하는 similarity(ETS-DACP)
  2. novelty 측정을 위한 perplexity(ETA-DACP)
  3. token type entropy로 측정하는 diversity(ETA-DACP)

metric 값을 샘플링 확률로 전환하기 위해, quntile ranges를 기반으로 한 method 제안

  • 먼저, 0에서 100까지의 quantile을 각 metric별로 계산
  • 확률은 각 문서에 해당하는 metric quantile과 같음
  • 이러한 방식은 metric을 효과적으로 정규화하고, 다른 metric type과 aggregation이 가능하도록 함

Table 1 모든 method에 대한 요약

 

Experimental Setup

1. Evaluation tasks

Finance Domain Tasks

Domain-adaptive continual pre-training를 평가하기 위해 경제 태스로 평가

FLARE framework 활용

  • FLARE의 instruction prompt, data split, metric computation을 따라 진행
  1. Financial Phrase Bank : 경제 뉴스에서의 sentiment classification 태스크. sentiment는 investor가 뉴스를 positive/neutral/negative하게 여기는지 반영
  2. FiQA SA : 경제 뉴스와 헤드라인을 바탕으로 한 sentiment classification task
  3. Headline : 경제 entity에 대한 헤드라인에 특정 정보가 포함되어 있는지 Binary classification, 각 뉴스 기사는 ("price or not", "price up", "price down", "price stable", "past price", "asset")등 과 같은 9개의 태그와 연관됨.
  4. NER : 경제 개체명 추출은 SEC reports의 credeit risk assessment 섹션을 기반으로 함. 해당 태스크의 단어에는 PER, LOC, ORG 및 MISC가 주석으로 표시됨.

General Domain Tasks

domain train이 non-domain 능력에 미치는 영향을 평가하기 위해, open domain task들을 수행함:

  1. ARC는 태스크를 처음으로 시연한 후 출력 grid를 예측하는 능력을 측정
  2. MMLU는 초등 수학, 역사, 법학을 포함한 57가지 태스크의 지식을 테스트
  3. TruthfulQA는 38개의 카테고리 안의 817가지 질문에 대한 question answering 능력을 측정
  4. HellaSwag는 이벤트 설명이 주어졌을 때, 관련 후속 문장을 생성하는 상식 능력을 측정

2. Baselines

 

3. Training Setup and Infrastructure

benchmark pre-trained LLM Model : Pythia 1B, 6.9B

catastrophic forgetting을 방지하기 위해 가장 작은 learning rate 사용, efficient pre-training을 위해 constant하게 사용

  • FinPythia 6.9B : learning rate 1.2e-05
  • FinPythia-1B : learning rate 3e-05

기존 batch size의 절반 사용(512)

모델 크기가 적당하여, activation checkpointing이 가능한 DeepSpeed ZeRO Stage 2를 통하여 데이터 병렬 처리 사용한다.

FinPythia-6.9B 학습에 18일, FinPythia-1B를 학습하는데 3일 (240억개 토큰 사전학습)

 

Results and Analysis

1. Domain-adaptive Continual Pre-training

경제 도메인 태스크를 평가하기 위해 FinPythia, Pythia와 비슷한 크기의 오픈 소스 모델(OPT-7B, BLOOM-7B, GPT-J-6B)과 비교한다.

각 태스크마다 5-shot으로 평가한다. (각 샷은 태스크의 training dataset에서 랜덤하게 샘플링한다.)

Table 2

 

  • FinPythia-6.9B와 FinPythia-1B는 FiQA SA를 제외하고 가장 좋은 성능을 보임(Pythia가 제일 좋은 성능)
  • DACP는 평균적으로 1B 모델에서 2.8% 성능이 향상되었으며, 6.9B 모델에서는 8.3% 향상됨
  • 이러한 결과는 domain 성능 강화에 대한 domain-adaptive continual pre-training의 영향을 입증함

2. Efficient Domain-adaptive Continual Pre-training

FLARE는 전체 training data에서 5-shot in-context를 통해 성능을 측정하는데, 각 테스트 샘플이 각 모델에서 평가할 때, 다른 train sample을 보게 되며, 서로 다른 모델 간 비교를 어렵게 한다.

  • 대규모 훈련 데이터셋에서 랜덤 샘플링으로 인한 높은 표준 편차 확인

이러한 무작위성을 극복하기 위해 모델 간 비교를 공정하게 하기 위해, 각 task에 대한 훈련 데이터셋에서 50개의 레이블링된 데이터 샘플 풀을 따로 설정하는 "shot pool"

  • 나머지 훈련 샘플의 레이블을 제거하고, 레이블이 없는 task 데이터로 활용하고, task 데이터를 사용한 데이터 선택 strategy에 사용

이러한 구성은 unlabeled task 데이터에 접근할 수 없기 때문에 채택함.

  • 부족한 labeled data로 인해 발생하는 제약 조건도 시뮬레이션 함.
  • 이러한 approach는 레이블링되지 않은 task 데이터를 생성하지만, 크기가 작기 때문에, 4가지 task에서 24만 개의 토큰만 포함함.

각각의 DACP method의 코퍼스의 10%만 선택함.

 

ETS-DACP-com

다른 버전의 ETS-DACP로, 랭크를 매기기 위해 세 가지 measure를 평균을 내고, 유사성을 가진 두 가지 measure를 사용함. ???

 

TACP와 Efficient DACP는 모두 단일 epoch 동안 학습하고, 공정한 비교를 위해 DACP와 동일한 pre-training 구성을 사용함.(연산 budget 때문에 Pythia-1B로 실험 진행)

  • 평가는 10개의 랜덤 시드로 10번 수행하고 성능을 평균을 내어 네 가지 task 각각에 대해 기록함

Table 3 : evaluation results

  • Pythia-1B에 비해 TACP가 상당한 향상을 보이는 반면, ETS-DACP는 Average task 성능에서 DACP, TACP 및 제안한 efficient DACP 중 가장 높은 성능을 보임.
  • 이러한 향상된 성능은 토큰의 수가 증가한 것만으로 이루어진 것이 아님. 동일한 토큰 수의 DACP는 하락한 성능을 보임
    • 이 결과는 unlabeled task 데이터로 학습한 task-adaptive 및 domain continual pre-training LLM의 효능을 강조
    • sLM에서의 결과와도 일치함

 

  1. 100% 데이터로 학습한 DACP보다 10%로 학습한 ETS-DACP가 우수함
  2. ETS-DACP는 모든 세 가지 지표에서 ETS-DACP-com보다 최고 성능을 보이거나 동등한 수준
  3. 10% 코퍼스로 훈련된 ETA-DACP-ent는 task 데이터에 접근할 수 없음에도, 거의 2번째로 vanila DACP를 능가함
  4. 하드 샘플링을 사용한 efficient DACP는 소프트 샘플링을 사용한 것보다 우수함.

매우 유사하거나 높은 entropy의 데이터 외에 더 많은 데이터를 추가하면 실제로 성능이 저하됨.

  • 하드 샘플링과 소프트 샘플링 간의 차이는 이러한 현상에 대한 증거

평균적으로 task마다 변동성이 있지만, 가장 흥미롭고/유사한 example을 추가하면 성능을 하락시킴.

  • ETS-DACP-com은 세 가지 지표를 모두 결합한 것으로, 중요한 exception임.

그러므로, 데이터는 domain continual pre-training을 위해 신중하게 선별되어야 함.

 

domain 데이터의 10%는 Pythia가 학습한 3000억 개 토큰 중 1% 미만임.

따라서, continual pre-training을 위해 data curation 과정에서 데이터를 선택적으로 사용하는 것은 적은 비용으로 도메인 성능에 큰 영향을 미칠 수 있음.

이 결과는 domain과 task(sub-domain)에 대한 continual pre-train 효과를 입증함.

 

이러한 활동?결과?에서 떠오르는 질문은 LLM이 좁은 domain에서 더 tune 되어 generality를 잃고 있는지에 대한 여부임.

즉, LLM은 generalist가 되지 않는 것을 대가로 specialist가 되는 것인가?

  • Pythia가 평가한 domain 외 작업에서 continual pre-trained LLM variants의 성능을 측정하여 해당 질문에 답한다.

Table 4 : 4가지 standard non-finance task에 대한 성능

4가지 out-of-domain task에 대해 상당한 변화는 관찰할 수 없었음.

 

3. Ablation on Percentage of Pre-training Data Selected

Figure 2

ETS-DACP와 ETA-DACP-ent는 pre-trained data의 5%만 사용한 것에서 평균 F1 스코어가 59%에 가깝지만, 데이터의 10%를 사용한 후부터 감소한다.

  • informative하지 않은 샘플을 추가하면 LLM이 유용하지 않은 예제를 학습하여 distribution을 조정할 때 성능이 저하되는 것을 보여줌
  • DACP의 경우, 일정한 성능 향상을 보임.
  • pre-trained 데이터에서 1%만 선택한 경우에서 DACP보다 perplexity가 높은 성능을 보임.
  • perplexity는 이후 상당히 성능이 하락하기 시작하는데, 학습 데이터의 5%만 사용한 경우에서는 가장 낮은 성능을 보이고, 그 이후에 다시 회복하는 모습을 보였다.
    • 사전 학습 샘플링을 1%에서 5% 한 부분에서 선택된 perplexity 기반 데이터를 랜덤하게 샘플링하여 조사한 결과, 자연어 텍스트가 없는 긴 표를 사용한 사례가 많았다.
    • 분포의 변화와 나머지 pre-training 코퍼스 및 task의 변화는 perplexity 기반 데이터 선택으로 인한 성능 저하를 설명함.

Comparison of Data Selection Metrics

  • Table 1과 Figure 2에서, selection 기반 task similarity가 가장 성능이 좋음 : training data와 task data간의 유사도가 사전학습에서 가장 유익함
  • Entropy는 2번째로 성능이 좋은데, domain pre-training을 위한 effective task-agnostic data selection 기법
  • highest entropy 샘플들은 named entity distribution에 기반하여 선택됨;
    • 이러한 샘플들은 lower entropy 샘플들보다 다양한 domain specific entity(예 : 이름)을 갖고 있음
  • 가정 : highest entropy 샘플들이 다양한 lower type을 가진 lower entropy samples보다 LLM을 더 많은 domain knowledge에 노출시켜 정보력이 떨어짐.

 

  • Perplexity로 나타나는 현상
    • 초기에 상위 1%의 perplexity 샘플들로 이점이 있지만, 이후에 이점이 없음
    • High perplexity 샘플들은 모델에 novel하지만, novelty는 out-of-distribution과 lower quality 샘플들 모두에서 나타날 수 있다.
    • 상위 1% perplexity 샘플에서 고품질의 금융 기사 관찰
    • 상위 1%~5% perplextity에서 foundational model이 학습된 내용에 대해 노이즈에 해당하는 긴 표가 있는 샘플들 관찰
    • perplexity는 perplexity metric과 entorpy metric에서 높은 점수를 받는 데이터의 노이즈에 의해 영향을 받을 수 있음

대부분의 대규모 데이터셋은 노이즈가 많은 샘플 가질 수 있어, perplexity 기반 데이터 선택은 좋지 않음.

 

Perplexity와 다른 두 가지 지표 간의 상관관계 : similarity(0.21), entropy(0.14) 상당히 낮음

  • 이 둘은 noisy sample 고르는 것을 방지할 수 있음

보통 domain LLM이 처음 보는 태스크에서도 성능이 잘 나오기를 바라기에, 사전학습을 task agnostic 프레임워크에 적용하는 것이 더 좋음

실험 결과, entropy 지표는 task agnostic과 downstream task 성능 모두에서 높은 점수를 받음

 

Conclusion

  • domain-specific LLM을 을 개발하기 위한 domain-adaptive continual pre-training의 효과를 입증
  • 실험 결과에서, domain-adaptive continual pre-training이 금융 태스크에서 LLM의 성능을 향상시키고, 훨씬 낮은 비용으로 domain knowledge를 습득하는 것을 보여줌.

 

  • continual pre-training을 향상시키기 위해 효율적은 domain-adaptive continual pre-train 방법인 ETS-DACP와 ETA-DACP 제안
  • 제안한 방법은 continual pre-train을 개선하여 vanila continual pre-train data(cost)의 10%만으로도 훨씬 더 나은 결과를 얻을 수 있었음
  • Entropy 기반 task-agnostic data selection은 task-aware data selection 전략과 거의 동등하게 작동
    • task가 없어도, continual pre-train을 위해 data selection에 사용할 수 있음
  • open-domain standard task에서 성능 저하가 관찰되지 않았으며, 이는 domain continual pre-train이 open-domain 역량을 저하시키지 않는다는 것을 의미

 

  • 연구 결과는 domain-specific LLM을 처음부터 구축하는 강력한 대안으로 domain continual pre-train을 제시
  • data selection을 더 현명하게 함으로써, 적은 비용으로 vanila continual pre-train을 능가할 수 있었음
  • 데이터를 더 추가하는 것만으로 도움이 된다는 믿음과 달리, 데이터 품질 역시 중요함을 시사함
  • domain continual pre-train은 sLM 문헌에서 널이 연구되어 왔지만, 관련 규모와 비용을 고려할 때 LLM에 대한 독특한 인사이트를 제공
  • 전반적으로, domain-specific LLM을 저렴한 비용으로 개발할 수 있는 길을 열어주며, 다양한 LLM 어플리케이션에 대한 시사점 제공

 

 

'NLP > 논문' 카테고리의 다른 글

GraphRAG 알아보기  (0) 2025.10.01
LogLLM: Log-based Anomaly Detection Using Large Language Models  (4) 2025.06.30