TL;DR
📋 핵심 발견
GLUE 벤치마크에서 80.5%를 달성하며 기존 최고 기록 대비 7.7% 절대점수 향상 — 11개 NLP 태스크에서 동시에 SOTA를 갱신한 최초의 단일 모델
SQuAD v1.1 질문 응답에서 F1 93.2를 기록하여 인간 성능(91.2)을 처음으로 초월 — 기계가 사람보다 지문을 정확하게 읽을 수 있다는 가능성을 실증
사전 학습된 하나의 모델에 출력 레이어 하나만 추가하면 분류, QA, NER 등 전혀 다른 태스크를 수행할 수 있음을 입증 — 'pre-train & fine-tune' 패러다임의 결정적 전환점
양방향(bidirectional) 사전 학습이 단방향 대비 일관되게 우수함을 ablation으로 증명 — left-to-right만 사용한 모델은 MRPC에서 F1 77.8에 그친 반면 양방향 BERT는 88.9를 달성
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
arXiv: 1810.04805
💡이 논문이 등장한 배경
2018년, NLP 분야에는 오래된 고민이 있었습니다. 언어 모델들이 문장을 읽는 방식이 너무 제한적이었던 것입니다. 마치 소설의 반쪽만 읽고 줄거리를 맞춰야 하는 상황과 같았습니다.
당시 지배적이었던 두 가지 접근법을 살펴보면: ELMo는 문장을 왼쪽→오른쪽, 오른쪽→왼쪽으로 각각 독립적으로 읽은 뒤 그 결과를 이어붙이는 방식이었고, OpenAI GPT는 왼쪽→오른쪽 한 방향으로만 읽었습니다. 둘 다 '동시에 양쪽 문맥을 보면서 각 단어를 이해하는 것'은 불가능했습니다. "나는 bank에 갔다"에서 ‘bank’가 금융기관인지 강둑인지를 정확히 판단하려면 앞뒤 문맥을 동시에 봐야 하는데, 기존 모델들은 이 자연스러운 읽기 방식을 구현하지 못했습니다.
더 큰 문제는 각 NLP 태스크마다 처음부터 별도의 아키텍처를 설계해야 했다는 점입니다. 감정 분석, 질문 응답, 개체명 인식 등 태스크가 바뀔 때마다 모델 구조 자체를 새로 만들어야 했으니, 연구자와 엔지니어의 부담은 막대했습니다. BERT는 바로 이 두 가지 문제 — 제한적인 문맥 이해와 태스크별 아키텍처 재설계 — 를 동시에 해결하기 위해 등장했습니다.
🔍 핵심 아이디어
BERT의 핵심 아이디어는 놀라울 정도로 직관적입니다. 영어 시험에서 흔히 보는 '빈칸 채우기(cloze test)'를 AI 학습에 적용한 것입니다. 문장에서 단어 몇 개를 가리고, 나머지 문맥을 활용해 가려진 단어를 맞추게 하는 방식입니다. 이 단순한 아이디어가 왜 혁명적이었을까요? 빈칸을 채우려면 모델이 가려진 단어의 왼쪽과 오른쪽을 동시에 봐야 하기 때문입니다.

BERT, OpenAI GPT, ELMo의 핵심 아키텍처 차이점을 나란히 비교하여 보여줍니다. 특히 BERT의 모든 레이어에서의 양방향 self-attention, OpenAI GPT의 좌-우 단방향성, ELMo의 독립적인 좌-우 LSTM 연결 방식을 시각적으로 강조하여 BERT의 '깊은 양방향성' 기여를 명확히 합니다.
위 다이어그램에서 볼 수 있듯이, 기존 모델들과 BERT의 차이는 명확합니다. ELMo는 좌→우 LSTM과 우→좌 LSTM을 독립적으로 학습한 후 결합합니다. GPT는 왼쪽에서 오른쪽으로만 attention을 적용합니다. 반면 BERT는 Transformer의 모든 레이어에서 양방향 self-attention을 사용합니다. 모든 단어가 문장 내 다른 모든 단어를 동시에 참조할 수 있다는 뜻입니다.
이 '깊은 양방향성(deep bidirectionality)'은 단순히 좌→우와 우→좌를 이어붙이는 것과는 본질적으로 다릅니다. 이어붙이기 방식에서 각 방향의 모델은 반대쪽 문맥을 전혀 모른 채 표현을 만듭니다. 반면 BERT에서는 첫 번째 레이어부터 양쪽 문맥이 융합되어 매 레이어마다 점점 더 풍부한 표현이 만들어집니다.

BERT 모델의 사전 학습(Masked LM, Next Sentence Prediction)과 다양한 다운스트림 작업(예: Question Answering)을 위한 Fine-tuning 과정을 하나의 통합된 흐름도로 보여줍니다. 각 단계의 입력, BERT 블록, 그리고 출력 레이어의 변화를 명확히 나타냅니다.
BERT의 또 다른 핵심은 'pre-train & fine-tune' 전략입니다. 위 다이어그램처럼 사전 학습 단계에서 대규모 텍스트로 언어 자체를 이해하게 한 뒤, fine-tuning 단계에서는 출력 레이어만 태스크에 맞게 바꿔서 전체 모델을 미세 조정합니다. 마치 의대에서 기초 의학을 배운 뒤(사전 학습), 전공 과목만 추가로 수련하면(fine-tuning) 외과의도, 내과의도 될 수 있는 것과 같습니다. 모든 전공이 같은 기초 위에 서 있으니, 기초가 탄탄할수록 모든 전공에서 유리합니다.
BERT는 이 아이디어를 Transformer 아키텍처 위에 구현했습니다. BERT-Base는 12개 레이어, 768 hidden size, 12개 attention head로 1.1억 개 파라미터를, BERT-Large는 24개 레이어, 1024 hidden size, 16개 attention head로 3.4억 개 파라미터를 가집니다. 학습 데이터는 BooksCorpus(8억 단어)와 영어 Wikipedia(25억 단어)를 사용했습니다.
🤔 어떻게 작동하는가
Step 1: 입력 표현 — 세 가지 임베딩의 합
BERT의 입력은 세 가지 임베딩을 더해서 만들어집니다. 토큰 임베딩(각 단어의 의미), 세그먼트 임베딩(문장 A인지 B인지 구분), 위치 임베딩(문장 내 몇 번째 위치인지)입니다. 모든 입력 앞에는 [CLS]라는 특수 토큰이 붙고, 문장 사이에는 [SEP] 토큰이 들어갑니다. [CLS] 토큰의 최종 출력은 문장 전체의 의미를 압축한 벡터로 사용되며, 이것이 분류 태스크의 핵심 입력이 됩니다.

BERT 모델의 입력이 토큰 임베딩(Token Embeddings), 세그먼트 임베딩(Segment Embeddings), 그리고 위치 임베딩(Position Embeddings)의 합으로 어떻게 구성되는지를 시각적으로 설명합니다. [CLS] 및 [SEP] 토큰의 역할과 문장 A/B 구분을 위한 세그먼트 임베딩을 포함합니다.
Step 2: Masked Language Model (MLM) — 빈칸 채우기로 언어 배우기
사전 학습의 첫 번째 과제입니다. 입력 토큰 중 15%를 무작위로 선택한 뒤, 그 중 80%는 [MASK]로 대체, 10%는 랜덤 단어로 교체, 10%는 원본을 유지합니다. 왜 이렇게 복잡할까요? 만약 항상 [MASK]만 사용하면 모델이 fine-tuning 때 [MASK] 토큰을 전혀 보지 못해 학습과 실전의 괴리가 생깁니다. 랜덤 토큰과 원본을 섞음으로써 모델은 '어떤 위치든 원래 단어가 무엇인지 추론할 준비'를 해야 합니다.

Masked Language Model (MLM)과 Next Sentence Prediction (NSP)이라는 두 가지 핵심 사전 학습 태스크가 어떻게 작동하는지 구체적인 예시와 함께 단계별로 보여줍니다. MLM에서는 토큰 마스킹 전략(MASK, 랜덤 토큰, 원본 유지)을, NSP에서는 두 문장 간의 관계 예측 과정을 명확히 시각화합니다.
Step 3: Next Sentence Prediction (NSP) — 두 문장의 관계 파악
사전 학습의 두 번째 과제입니다. 두 문장을 주고 'B가 실제로 A 다음에 오는 문장인지(IsNext)' 아닌지(NotNext)를 맞추게 합니다. 학습 데이터의 50%는 실제 연속 문장, 50%는 랜덤으로 조합합니다. 이 태스크는 질문 응답(QA)이나 자연어 추론(NLI)처럼 두 문장 사이의 관계를 이해해야 하는 다운스트림 태스크를 위한 것입니다.

Masked Language Model (MLM)과 Next Sentence Prediction (NSP)이라는 두 가지 핵심 사전 학습 태스크가 어떻게 작동하는지 구체적인 예시와 함께 단계별로 보여줍니다. MLM에서는 토큰 마스킹 전략(MASK, 랜덤 토큰, 원본 유지)을, NSP에서는 두 문장 간의 관계 예측 과정을 명확히 시각화합니다.
Step 4: Fine-tuning — 출력 레이어 하나로 만능 되기
사전 학습이 끝나면 fine-tuning은 매우 간단합니다. 테스크에 맞는 입출력을 BERT에 연결하고, 전체 파라미터를 해당 테스크의 데이터로 미세 조정합니다. 문장 분류는 [CLS] 토큰 출력에 분류 레이어를, QA는 각 토큰 출력에서 정답 구간의 시작/끝 위치를 예측하는 레이어를 추가합니다. 대부분의 태스크에서 fine-tuning에 걸리는 시간은 단일 Cloud TPU에서 1시간 이내입니다.

BERT 모델이 문장 쌍 분류(예: MNLI), 단일 문장 분류(예: SST-2), 질문 응답(예: SQuAD), 토큰 수준 태깅(예: CoNLL-2003 NER)과 같은 다양한 NLP 다운스트림 태스크에 어떻게 효과적으로 Fine-tuning될 수 있는지 각 태스크별 입력 및 출력 구조 변화를 시각적으로 제시합니다.
Step 5: WordPiece 토큰화 — 모르는 단어도 이해하기
BERT는 30,000개의 WordPiece 어휘를 사용합니다. 사전에 없는 단어도 더 작은 조각으로 분리하여 처리할 수 있습니다. 예를 들어 'playing'은 'play'와 '##ing'으로 나뉩니다. 이 방식 덕분에 어떤 영어 텍스트든 처리할 수 있으며, 미등록어(OOV) 문제를 우아하게 해결합니다.
🛠️ 실험이 말해주는 것
BERT의 실험 결과는 당시 NLP 커뮤니티에 충격적이었습니다. GLUE 벤치마크의 8개 태스크 모두에서 기존 최고 성능을 갈아치우며 평균 80.5%(BERT-Large 기준)를 달성했습니다. 이는 당시 최고 시스템 대비 7.7% 절대점수 향상이었습니다. 특히 학습 데이터가 적은 태스크에서 더 극적인 향상을 보였는데, MRPC(3,600개 학습 데이터)에서 4.6%, RTE(2,500개)에서는 무려 15.3%가 올랐습니다. 이는 사전 학습이 소규모 데이터 태스크에서 특히 강력함을 보여줍니다.
Ablation study는 BERT의 각 설계 결정이 왜 중요한지를 명쾌하게 보여줍니다. 양방향성을 제거하고 left-to-right로만 학습하면 SQuAD F1이 4.1 하락하고, NSP를 제거하면 QNLI에서 1.5, MNLI에서 1.3 하락합니다. 모델 크기의 효과도 분명합니다 — BERT-Base(1.1억)에서 BERT-Large(3.4억)로 확장하면 MRPC에서 84.8→89.3, SQuAD에서 88.5→90.9로 일관된 향상을 보입니다.
Feature-based 접근(BERT를 고정된 특성 추출기로 사용)과 fine-tuning 접근을 비교한 실험도 주목할 만합니다. NER 태스크에서 BERT의 마지막 4개 hidden layer를 연결하여 feature로 사용한 경우 F1 96.1을 달성했는데, 이는 fine-tuning 방식의 96.4와 불과 0.3 차이입니다. 이는 BERT의 사전 학습된 표현 자체가 이미 매우 강력함을 의미합니다.
⚡️ 현실 세계의 임팩트
Google은 2019년 10월 BERT를 Google Search에 적용했으며, 2020년에는 영어 검색 쿼리의 거의 전부가 BERT 모델로 처리되었습니다. 이후 70개 이상의 언어로 확장되어, 전 세계 수십억 건의 검색 품질을 향상시켰습니다. 검색어의 의도를 문맥적으로 이해함으로써 전치사 하나의 차이도 구분할 수 있게 되었습니다.
BERT는 NLP 분야에서 가장 많이 인용된 논문 중 하나로, Google Scholar 기준 약 100,000회 이상 인용되었습니다. RoBERTa, ALBERT, DistilBERT, DeBERTa, ELECTRA 등 수십 개의 후속 변형 모델이 BERT 위에 구축되었으며, Hugging Face Transformers 라이브러리에서 가장 많이 다운로드되는 모델 카테고리입니다.
의료(BioBERT, ClinicalBERT), 금융(FinBERT), 법률(Legal-BERT), 과학(SciBERT) 등 거의 모든 전문 분야에서 도메인 특화 BERT 모델이 개발되어 실무에 투입되었습니다. Wayfair는 고객 리뷰 분석에, Prosus는 금융 문서 감성 분석에 BERT를 사용하는 등 산업 현장에서도 광범위하게 채택되었습니다.
BERT는 'pre-train & fine-tune' 패러다임을 NLP의 기본 접근법으로 확립했으며, 이 패러다임은 이후 GPT 시리즈, T5, 그리고 현재의 대규모 언어 모델(LLM) 시대의 토대가 되었습니다. BERT 없이는 현재의 ChatGPT, Claude 같은 모델이 등장하기까지의 기술적 계보를 설명하기 어렵습니다.
☝️ 연구의 계보
BERT는 두 가지 흐름의 교차점에서 탄생했습니다. 하나는 Vaswani et al.의 Transformer(2017)가 제공한 self-attention 기반 아키텍처이고, 다른 하나는 ELMo(2018)와 OpenAI GPT(2018)가 개척한 사전 학습 언어 모델의 흐름입니다. BERT는 Transformer의 encoder를 양방향으로 사전 학습한다는 핵심 아이디어로 이 두 흐름을 통합했습니다.
BERT 이후 NLP는 폭발적으로 진화합니다. RoBERTa(2019)는 학습 전략을 최적화하고 NSP를 제거하여 성능을 끌어올렸고, ALBERT(2019)는 파라미터 효율을, DistilBERT(2019)는 추론 속도를 개선했습니다. T5(2019)는 모든 NLP 태스크를 text-to-text로 통합했고, GPT-3(2020)는 스케일링을 극단까지 밀어붙여 few-shot/zero-shot 학습의 가능성을 열었습니다. BERT가 증명한 '대규모 사전 학습의 위력'은 이 모든 후속 연구의 출발점이었습니다.
🫸 강점과 한계
[강점] 하나의 통합 아키텍처로 11개 이질적인 NLP 태스크에서 SOTA를 달성 — 태스크별 복잡한 아키텍처 설계가 불필요해졌다는 점에서 패러다임 전환
[강점] 양방향 사전 학습이 단방향 대비 일관되게 우월함을 정량적으로 입증 — ablation study의 설계가 체계적이며 각 구성요소의 기여를 명확히 분리
[강점] 코드와 사전 학습 모델을 완전 공개하여 재현성과 후속 연구의 진입 장벽을 대폭 낮춤 — 이것이 BERT 변형 모델의 폭발적 증가로 이어짐
[한계] BERT-Large 사전 학습에 64개 TPU로 4일이 소요되며, 이는 당시 대부분의 연구 기관이 재현할 수 없는 규모 — 대규모 컴퓨팅 자원에 대한 의존성 문제를 제기
[한계] 최대 512 토큰의 입력 길이 제한이 있어 긴 문서 처리에 부적합 — 이후 Longformer, BigBird 등이 이 문제를 해결하기 위해 등장
[한계] MLM의 15% 마스킹 비율로 인해 학습 효율이 autoregressive 모델 대비 낮음 — 후속 연구인 ELECTRA가 이 비효율성을 replaced token detection으로 개선
📄 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding [Submitted on 11 Oct 2018 (v1), last revised 24 May 2019 (this version, v2)] Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova
안녕하세요 제이슨입니다!🤗 오늘 다이제스트 어땠나요?
코멘트가 있으시면 저에게 LinkedIn DM으로 알려주세요.
피드백은 향후 양질의 뉴스래터 컨텐츠 퀄리티 향상에 큰 도움이 됩니다! 🙌
최신 논문을 씹고 뜯고 소화하는 PaperGOAT — 🗞️🐐
Greatest of All Time — It’s You🫵
AI 엔지니어 3,000명이 아침마다 여는 논문 브리핑⚡️
유료급 퀄리티, 하지만 무료❗️
최신 AI 논문 요약 뉴스래터를 매일 받아보세요📩

