자연어처리 - 언어모델링(LM)


NLP - Language Modeling (LM)

언어모델 (LM)이란 문장의 확률을 나타낸 모델

  • 문장 자체의 출현 확률을 예측 하거나,
  • 이전 단어들이 주어졌을 때 다음 단어를 예측하기 위한 모델

예시)버스 정류장에서 방금 버스를 ㅇㅇㅇ.

1)사랑해

2)고양이

3)놓쳤다

4)사고남

우리의 머릿속에는 단어와 단어 사이의 확률이 우리도 모르게 학습되어 있다.

  • 대화를 하다가 정확하게 못들어도 대화에 지장 없음

많은 문장들을 수집하여, 단어와 단어 사이의 출현 빈도를 세어 확률을 계산

궁극적인 목표는 우리가 일상 생활에서 사용하는 언어의 문장 분포를 정확하게 모델링 하는 것

  • 특정 도메인의 문장 분포를 파악하기 위해서 해당 분야의 말뭉치를 수집하기도한다.

한국어 NLP가 왜 어렵나 ?

  • 단어와 단어 사이의 확률을 계산하는데 불리하게 작용
  • 1) 단어의 어순이 중요하지 않다.
  • 2)또는 생략이 가능하다.
    • 예시) 나는 학교에 갑니다 버스를타고 = 나는 버스를 타고 학교에 갑니다.
  • 확률이 퍼지는 현상
    • ‘타고’다음에 나타날 수 있는 단어들은 ‘.’, ‘학교에’, ‘나는’ 3개이기 때문
  • 접사를 따로 분리해주지 않으면 어휘의 수가 기하급수적으로 늘어난다..ㅎㄷ ㄷ

LM의 적용분야(Applications)

1)Speech Recognition : Acoustic Model과 결합하여, 인식된 음속의 시컨스에대해 좀 더 높은 확률을 갖는 시퀀스로 보완

2)Machine Translation : 번역 모델과 결합하여, 번역된 결과 문장을 자연스럽게 만듦

3)OCR : 인식된 character candidate sequence에 대해서 좀 더 높은 확률을 갖는 sequence를 선택하도록 도움

4) NLG Tasks : 뉴스기사 생성 + 챗봇, 검색어 자동 완성 등등

-> LM 한 가지만 가지고 서비스를 만드는 경우는 드문데 다른 것들과 결합되어 매우 중요한 역할을 하게 되었다.

이 글이 도움이 되셨다면 추천 클릭을 부탁드립니다 :)

Buy me a coffeeBuy me a coffee





© 2020 modified by Tae You Kim

Powered by "shoman2"