[NLP] NER(Named Entity Recognition, 개체명 인식)

JAsmine_log·2025년 9월 2일
0

NER란?

NER은 문장에서 사람, 장소, 조직, 시간, 숫자 등 의미 있는 단위(개체, Entity)를 찾아내고 분류하는 작업
"이 문장 속에서 중요한 이름이나 값은 뭐지?"를 기계가 알아보게 하는 것

예시

문장:
**"스티브 잡스는 1976년에 애플을 공동 창업했다."**

NER 결과:

  • 스티브 잡스 → PER (사람, Person)
  • 1976년 → DATE (날짜/시간, Date)
  • 애플 → ORG (조직, Organization)

대표적인 태그 세트

NER 시스템은 보통 사전 정의된 개체 유형을 예측한다.
예:

  • PER : 인물(Person)
  • LOC : 위치(Location)
  • ORG : 조직(Organization)
  • DATE : 날짜(Date)
  • TIME : 시간(Time)
  • MONEY : 금액(Money)
  • PERCENT : 퍼센트(Percent)

데이터셋에 따라 더 세분화되기도 하고, 단순히 PER/LOC/ORG만 쓰는 경우도 있다.

어떻게 작동할까?

NER은 보통 시퀀스 라벨링(sequence labeling) 문제로 다룹니다.
즉, 문장을 토큰 단위로 쪼개서 각 토큰에 BIO 같은 라벨을 붙이는 방식이에요.

  1. 입력 문장을 토큰화 (예: "스티브", "잡스", "는", ...)
  2. 각 토큰에 대해 B-PER, I-PER, O, B-ORG 등 라벨을 예측
  3. 연속된 토큰을 합쳐 하나의 개체로 인식

NER 모델

NER은 전통적으로 CRF(Conditional Random Field) 같은 통계적 모델을 썼지만,
최근에는 딥러닝 기반이 많이 쓰인다:

  • BiLSTM-CRF : 양방향 LSTM + CRF
  • BERT 기반 NER : 사전학습 언어모델을 fine-tuning
  • GPT 계열 모델 : instruction 기반으로 NER 수행 가능

응용 분야

  • 챗봇 : 사용자 입력에서 이름/날짜/장소 추출
  • 검색엔진 : 쿼리에서 중요한 개체 뽑아 검색 개선
  • 문서 요약 : 문서 속 인물, 사건, 날짜 자동 추출
  • 의료/법률 텍스트 분석 : 질병명, 약품명, 법률명 등 인식
profile
Everyday Research & Development

0개의 댓글