반응형
- 언어 모델링(Language Modeling)
- Input: 하나의 문장
- Output: Input 문장에 대한 확률
- 텍스트 분류 문제와 달리, 비지도학습입니다.
- 하지만, 순서가 있는 지도학습으로 문제를 바꿔서 풀 수 있습니다.
- Autoregressive language modelling (자기회귀 언어 모델링)
- Sequence 가 주어졌을 때 이 문장에게 점수를 부여 하는 방법입니다.
- 이전 토큰이 나왔을때 다음 토큰이 나올 확률을 계산하는 작업과 동일합니다.
- 이렇게 정의 하면서 비지도학습 문제를 지도학습으로 푸는 문제로 변하게 됩니다.
- 즉, 이전에 공부했던 텍스트 분류 문제와 같아지는데, input 은 이전에 나온 토큰, output은 다음에 나올 토큰을 예측 하는 것입니다.
- 또한, 문장에 점수(Score)를 부여하는 방식은 인간이 말하는 사고 방식과 동일합니다.
- 점수는 음의 최대 우도(negative log likelihood)로 측정합니다.
N-Gram Language Models
- 인공 신경망 이전에 어떻게 이 문제를 해결했는지 살펴보는 시간입니다.
- n-gram이란 주어진 텍스트 샘플의 연속적인 n 개 항목을 뜻합니다.
- n-gram probability:
- 주어진 N 개의 토큰에 대하여, 토큰 x 가 나올 수 있는 확률은 이전 N개의 토큰과 토큰 x 의 결합확률을 이전 N개의 토큰들과 등장 할 수 있는 모든 토큰들의 결합확률 합으로 나눈 것입니다.
- n-gram probability 의 최대우도추정(Maximum Likelihood Estimation) 과정을 거칩니다. 확률을 추정하는 과정을 등장횟수로 대체하여 계산합니다.
- 어떤 n-gram (x−N,x−N+1,⋯,x−1,x) 의 등장 횟수를 셉니다. 이를 c(x−N,x−N+1,⋯,x−1,x) 라고 하겠습니다.
- 주어진 n-gram 에서 나올 수 있는 모든 경우의 수 (x−N,x−N+1,⋯,x−1,?) 의 등장 횟수를 셉니다.
- 따라서 등장 확률은 p(x∣x−N,x−N+1,⋯,x−1)=∑x′∈Vc(x−N,x−N+1,⋯,x−1,x′)c(x−N,x−N+1,⋯,x−1,x) 입니다.
- 하지만 이 방법은 두 가지 문제점이 존재합니다.
- 데이터 희소성(data sparsity) 문제: 데이터가 희소할 경우 일반화가 어렵습니다.
- 처음 보는 단어가 등장하면, 이전에 데이터에 존재 하지 않았기 때문에 확률이 0이 됩니다.
- 장기의존성(long-term dependencies)을 캡쳐할 수 없습니다.
- n 개의 토큰만 조회하기 때문에, 긴 문장에 대한 다음 토큰은 추론이 불가능 합니다.
- 데이터 희소성(data sparsity) 문제: 데이터가 희소할 경우 일반화가 어렵습니다.
- 장기 의존성 문제를 해결하기 위해 조금더 떨어진 토큰간의 상관 관계를 보려면 n 을 늘려야하는데, 그러면 데이터 희소성 문제가 발생합니다.
- 해결방법:
- 데이터 희소성 문제: 셀수가 없기 때문에 문제가 되는 것입니다.
- Smoothing: 작은 상수 항을 더해주는 방법 입니다.
- Back off: Count 가 0이 나올시에 측정하는 n을 하나씩 줄여서 다시 Count합니다.
- 장기의존성 문제
- n-gram probability 방식으로 해결 할 수가 없습니다.
- 데이터 희소성 문제: 셀수가 없기 때문에 문제가 되는 것입니다.
- 직접 구현하지 않고 KenLM 패키지를 사용하는 것이 좋습니다.
본 내용은 부스트코스 조경현 교수의 딥러닝을 이용한 자연어 처리 수업 내용입니다.
반응형
'Data Science > NLP' 카테고리의 다른 글
한국어 텍스트 분석기 KoNLPy 쉽게 설치하기 (간단 방법 완벽 정리) (0) | 2022.12.06 |
---|---|
Neural N-Gram Language Model (0) | 2022.03.30 |
CBoW & RN & CNN & Self Attention & RNN (0) | 2022.03.28 |
How to represent sentence & token (0) | 2022.03.28 |
Text classification Overview (0) | 2022.03.28 |
댓글