조건부 무작위장(Conditional Random Field)

•
2026년 10월 25일 발행•2026년 10월 25일 수정
요약

관측열이 주어졌을 때 레이블열의 조건부 확률을 직접 모델링하는 판별적 확률 그래프 모델

고급
조건부 확률과 확률 그래프 모델, 로그 우도 최적화에 대한 이해가 필요하며, 순방향-역방향 알고리즘과 비터비 알고리즘 같은 동적 계획법을 알아야 한다.

#개념

조건부 무작위장(Conditional Random Field, CRF)은 관측열 $X$가 주어졌을 때 레이블열 $Y$의 조건부 확률 $P(Y \mid X)$를 직접 모델링하는 판별적 확률 그래프 모델이다. 2001년 Lafferty, McCallum, Pereira가 순차 데이터의 분할과 레이블링을 위해 제안했으며, 개체명 인식과 품사 태깅 같은 시퀀스 레이블링(Sequence Labeling)의 대표 모델로 자리 잡았다.
이름의 무작위장은 마르코프 무작위장(Markov Random Field, MRF)에서 왔다. MRF는 무향 그래프 위에 놓인 확률 변수의 집합으로, 각 변수는 그래프에서 이웃한 변수를 통해서만 나머지 변수와 상호작용한다. CRF는 이 MRF를 관측 $X$에 조건부로 정의한 것이어서, $X$ 자체의 분포는 모델링하지 않고 레이블 사이의 의존 구조와 관측이 레이블에 주는 영향만 학습한다.
CRF를 이해하는 핵심은 생성 모델과 판별 모델의 차이이다. 확률 모델은 입력과 출력의 결합 분포를 학습하는지, 입력이 주어졌을 때 출력의 조건부 분포만 학습하는지에 따라 나뉜다. 같은 순차 레이블링 문제라도 두 모델은 무엇을 확률로 표현하는지가 달라 사용할 수 있는 특징과 가정이 크게 달라지며, 그 차이는 다음과 같다.
생성 모델과 판별 모델의 비교
  • 생성 모델(Generative Model): 은닉 마르코프 모델(Hidden Markov Model, HMM)처럼 결합 확률 $P(X, Y)$를 모델링하고 베이즈 규칙으로 $P(Y \mid X)$를 구한다. 관측의 생성 과정을 가정해야 하므로 관측 사이의 독립 가정이 필요하다.
  • 판별 모델(Discriminative Model): CRF처럼 $P(Y \mid X)$를 직접 모델링한다. 관측 분포를 설명할 필요가 없어 앞뒤 단어, 접두사·접미사, 사전 포함 여부처럼 서로 겹치고 상관된 특징을 자유롭게 넣을 수 있다.
  • 두 모델의 관계: 선형 체인 CRF는 HMM과 같은 그래프 구조를 가진다. HMM과 CRF의 관계는 나이브 베이즈와 로지스틱 회귀의 관계를 순차 구조로 확장한 것과 같다.
가장 널리 쓰이는 형태는 레이블이 사슬 모양으로 연결된 선형 체인 CRF(Linear-chain CRF)이다. 길이 $T$의 입력 $X$와 레이블열 $Y = (y_1, \dots, y_T)$에 대해 조건부 확률은 $P(Y \mid X) = \frac{1}{Z(X)} \exp\left(\sum_{t=1}^{T} \sum_{k} \lambda_k f_k(y_{t-1}, y_t, X, t)\right)$로 정의된다. 여기서 $f_k$는 특징 함수, $\lambda_k$는 학습되는 가중치이며, 이 식은 다음 요소로 이루어진다.
선형 체인 CRF의 구성 요소
  • 특징 함수(Feature Function): $f_k(y_{t-1}, y_t, X, t)$는 이전 레이블, 현재 레이블, 입력 전체, 위치를 받아 실수(주로 0 또는 1)를 반환한다. 예를 들어 현재 단어가 대문자로 시작하고 $y_t$가 B-PER이면 1을 반환하는 식이다.
  • 전이 특징(Transition Feature): $y_{t-1}$과 $y_t$의 조합에 대한 특징으로, I-PER 앞에는 B-PER이나 I-PER가 와야 한다는 식의 레이블 간 제약을 학습한다.
  • 상태 특징(State Feature): $y_t$와 입력 $X$의 조합에 대한 특징으로, 현재 위치 주변 단어나 형태 정보가 레이블에 주는 영향을 학습한다.
  • 분배 함수(Partition Function): $Z(X) = \sum_{Y'} \exp\left(\sum_{t} \sum_{k} \lambda_k f_k(y'_{t-1}, y'_t, X, t)\right)$는 가능한 모든 레이블열의 점수 합으로, 확률의 합이 1이 되도록 정규화한다.
가능한 레이블열의 수는 레이블 수 $L$에 대해 $L^T$로 늘어나므로 분배 함수를 직접 계산할 수 없다. 선형 체인 구조에서는 HMM과 같은 순방향 알고리즘으로 $O(TL^2)$에 계산할 수 있으며, 이 점이 선형 체인 CRF가 실용적으로 널리 쓰인 이유이다. 그래프에 순환이 있는 일반 CRF에서는 정확한 추론이 어려워 루프 신념 전파(Loopy Belief Propagation) 같은 근사 추론을 사용한다.
CRF가 등장한 직접적 동기는 최대 엔트로피 마르코프 모델(Maximum Entropy Markov Model, MEMM)의 레이블 편향 문제(Label Bias Problem)이다. MEMM은 각 시점에서 다음 상태 분포 $P(y_t \mid y_{t-1}, x_t)$를 지역적으로 정규화하므로, 후속 상태가 적은 상태는 관측과 무관하게 확률 질량을 그대로 넘겨주게 된다. 그 결과 관측 정보가 무시되고 전이 구조가 예측을 지배하는 편향이 생긴다.
CRF는 정규화를 시점별로 하지 않고 시퀀스 전체에 대해 한 번만 수행하는 전역 정규화(Global Normalization)를 사용한다. 각 시점의 점수는 확률일 필요가 없는 비정규화 값이므로, 어떤 위치의 강한 증거가 다른 위치의 결정에 영향을 줄 수 있다. Lafferty 등은 합성 데이터와 품사 태깅 실험에서 CRF가 MEMM보다 낮은 오류율을 보인다고 보고했다.
학습은 훈련 데이터의 조건부 로그 우도 $\sum_i \log P(Y^{(i)} \mid X^{(i)})$를 최대화하는 최대 우도 추정(Maximum Likelihood Estimation)으로 이루어지며, 과대적합을 막기 위해 가중치에 L2 또는 L1 정칙화를 더한다. 목적 함수는 오목 함수여서 전역 최적해가 보장되고, 기울기는 특징의 경험적 빈도에서 모델이 기대하는 빈도를 뺀 형태가 된다. 모델 기대값은 순방향-역방향 알고리즘으로 구한다.
최적화에는 초기에 반복 스케일링(Iterative Scaling)이 쓰였으나, 수렴이 빠른 준뉴턴 방법인 L-BFGS가 사실상 표준이 되었고 데이터가 크면 확률적 경사 하강법도 사용한다. 추론 단계에서는 $\arg\max_Y P(Y \mid X)$를 찾기 위해 비터비 알고리즘(Viterbi Algorithm)을 사용하며, 분배 함수는 모든 후보에 공통이므로 비정규화 점수만 비교하면 된다.
2010년대 중반 이후 CRF는 신경망과 결합한 형태로 주로 쓰인다. 사람이 설계하던 특징 함수 대신 신경망이 각 위치의 레이블 점수를 계산하고, CRF 층은 레이블 간 전이 행렬과 전역 정규화를 담당한다. 신경망과 CRF는 하나의 목적 함수로 함께 학습된다. 대표적인 결합 구조는 다음과 같다.
신경망과 결합한 CRF
  • BiLSTM-CRF: 양방향 LSTM이 문맥을 반영한 단어 표현을 만들고 그 위에 CRF 층을 얹은 구조이다. Lample 등(2016)은 문자 단위 표현을 함께 사용해 별도의 특징 공학 없이 개체명 인식에서 당시 최고 수준의 성능을 보였다.
  • BiLSTM-CNN-CRF: Ma와 Hovy(2016)가 제안한 구조로, 합성곱 신경망으로 문자 단위 특징을 추출해 단어 표현에 결합한 뒤 BiLSTM과 CRF로 레이블을 결정한다.
  • BERT-CRF: 사전 학습된 트랜스포머 인코더의 토큰 표현 위에 CRF 층을 둔다. 토큰별 소프트맥스만 쓸 때 생기는 I 태그가 B 태그 없이 시작하는 식의 비정상 레이블열을 줄여 준다.
CRF는 출력 사이의 구조적 의존성이 중요한 거의 모든 레이블링 문제에 적용되었다. 텍스트처럼 1차원 순서를 갖는 데이터에는 선형 체인 CRF가, 이미지처럼 2차원 격자 구조를 갖는 데이터에는 격자형 또는 완전 연결 CRF가 쓰이며, 주요 활용 분야는 다음과 같다.
주요 활용 분야
  • 개체명 인식(Named Entity Recognition): BIO 태깅 체계에서 레이블 간 문법을 전이 특징으로 학습하므로, 사람·기관·장소 이름의 경계를 일관되게 찾는다.
  • 품사 태깅(Part-of-Speech Tagging): 단어의 형태와 주변 문맥을 특징으로 쓰는 CRF는 HMM보다 학습 데이터에 없던 단어에 강하다.
  • 형태소 분석(Morphological Analysis): 한국어·일본어처럼 어절과 형태소 단위가 다른 언어에서 형태소 분할과 품사 결정을 함께 수행하는 데 쓰인다. 일본어 분석기 MeCab은 CRF로 사전 항목의 비용을 학습한다.
  • 이미지 분할(Image Segmentation): 모든 픽셀 쌍을 연결한 DenseCRF(Krähenbühl & Koltun, 2011)는 색과 위치가 비슷한 픽셀이 같은 레이블을 갖도록 유도하며, DeepLab 초기 버전에서 분할 경계를 다듬는 후처리로 쓰였다.
CRF는 레이블 의존성을 명시적으로 다룰 수 있지만, 학습과 추론 비용이 레이블 수의 제곱 $L^2$에 비례해 레이블 종류가 많으면 느려진다. 또한 선형 체인 CRF는 인접 레이블 사이의 의존성만 표현하므로 멀리 떨어진 레이블 간 일관성은 별도 구조로 다뤄야 한다. 대형 사전 학습 모델이 문맥을 충분히 반영하는 경우 CRF 층을 더해도 성능 향상이 작다는 보고도 있다.
그럼에도 CRF는 학습 데이터가 적거나 레이블 형식의 제약이 중요한 과제에서 여전히 유용하다. 전통적인 특징 기반 CRF는 CRFsuite와 sklearn-crfsuite로, 신경망 결합형은 pytorch-crf 같은 라이브러리로 손쉽게 구현할 수 있다. 상품명에서 브랜드·소재·색상을 추출하는 속성 추출처럼 결과 경계의 일관성이 중요한 서비스에서 자주 활용된다.

#관련 용어

은닉 마르코프 모델(HMM)
은닉 상태의 마르코프 전이와 상태별 관측 생성을 가정하는 생성적 순차 모델
특징 함수
레이블과 입력의 조합이 특정 조건을 만족하는지를 실수로 나타내는 함수
분배 함수
가능한 모든 레이블열의 점수 합으로 조건부 확률을 정규화하는 값
레이블 편향 문제
지역 정규화 모델에서 후속 상태가 적은 상태가 관측을 무시하고 확률을 넘겨주는 현상
개체명 인식
텍스트에서 사람·기관·장소 등 고유한 개체를 찾아 분류하는 작업
장단기 메모리(LSTM)
게이트 구조로 장기 의존성을 학습하는 순환 신경망으로, CRF와 결합해 시퀀스 레이블링에 쓰이는 모델

#직무 연관도

DA
Data Analyst
낮음
텍스트에서 추출된 개체·속성 결과의 품질과 오류 유형을 분석
DS
Data Scientist
높음
시퀀스 레이블링 모델을 설계하고 레이블 간 의존성을 반영한 구조화 예측 기법을 연구
DE
Data Engineer
보통
개체명 인식·속성 추출 모델에 CRF 층을 구현하고 비터비 디코딩을 서빙 환경에 최적화

#사용 사례

전자상거래금융의료인터넷 서비스자율주행
개요
조건부 무작위장은 출력 사이의 구조적 의존성이 중요한 레이블링 문제에서 쓰인다. 전자상거래에서는 상품명 속성 추출에, 금융에서는 계약서·공시 문서의 정보 추출에, 의료에서는 임상 기록의 개체명 인식에, 인터넷 서비스에서는 검색어 분석과 형태소 분석에, 자율주행에서는 영상 분할 결과의 경계 보정에 활용된다.
사례
전자상거래 플랫폼에서 판매자가 입력한 상품명을 형태소 단위로 나누고, BERT 인코더 위에 CRF 층을 둔 모델로 각 토큰에 브랜드·소재·색상·핏 태그를 BIO 형식으로 부여해 검색 필터와 추천에 쓰이는 상품 속성을 자동 추출한다.

#참고 자료

#추천 포스트

© 2024 diki All rights reserved.