본 논문에서는 한영 통계기반 기계번역에서 한국어 문장 길이의 변화에 따른 번역 성능의 변화를 분석하고자 한다. 일반적으로 통계기반 기계번역은 정렬기법을 이용하는데 문장의 길이가 길수록 많은 변형(distortion)이 이루어진다. 특히 한국어와 영어처럼 어순이 매우 다를 경우, 문장 길이의 변화에 따라 그 변형이 더욱 심할 수 있다. 본 논문에서는 이러한 성질이 통계기반 기계번역에 어떠한 영향을 주는지를 실험적으로 살펴보고자 한다. 본 논문에서 비교적 잘 정렬된 203,310개의 문장을 학습데이터로 사용하였고, 세종 병렬 말뭉치로부터 89,309개의 문장을 추출하여 실험데이터로 사용하였다. 실험데이터는 한국어 문장의 길이에 따라 5구간($1{\sim}4,\;5{\sim}8,\;9{\sim}13,\;14{\sim}19,\;20{\sim}n$ 개)로 나뉘었다. 각 구간은 가능한 문장의 수가 비슷하도록 하였으며, 17,126, 18,507, 20,336, 17,884, 15,456개의 문장이 포함되었다. 데이터들은 모두 어절단위로 토큰을 나누었다. 본 논문에서는 한영 번역을 중심으로 평가되었다. 첫 번째 구간에서 가장 좋은 성능인 0.0621 BLEU를 보였으며, 마지막 구간에서 가장 좋지 않은 0.0251 BLEU를 보였다. 이는 문장의 길이가 길수록 변역 성능이 좋지 않음을 알 수 있었다. 문장이 길수록 구가 길어지고 구간의 수식이 복잡해지므로 번역의 성능은 점차 떨어진다. 이것을 볼 때, 구번역을 먼저 한 후, 다시 문장 번역을 한다면 좀 더 높은 기계번역의 성능을 기대할 수 있을 것이다.
본 논문에서는 한영 통계기반 기계번역에서 한국어 문장 길이의 변화에 따른 번역 성능의 변화를 분석하고자 한다. 일반적으로 통계기반 기계번역은 정렬기법을 이용하는데 문장의 길이가 길수록 많은 변형(distortion)이 이루어진다. 특히 한국어와 영어처럼 어순이 매우 다를 경우, 문장 길이의 변화에 따라 그 변형이 더욱 심할 수 있다. 본 논문에서는 이러한 성질이 통계기반 기계번역에 어떠한 영향을 주는지를 실험적으로 살펴보고자 한다. 본 논문에서 비교적 잘 정렬된 203,310개의 문장을 학습데이터로 사용하였고, 세종 병렬 말뭉치로부터 89,309개의 문장을 추출하여 실험데이터로 사용하였다. 실험데이터는 한국어 문장의 길이에 따라 5구간($1{\sim}4,\;5{\sim}8,\;9{\sim}13,\;14{\sim}19,\;20{\sim}n$ 개)로 나뉘었다. 각 구간은 가능한 문장의 수가 비슷하도록 하였으며, 17,126, 18,507, 20,336, 17,884, 15,456개의 문장이 포함되었다. 데이터들은 모두 어절단위로 토큰을 나누었다. 본 논문에서는 한영 번역을 중심으로 평가되었다. 첫 번째 구간에서 가장 좋은 성능인 0.0621 BLEU를 보였으며, 마지막 구간에서 가장 좋지 않은 0.0251 BLEU를 보였다. 이는 문장의 길이가 길수록 변역 성능이 좋지 않음을 알 수 있었다. 문장이 길수록 구가 길어지고 구간의 수식이 복잡해지므로 번역의 성능은 점차 떨어진다. 이것을 볼 때, 구번역을 먼저 한 후, 다시 문장 번역을 한다면 좀 더 높은 기계번역의 성능을 기대할 수 있을 것이다.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
특히 한국어와 영어처럼 어순이 매우 다를 경우, 문장의 길이가 길수록 그 변형이 더욱 심해진다. 본 논문에서는 이러한 성질이 통계기반 기계 번역에 어떠한 영향을 주는지를 실험을 통하여 살펴보고자 한다.
제안 방법
실험 데이터는 비교적 정확하게 구축된 세종 병렬말 뭉치1 2)를 이용하였으며, (표 1)과 같이 구성되었다. 길이에 따른 번역의 성능을 관찰하기 위해서 실험말뭉치는 어절의 수에 따라 5개의 구간으로 나누었고, (표 1)에서 보아 알 수 있듯이 각 구간의 문장수는 가능한 한 비슷하도록 조절하였다. 학습 데이터의 경우 203, 310개의 문장이 각 구간별로 7, 110, 22, 724, 38, 025, 64, 023, 70, 430 개로 구간이 길어질수록 문장의 양이 많아지는 분포를 가진다.
구간은 어절을 단위로 나누고 실험과 학습을 할 때에는 번역의 성능을 높이기 위해 토근 단위로 나누었다. 이때 실험 데이터와 학습 데이터의 한글 데이터는 형태소 단위로 토큰을 나누고, 영어 데이터는 축약된 동사들을 분리하고 어절 단위로 토큰을 나누었다. 학습데이터의 토큰수는 영어 120, 833개, 한글 107, 836개이고 실험데이터의 경우 각 구간별로 영어는 9, 443, 15, 634, 21, 167, 22, 487, 23, 644개, 한글은 9, 198, 15, 758, 21, 141, 22, 891, 25, 187개이다.
대상 데이터
본 논문에서 사용되는 통계기반 기계 번역 시스템의 구성은 (그림 1)과 같으며 크게 학습 시스템, 번역시스템 평가시스템으로 구성된다. 학습시스템은 병렬 말 뭉치 구축과 번역모델 학습으로 이루어진다.
이것은 기사 번역 내용을 추출한 것이 주가된다. 실험 데이터는 비교적 정확하게 구축된 세종 병렬말 뭉치1 2)를 이용하였으며, (표 1)과 같이 구성되었다. 길이에 따른 번역의 성능을 관찰하기 위해서 실험말뭉치는 어절의 수에 따라 5개의 구간으로 나누었고, (표 1)에서 보아 알 수 있듯이 각 구간의 문장수는 가능한 한 비슷하도록 조절하였다.
또한 실험 데이터에서 영어 문장을 추출하여 평가시스템의 입력인 영어 정답 문장으로 사용하였다. 실험에서 사용된 번역 성능의 측도로는 누적 BLEU3)를 사용하였다(표 1). (표 2)는 각 구간별미등록어의 수를 나타낸다.
학습 데이터는 [15]에 의해서 구축된 병렬말 뭉치를 이용하였으며, 이 중에서 비교적 잘 정렬된 병렬문장 203, 310개를 이용하였다. 이것은 기사 번역 내용을 추출한 것이 주가된다.
길이에 따른 번역의 성능을 관찰하기 위해서 실험말뭉치는 어절의 수에 따라 5개의 구간으로 나누었고, (표 1)에서 보아 알 수 있듯이 각 구간의 문장수는 가능한 한 비슷하도록 조절하였다. 학습 데이터의 경우 203, 310개의 문장이 각 구간별로 7, 110, 22, 724, 38, 025, 64, 023, 70, 430 개로 구간이 길어질수록 문장의 양이 많아지는 분포를 가진다. 구간은 어절을 단위로 나누고 실험과 학습을 할 때에는 번역의 성능을 높이기 위해 토근 단위로 나누었다.
이때 실험 데이터와 학습 데이터의 한글 데이터는 형태소 단위로 토큰을 나누고, 영어 데이터는 축약된 동사들을 분리하고 어절 단위로 토큰을 나누었다. 학습데이터의 토큰수는 영어 120, 833개, 한글 107, 836개이고 실험데이터의 경우 각 구간별로 영어는 9, 443, 15, 634, 21, 167, 22, 487, 23, 644개, 한글은 9, 198, 15, 758, 21, 141, 22, 891, 25, 187개이다.
이론/모형
번역 모델 학습은 널리 잘 알려진 도구인 GIZA++[9]을 이용해서 학습한다. (그림 1)에 자세히 표현하지 않았지만 번역 모델은 GIZA++에 의해서 학습된 단어번역모델이외에 언어 모델도 포함되어 있는데 이는 [16]를 이용해서 학습되었다. 번역시스템은 한국어 문장을 입력하여 영어문장을 생성하는 시스템으로 본 논문에서는 PARAOH[16]을 이용하였다.
또 다른 방법인 A* 알고리즘의 일종인 빔 탐색법은 계산된 확률값이 허용된 범위 내에 있을 경우에만 탐색을 한다. 그리고 또 다른 방법으로는 FST를 이용하는 방법과 동적 프로그래밍을 이용하는 방법들이 있으며, 본 논문에서는 PHARAOH[13]을 이용하였다.
단어 정렬은 이 자체로 많은 응용분야를 가지고 있는데, 대역사전의 자동 생성[7], 의미모호성 해소[8] 등이 있다. 단어 정렬의 도구로는 GIZA++[9], k-vec[10], PWA[11] 등이 있으며, 본 논문에서는 GIZA++를 사용하였다.
병렬말 뭉치 구축은 [15] 에서 제안된 방법으로 이용해서 다양한 병렬문서로 터 한영 병렬말뭉치를 구축한다. 번역 모델 학습은 널리 잘 알려진 도구인 GIZA++[9]을 이용해서 학습한다. (그림 1)에 자세히 표현하지 않았지만 번역 모델은 GIZA++에 의해서 학습된 단어번역모델이외에 언어 모델도 포함되어 있는데 이는 [16]를 이용해서 학습되었다.
(그림 1)에 자세히 표현하지 않았지만 번역 모델은 GIZA++에 의해서 학습된 단어번역모델이외에 언어 모델도 포함되어 있는데 이는 [16]를 이용해서 학습되었다. 번역시스템은 한국어 문장을 입력하여 영어문장을 생성하는 시스템으로 본 논문에서는 PARAOH[16]을 이용하였다. 평가시스템은 NIST에서 공개된 기계번 역 평가시 스템을 사용하였다1).
학습시스템은 병렬 말 뭉치 구축과 번역모델 학습으로 이루어진다. 병렬말 뭉치 구축은 [15] 에서 제안된 방법으로 이용해서 다양한 병렬문서로 터 한영 병렬말뭉치를 구축한다. 번역 모델 학습은 널리 잘 알려진 도구인 GIZA++[9]을 이용해서 학습한다.
본 논문에서는 문장길이 구간별 기계 번역의 성능을 평가하였다 단어 정렬에는 GIZA++을 사용하였으며, 번역기로는 PHARAOH를 사용하였다. 약 8만개의 문장 대역 쌍을 이용하여 학습하였으며, 약 9만개의 문장대 역 쌍을 학습데이터를 문장 길이별로 5개의 구간으로 나누어 번역성능을 평가하였다 1~4개의 어절로 이루어진 첫 번째 구간이 0.
그러나 최근에 와서 컴퓨터의 기술이 발전되고 또 대량의 병렬 말 뭉치들이 쉽게 구축할 수 있게 되면서 다시 활발한 연구가 시작되었다. 통계기반 기계번역의 기본적인 개념은 Shannon의 정보 이론에 기반을 두고 있으며, 정렬기법을 이용하여 기계번역을 모델링하였다 (식 1)은 정렬기법을 이용한 통계기반 기계번역 모델이다.
번역시스템은 한국어 문장을 입력하여 영어문장을 생성하는 시스템으로 본 논문에서는 PARAOH[16]을 이용하였다. 평가시스템은 NIST에서 공개된 기계번 역 평가시 스템을 사용하였다1).
성능/효과
PHARAOH를 사용하였다. 약 8만개의 문장 대역 쌍을 이용하여 학습하였으며, 약 9만개의 문장대 역 쌍을 학습데이터를 문장 길이별로 5개의 구간으로 나누어 번역성능을 평가하였다 1~4개의 어절로 이루어진 첫 번째 구간이 0.0621 BLEU로 가장 큰 값을 가지고 문장의 길이가 길어질수록 그 값이 점차 낮아져서, 20개 이상의 어절로 이루어진 문장의 경우 그 번역 성능이 0.0251 BLEU 로 가장 낮았다. 학습 데이터의 경우 신문 기사의 영역에서 추출되었고, 실험 데이터는 전 영역에서 추출된 것이라, 서로 다른 영역이란 점에서 전체적인 성능이 낮은 편이다.
후속연구
병행되어야 할 것이다. 본 논문 실험결과를 적용하면 구 번역이 선행된 문장 번역의 효용성이 평가받을 수 있다고 생각된다.
앞으로 더 많은 학습 데이터로 구간별 성능 평가를 시도하고, 좀 더 세분화된 문장길이별로 기계 번역의 성능을 평가하고, 언어구조가 비슷한 언어간에도 이와 같은 실험을 병행되어야 할 것이다. 본 논문 실험결과를 적용하면 구 번역이 선행된 문장 번역의 효용성이 평가받을 수 있다고 생각된다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.