한국어 PLM — 한국어 사전학습 인코더 모델
영어 중심으로 발전한 BERT 계열 모델을 한국어에 직접 적용하면 성능이 크게 떨어집니다. 한국어는 교착어(agglutinative language)로서 조사, 어미 변화, 띄어쓰기 불일치 등 고유한 언어적 특성이 있기 때문입니다. 이 문서에서는 한국어에 특화된 주요 사전학습 인코더 모델을 비교하고 실습합니다.학습 목표
이 문서를 완료하면 다음을 할 수 있습니다.- 한국어 PLM의 필요성과 영어 모델 대비 장점을 설명할 수 있습니다
- KoBERT, KoELECTRA, KLUE-BERT, KR-BERT의 차이를 구분할 수 있습니다
- HuggingFace를 사용하여 한국어 PLM을 로드하고 추론할 수 있습니다
- KLUE 벤치마크의 구성과 평가 방식을 이해합니다
왜 중요한가
한국어 NLP 실무에서 모델 선택은 성능에 직접적인 영향을 미칩니다.- 한국어 특수성 반영: 한국어 토크나이저, 한국어 코퍼스로 학습된 모델이 더 나은 성능을 보입니다
- 실무 선택 기준: 한국어 벤치마크(KLUE) 기반의 객관적 비교가 가능합니다
- 생태계 이해: 한국 AI 연구 생태계(SKT, ETRI, KAIST 등)의 기여를 파악합니다
핵심 개념
한국어 NLP의 과제
| 과제 | 설명 | 예시 |
|---|---|---|
| 교착어 특성 | 조사/어미가 어근에 결합하여 다양한 형태 생성 | ”먹었다”, “먹겠니”, “먹었을까” |
| 띄어쓰기 불일치 | 같은 문장도 띄어쓰기가 다를 수 있음 | ”나는 학생이다” vs “나는학생이다” |
| 형태소 분석 필요 | 어절 단위로는 의미 파악이 어려움 | ”먹었다” → “먹” + “었” + “다” |
| 학습 데이터 부족 | 영어 대비 고품질 학습 데이터가 제한적 | 영어 Wikipedia >> 한국어 Wikipedia |
| 다양한 문체 | 구어체, 문어체, 신조어 등 변이가 큼 | ”ㅋㅋ”, “ㄱㄱ”, “갓생” |
KoBERT (SKT, 2019)
SK텔레콤이 공개한 최초의 한국어 BERT 모델입니다.| 항목 | 값 |
|---|---|
| 발표 | 2019, SKT |
| 기반 모델 | BERT-Base |
| 토크나이저 | SentencePiece (8,002 vocab) |
| 학습 데이터 | 한국어 위키백과 (약 5,400만 문장) |
| 파라미터 | 92M |
| 특징 | 최초 공개 한국어 BERT, 한국어 SentencePiece 적용 |
KoELECTRA (monologg, 2020)
ELECTRA 아키텍처를 한국어에 적용한 모델입니다. ELECTRA는 MLM 대신 **Replaced Token Detection(RTD)**을 사용하여 더 효율적으로 학습합니다.| 항목 | 값 |
|---|---|
| 발표 | 2020, monologg (박장원) |
| 기반 모델 | ELECTRA |
| 토크나이저 | WordPiece (35,000 vocab) |
| 학습 데이터 | 34GB (뉴스, 위키, 나무위키 등) |
| 파라미터 | Base: 110M, Small: 14M |
| 특징 | RTD 목표 함수, 모든 토큰에서 학습 |
ELECTRA의 학습 방식
ELECTRA의 핵심 장점은 모든 토큰에서 학습 신호를 받는다는 것입니다. BERT의 MLM은 마스킹된 15%의 토큰에서만 학습하지만, ELECTRA의 RTD는 100%의 토큰에서 원본/대체 여부를 판별하여 학습합니다.KLUE-BERT / KLUE-RoBERTa (KLUE, 2021)
KAIST 등 한국 주요 연구기관이 공동으로 구축한 KLUE(Korean Language Understanding Evaluation) 벤치마크와 함께 공개된 베이스라인 모델입니다.| 항목 | KLUE-BERT | KLUE-RoBERTa |
|---|---|---|
| 발표 | 2021, KLUE Consortium | |
| 기반 모델 | BERT-Base | RoBERTa-Large |
| 토크나이저 | Morpheme-aware WordPiece (32,000) | Morpheme-aware BPE (32,000) |
| 학습 데이터 | 62GB (모두의 말뭉치 + 뉴스 + 위키 등) | |
| 파라미터 | 110M | 337M |
| 특징 | KLUE 벤치마크 공식 베이스라인 |
KLUE 벤치마크
KLUE는 한국어 NLU(Natural Language Understanding)를 평가하기 위한 8개 태스크로 구성됩니다.| 태스크 | 유형 | 설명 | 평가 지표 |
|---|---|---|---|
| TC (Topic Classification) | 문장 분류 | 뉴스 주제 분류 (7개 카테고리) | Macro F1 |
| STS (Semantic Textual Similarity) | 문장 쌍 | 두 문장의 의미 유사도 (0~5) | Pearson’s r |
| NLI (Natural Language Inference) | 문장 쌍 | 전제-가설 관계 (함의/모순/중립) | Accuracy |
| NER (Named Entity Recognition) | 토큰 분류 | 개체명 인식 (6개 유형) | Entity-level F1 |
| RE (Relation Extraction) | 문장 분류 | 두 개체 간 관계 추출 (30개 유형) | Micro F1 |
| DP (Dependency Parsing) | 구조 예측 | 의존 구문 분석 | UAS / LAS |
| MRC (Machine Reading Comprehension) | 추출형 QA | 지문에서 답 구간 추출 | EM / ROUGE-W |
| DST (Dialogue State Tracking) | 대화 이해 | 대화에서 슬롯-값 추출 | JGA / Slot F1 |
KR-BERT (SNU, 2020)
서울대학교에서 공개한 모델로, 한국어 특성에 맞는 문자 수준(character-level) 토크나이저를 사용합니다.| 항목 | 값 |
|---|---|
| 발표 | 2020, 서울대학교 |
| 기반 모델 | BERT-Base |
| 토크나이저 | Character-level + WordPiece (16,424 vocab) |
| 학습 데이터 | 23GB (위키, 뉴스, 댓글) |
| 특징 | 한글 자모 분리, 오타/신조어에 강건 |
한국어 PLM 종합 비교
| 모델 | 파라미터 | 어휘 크기 | 학습 데이터 | KLUE NLI | KLUE NER | 추천 용도 |
|---|---|---|---|---|---|---|
| KoBERT | 92M | 8,002 | 5GB | - | - | 경량 프로토타입 |
| KoELECTRA-Base | 110M | 35,000 | 34GB | 82.7 | 87.2 | 균형잡힌 성능 |
| KLUE-BERT | 110M | 32,000 | 62GB | 81.6 | 86.3 | 공식 벤치마크 |
| KLUE-RoBERTa-Large | 337M | 32,000 | 62GB | 89.0 | 88.5 | 최고 성능 |
| KR-BERT | 110M | 16,424 | 23GB | - | - | 소셜 미디어 텍스트 |
어떤 모델을 선택해야 할까?
| 상황 | 추천 모델 | 이유 |
|---|---|---|
| 한국어 NLU 최고 성능 | KLUE-RoBERTa-Large | KLUE 벤치마크 최고 점수 |
| 파라미터 효율적 학습 | KoELECTRA-Small/Base | RTD로 효율적 학습, 좋은 성능 |
| 소셜 미디어 / 비정형 텍스트 | KR-BERT | 자모 분리로 오타/신조어 강건 |
| 빠른 프로토타이핑 | KoBERT | 가볍고 많은 예제 코드 |
| 연구 / 공정한 비교 | KLUE-BERT | 공식 벤치마크 베이스라인 |
HuggingFace 실습
모델 로드 및 Masked LM 추론
텍스트 분류 (감성 분석)
추론 파이프라인
개체명 인식 (NER)
AI/ML 활용
한국어 PLM은 다양한 실무 시나리오에서 활용됩니다.- 고객 리뷰 분석: KoELECTRA로 한국어 리뷰의 감성 분류 및 감정 분석
- 문서 분류: KLUE-RoBERTa로 뉴스, 법률, 의료 문서 자동 분류
- 검색 시스템: KLUE-BERT 임베딩을 활용한 한국어 시맨틱 검색
- 대화 시스템: 한국어 NLU(의도 분류, 개체 추출)에 PLM 적용
- 정보 추출: 한국어 문서에서 인물, 기관, 날짜 등 개체명 자동 추출
다국어 모델(mBERT, XLM-R)을 한국어에 사용해도 되나요?
다국어 모델(mBERT, XLM-R)을 한국어에 사용해도 되나요?
다국어 모델도 한국어를 지원하지만, 한국어 전용 모델이 대체로 더 나은 성능을 보입니다. mBERT는 104개 언어를 동시에 학습하므로 한국어에 할당된 어휘와 학습 데이터가 제한적입니다. 다만 다국어 태스크(번역, 다국어 검색)에서는 XLM-RoBERTa가 유용할 수 있습니다.
한국어 토크나이저에서 형태소 분석이 왜 중요한가요?
한국어 토크나이저에서 형태소 분석이 왜 중요한가요?
한국어는 교착어이므로 “먹었다”를 하나의 토큰으로 처리하면 “먹다”, “먹었다”, “먹었었다”가 모두 다른 토큰이 됩니다. 형태소 기반 토크나이저는 “먹” + “었” + “다”로 분리하여 어근과 어미를 공유할 수 있게 합니다. KLUE 모델들의 Morpheme-aware 토크나이저가 이 접근을 취합니다.
KLUE 벤치마크에서 KLUE-RoBERTa가 다른 모델보다 좋은 이유는 무엇인가요?
KLUE 벤치마크에서 KLUE-RoBERTa가 다른 모델보다 좋은 이유는 무엇인가요?
KLUE-RoBERTa-Large는 337M 파라미터로 가장 큰 모델이며, RoBERTa의 검증된 학습 전략(동적 마스킹, NSP 제거, 대규모 배치)을 한국어에 적용했습니다. 또한 62GB의 고품질 한국어 코퍼스와 형태소 인식 토크나이저의 조합이 높은 성능에 기여합니다.
한국어 PLM을 Fine-tuning할 때 주의할 점이 있나요?
한국어 PLM을 Fine-tuning할 때 주의할 점이 있나요?
- 학습률은 2e-5 ~ 5e-5 범위에서 시작하는 것이 안전합니다. 2) 한국어 데이터는 영어보다 토큰 수가 많아질 수 있으므로 max_length를 충분히 설정합니다. 3) 형태소 분석기 버전에 따라 토크나이저 결과가 달라질 수 있으므로, 학습과 추론에서 동일한 환경을 사용해야 합니다. 4) 한국어 특유의 띄어쓰기 변형을 데이터 전처리에서 정규화하면 성능이 향상됩니다.
체크리스트
학습을 마치셨다면 아래 항목을 확인해 보세요.- 영어 BERT 대신 한국어 PLM을 사용해야 하는 이유를 설명할 수 있다
- KoBERT, KoELECTRA, KLUE-BERT의 핵심 차이(토크나이저, 학습 데이터, 학습 방법)를 구분할 수 있다
- KLUE 벤치마크의 8개 태스크를 나열하고 각각의 목적을 설명할 수 있다
- HuggingFace로 한국어 PLM을 로드하고 추론할 수 있다
- 태스크 특성에 따라 적합한 한국어 PLM을 선택할 수 있다

