BERT

IT 위키
Bidirectional Encoder Representations from Transformers

BERT는 Google AI가 2018년에 발표한 언어 표현 학습용 딥러닝 모델로, Transformer 인코더 구조를 기반으로 텍스트의 양방향 문맥을 학습한다. 다양한 NLP 작업에 맞춰 미세 조정(fine‑tuning) 가능하며, 등장 이후 자연어 처리에서 기준 모델로 자리 잡았다.

1 개요[편집 | 원본 편집]

BERT는 Transformer 구조의 인코더 부분만을 사용하여 입력 문장의 양쪽 문맥을 동시에 분석한다. 입력된 문장이나 단어를 고차원 벡터로 변환함으로써, 문장의 의미를 수치적으로 표현할 수 있다. 이렇게 얻은 벡터는 검색, 분류, 질의응답 등 다양한 자연어 처리 태스크에서 활용된다.

BERT는 자체적으로 텍스트를 생성하거나 대화를 이어나갈 수 있는 모델은 아니며, 사용자가 입력한 문장을 분석하고 이에 대한 의미적 특징을 벡터 형태로 출력하는 "특징 추출기(feature extractor)" 또는 "임베딩 생성기"로 볼 수 있다.

BERT 아키텍처.jpeg

2 주요 구조[편집 | 원본 편집]

  • MLM(Masked Language Modeling): 문장 내 일부 단어를 [MASK]로 가려놓고 이를 예측하는 방식으로 문맥 학습
  • NSP(Next Sentence Prediction): 두 문장이 연속되는 문맥인지 예측하여 문장 간 관계 이해
  • 입력 구성: 토큰 임베딩 + 세그먼트 임베딩 + 위치 임베딩의 합

3 모델 크기[편집 | 원본 편집]

모델 층 수 hidden size self-attention heads 파라미터 수
BERT_BASE 12 768 12 약 110M
BERT_LARGE 24 1024 16 약 340M

4 특징[편집 | 원본 편집]

  • 문맥적 임베딩 생성: 동일 단어라도 문맥에 따라 서로 다른 의미 표현
  • 양방향 학습: 문장의 앞뒤 정보를 동시에 활용하여 높은 이해력 제공
  • 미세 조정 가능: 다양한 NLP 작업에 맞게 일부 층만 추가하여 빠르게 학습 가능
  • 생성 모델이 아님: 문장을 생성하거나 대화하는 기능은 없음
  • RNN을 사용하지 않는 Attention 모델

5 활용[편집 | 원본 편집]

  • 감정 분석, 문장 분류, 개체명 인식(NER), 문서 검색 등
  • 문장 간 유사도 계산
  • 질의응답 시스템의 텍스트 이해 모듈
  • BERT 기반 파생 모델(RoBERTa, ALBERT, DistilBERT 등)도 다양하게 활용됨

6 장단점[편집 | 원본 편집]

  • 장점
    • 언어 이해의 우수성
  • 단점
    • 계산 cost가 매우 큰 모델

7 활성화 함수[편집 | 원본 편집]

ReLU 보다 부드러운 형태인 GELU 적용
  • 음수에 대한 미분이 가능

GELU.png

8 주요 기술[편집 | 원본 편집]

  • WordPiece tokenizing
    • 접두사, 접미사를 구분
    • ex) playing, coming, loving → ##ing
    • ex) 서울특별시, 세종특별시, 성남시, 안양시 → ##특별시, ##시
  • Multi-Head Attention
  • Masked Attention

9 같이 보기[편집 | 원본 편집]