공부 정리 블로그
[Chapter9] 언어모델(3)- 카테고리 기반 언어모델 본문
대충 훑고 지나감
𝑃(𝑤_𝑖|𝑤_(𝑖−2),𝑤_(𝑖−1)) = 𝑃(𝑐_𝑖|𝑐_(𝑖−2),𝑐_(𝑖−1)𝑃(𝑤_𝑖|𝑐_𝑖)
ㅇ 𝑃(𝑤_𝑖|𝑤_(𝑖−2),𝑤_(𝑖−1))
- trigram의 경우 10^(5*3)개를 추정해야하는데, 데이터 부족 문제가 생기므로 많은 tuple 0을 가지지만 자연 발화시 나타나는 경우가 많음
ㅇ 𝑃(𝑐_𝑖|𝑐_(𝑖−2),𝑐_(𝑖−1)𝑃(𝑤_𝑖|𝑐_𝑖)
- 품사(pos : part of speech)
ex) a beautiful flower -> 관사-형용사-(명사일 확률과 flower일 확률은?) parameter 수를 줄여서 안정적인 추정이 가능해짐(MB수준으로 경량화 가능)
𝑐_(𝑖−2),𝑐_(𝑖−1),𝑐_𝑖는 단어열 𝑤_(𝑖−2),𝑤_(𝑖−1),𝑤_𝑖에 대응하는 카테고리열
ㅇ 카테고리기반언어모델의주요문제:
- 카테고리 선택 방법( 예: 품사)
- 단어가 하나의 카테고리에만 속하는가? (예: 명사 can은 ‘깡통’, 조동사 can은 ‘할수있다’)
- 모델 성능
9.2.1 품사 기반 카테고리 언어모델 - 개체명(Named Entity : 고유명사)
ㅇ 사람, 위치, 제품 등과 같이 적절한 이름으로 명명할 수 있는 실제 개체를 말함
- 개체명은 개체의 인스턴스로 볼 수 있음
예: ‘New York City’ 는a ‘city’의 인스턴스
ㅇ 개체명인식(NER)에 활용
- NER: 특정 유형의 개체 혹은 텍스트에서의 관계를 참조하는 구를 식별
단어 카테고리 자동 생성
기본 알고리즘( 어휘크기: |V|:20000,카테고리수: K:1000 )
1. Unigram 통계 생성(단어 별 빈도수 측정)
2. (초기화) 가장 빈도가 높은 단어를 카테고리 1에 매핑. 그 다음 높은 빈도의 단어를 카테고리 2에 매핑. 같은 방법으로 K-1번째 카테고리까지 매핑. (K-1개의 각 카테고리들은 1개의 단어만 매핑되어 있음)
3. (초기화) 나머지 단어들(총 |V|-(K-1))을 모두 K번째 카테고리에 매핑
4. 현재의 단어-카테고리 매핑상에서 모든 가능한 카테고리 이동에 대하여 (총 |V|(K-1)99개) 각 이동을 적용했을 때의 perplexity 변화를 측정함
5. 4의 과정에서 perplexity를 가장 낮추어주는 이동을 선택하고 이를 적용한다
6. Perplexity를 낮추는 이동이 없을 때 까지 4-5의 과정을 반복한다
장점
1. 언어에 대해 몰라도 만들 수 있음
2. perplextity가 가장 낮은 모델을 보장
'대학원 수업 > 음성인식' 카테고리의 다른 글
[Chapter10] WFST(2) (0) | 2023.06.19 |
---|---|
[Chapter8] 음향모델(3) - DNN 기반 (0) | 2023.06.17 |
[Chapter8] 음향모델(2) - Viterbi Algorithm (0) | 2023.06.17 |
[Chapter8] 음향모델(1) - HMM (1) | 2023.06.17 |
[Chapter7] multi-Head Attention (1) | 2023.06.17 |