160 likes | 330 Views
입력오류에 강인한 형태소 태깅 시스템. 포항공과대학교 정홍 교수. 차례. 개요 형태소 및 어절 생성모델 복호 알고리즘 실험결과 결론. 개요. 입력문장의 오류 연속음성인식기로부터 전파된 오류 . 자모의 삽입 / 탈락 / 치환 . 어절경계의 부정확한 위치 . 활발한 음운축약 . 형태소 분석 및 오류정정 병행 . 어절 이하의 단위에서는 순서제약 엄격. 어절 생성모델. HMM 을 이용해 모델링 . 상태집합 : 형태소 범주를 나타내는 태그집합 . 출력문자 : 해당 범주에 속하는 형태소 .
E N D
입력오류에 강인한형태소 태깅 시스템 포항공과대학교 정홍 교수
차례 • 개요 • 형태소 및 어절 생성모델 • 복호 알고리즘 • 실험결과 • 결론
개요 • 입력문장의 오류 • 연속음성인식기로부터 전파된 오류. • 자모의 삽입/탈락/치환. • 어절경계의 부정확한 위치. • 활발한 음운축약. • 형태소 분석 및 오류정정 병행. • 어절 이하의 단위에서는 순서제약 엄격.
어절 생성모델 • HMM을 이용해 모델링. • 상태집합: 형태소 범주를 나타내는 태그집합. • 출력문자: 해당 범주에 속하는 형태소. • 어절경계를 나타내는 상태 ‘/’포함. • 같은 어절에 속하는 형태소 쌍과 다른 어절에 속하는 것 구분. • 어절경계 오류 처리. • 오직 공백 문자만 출력.
(Cont’d) • 발생확률 • 태그 열: • 형태소 열: 태그 열 npp jcs / ncn jco / pvg ep ef 형태소 열 나 는 ^ 사과 를 ^ 먹 었 습니다
형태소 생성모델 • FST (Finite-State Transducer)를 이용해 음운현상 표현. ‘ㅂ’ 불규칙 현상: 어간의 종성 ‘ㅂ’과 어미의 ‘어’가 ‘워’로 변형. ㅝ:어 ㅇ:ㅂ/ ㅣ:ㅣ ㅂ + 어 = 워 ㄱ:ㄱ 좌측문맥 (left context) 우측문맥 (right context) ㅂ:ㅂ ㅓ:ㅓ ㅇ:ㅇ ‘어’로 시작하는 어미 집합
(Cont’d) • 발생확률 • 형태소 열: • 어휘문자 열: • 입력자모 열: • 상태 열:
(Cont’d) • 치환/탈락 오류 • 입력자모가 지정된 표층문자와 일치하지 않는 경우에도 0보다 큰 확률 할당. • 표층문자 집합에 공백(NULL) 포함. • 삽입 오류 • 어휘문자가 NULL인 self-loop 포함. • 원형 복원 • 용언의 활용이 음운현상의 대부분. • 부분어절을 미리 분석하여 사전에 저장.
복호 알고리즘 • 확률변수 간의 의존관계 t0 t0,t1 t1,t2 tL-1,tL 어절 HMM t1,m0 t2,m1 tL,mL-1 m0,m1,…,mL-1 h0,h1,…,hN-1 형태소 그래프 s0 s0,h0,s1 s1,h1,s2 sN-1,hN-1,sN 형태소 FST s0,h0,r0 s1,h1,r1 sN-1,hN-1,rN-1
(Cont’d) • MAP 복호 수행 • 주어진 입력에 대해 최대사후확률을 가지는 형태소 및 태그 열 결정.
(1) 형태소 그래프 생성 • Initialize CurStateValue() and PrevStateValue() • For each frame k • For each arc a = (sk-1, hk, sk) in morph FST • If rk equals to SurfSym(a) • Score = PrevStateValue(sk-1) • else • Score = PrevStateValue(sk-1) • If sk is a terminal state • MorphCompleted(Score, MorphLabel(sk), PrevBP(sk-1), k + 1) • If Score > CurStateValue(sk) • CurStateValue(sk) = Score • CurBP(sk) = PrevBP(sk-1) • Score = PrevStateValue(sk) • If Score > CurStateValue(sk) • CurStateValue(sk) = Score • CurBP(sk) = PrevBP(sk) // Substitution error processed // Insertion error processed
(Cont’d) // Deletion error processed • For each arc a = (sk-1, hk, sk) in morph FST • Score = CurStateValue(sk-1) • If Score > CurStateValue(sk-1) • CurStateValue(sk) = Score • CurBP(sk) = PrevBP(sk-1) • Copy PrevStateValue() into CurStateValue() and PrevBP() into CurBP(). • PrevStateValue(root) = 1 • PrevBP(root) = k + 1 MorphCompleted(P, Morph, BeginFrame, EndFrame) Morph generated with probability P BeginFrame EndFrame
(2) 어절 형성 및 분석결과 출력 • 비동기식 HMM 복호 • 비동기: 형태소를 이루는 자모의 개수가 다름[1]. • 형태소 그래프에 기재된 확률정보 활용[2]. • 축약된 두 개의 형태소 간 천이확률 고려. • 어절 이상의 수준에서는 어순이 자유로움. • 순서제약보다 의미론적 해석이 효과적.
실험결과 • 띄어쓰기 오류 • 입력: 사과를먹었습니다 • 분석결과: 사/과/를 ^ 먹/었/습니다. • 띄어쓰기 오류와 자모오류가 동시에 발생하는 경우 오분석 경향. • 의미분석 필요.
결론 • 신뢰도 향상 • 형태소 분석과정에서 얻은 확률 값을 태깅에 반영. • 계층구조 • 자모, 형태소, 어절을 형성함에 있어 유사한 구조의 연산수행. • 병렬처리를 위한 연구 필요.
참고문헌 [1] 김재훈, 임철수, 서정연, “은닉 마르코프 모델을 이용한 효율적인 한국어 품사의 태깅,”한국정보과학회논문지,제 22권, 제 1호, 136-146쪽, 95년 1월. [2] 김병창, 이근배, 이종혁, “한국어 연속음성인식을 위한 Viterbi 형태소 분석기,”정보과학회논문지(B),제 24권, 제 12호, 1493-1501쪽, 97년 12월.