KLUE/RoBERTa
개요
KLUE(Korean Language Understanding Evaluation)는 한국어 자연어 처리 벤치마크 프로젝트이며, 이 프레임워크 하에서 공개된 KLUE-RoBERTa는 한국어에 특화된 사전학습 언어 모델이다.
- 기반 아키텍처: RoBERTa (BERT의 개선 버전)
- 학습 데이터: 뉴스, 위키피디아, 법률 문서 등 대규모 한국어 코퍼스
- 공개처: Hugging Face —
klue/roberta-base,klue/roberta-large
RoBERTa란
BERT의 학습 방식을 개선한 모델:
- NSP(Next Sentence Prediction) 제거 → MLM(Masked Language Modeling)만 사용
- 더 큰 배치 사이즈 + 더 많은 학습 데이터
- 동적 마스킹(Dynamic Masking) 적용
사용 방식
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("klue/roberta-base")
model = AutoModel.from_pretrained("klue/roberta-base")미세조정(Fine-tuning) 활용
| 태스크 | 방법 |
|---|---|
| 텍스트 분류 | 출력 레이어에 분류기(Classifier) 추가 |
| 유사도 계산 | [CLS] 토큰 임베딩 활용 |
| 카테고리 매핑 | 입력 쌍(pair)으로 학습하는 Sentence-BERT 방식 |
이커머스 카테고리 매핑 활용
마켓 A의 카테고리와 마켓 B의 카테고리를 쌍으로 학습시켜, 새 카테고리 입력 시 유사도 상위 N개 후보를 반환하는 모델로 사용.
입력: "스마트폰 > 갤럭시"
출력: [("휴대폰 > 삼성", 0.92), ("전자기기 > 스마트폰", 0.87), ...]
필요 학습 데이터: 수동으로 매핑된 카테고리 쌍 수백~수천 건
모델 크기 비교
| 모델 | 파라미터 수 | 특징 |
|---|---|---|
| roberta-small | ~32M | 경량, 추론 빠름 |
| roberta-base | ~111M | 범용, 균형적 |
| roberta-large | ~355M | 고성능, 학습 비용 높음 |
관련 개념
- Fine-tuning
- LLM