기계 번역 시스템의 발전과 함께 외국어를 따로 공부하지 않더라도 전 세계 사람들과 의사소통을 할 수 있는 시대가 다가오고 있다. 인터넷 상의 온라인 번역 기술은 과거부터 존재했지만, 정밀도가 낮았다. 하지만 컴퓨터를 이용한 통계 및 계산 처리 능력이 향상되고, 인공 지능 분야의 기술적인 진보가 계속되며 기계 번역은 더 정확해졌다. 지금까지 기계 번역 분야에서는 규칙 기반의 기계 번역, 통계 기반의 기계 번역, 그리고 딥 러닝 알고리즘을 통한 인공 신경망 기반의 기계 번역까지 다양한 번역 기술이 개발됐다. 본 기사에서는 인간의 언어를 번역하기 위한 과거의 접근 방식부터 최근까지의 발전 과정을 알아보고, 새로운 기계 번역 기술의 등장과 그 원리에 대해서 살펴본다.

 

문법 규칙 활용한 초기의 번역 기술

기계 번역(Machine Trans-lation)은 컴퓨터를 이용해 인간이 사용하는 자연 언어를 다른 언어로 번역하는 일을 말한다. 자동 번역으로 부르기도 하며, 우리가 흔히 아는 구글 번역, 네이버 파파고를 포함해 SYSTRAN, 바벨피시, 빙 번역기 등 다양한 기계 번역기가 존재한다. 기계 번역은 제2차 세계대전 이후 연구 개발이 시작되었지만 1950년대에 들어서 미 국립과학재단의 워런 웨이버(Warren Weaver)가 기계 번역 연구 관련 지원 펀드를 조성하며 본격적으로 진척됐다. 이후 MIT, 워싱턴 대학, 미시건 대학, UC 버클리 등 미국의 주요 대학과 일본, 러시아, 프랑스 등 여러 나라에서 기계 번역 연구에 적극적인 관심을 가지게 되었다. 기계 번역 기술은 몇 가지 단계를 거치며 발전해 현재의 기술에 이르렀는데, 처음으로 도입된 방식은 규칙 기반 기계 번역(Rule-Based Machine Translation, RBMT)이었다. 이는 개발자가 컴퓨터 시스템 내부에 규칙화해둔 문법을 바탕으로 언어를 번역하는 방식이었다. 규칙 기반 기계 번역의 초기에는 직접적인 기계 번역(Direct Machine Translation) 방식을 이용해 문법을 규칙화했다. 하지만 직접적인 기계 번역 방식은 하나의 언어를 한국어, 영어, 불어 등으로 번역할 때 언어마다 다른 번역 알고리즘을 컴퓨터에 일일이 입력해야 하는 번거로움이 있었고, 이후 다국어를 보다 효과적으로 번역하기 위해 중간언어 기계 번역(Interlingual Machine Translation) 방식을 이용했다. 중간언어 기계 번역 방식은 각국의 언어를 모두 포함하는 가상의 중성 언어(Neutral Language)를 매개체로 활용했기 때문에 보다 적은 규칙으로 효율적인 번역이 가능했다. 이러한 규칙 기반 기계 번역은 알고리즘의 기초를 문법에 두기 때문에 번역의 정확성이 비교적 높다는 장점이 있었다. 그러나 개발 과정에서 언어학자가 중심이 되어야 구축이 가능했기 때문에 수많은 언어를 번역하는 시스템을 구현하기에는 개발 시간과 비용이 많이 든다는 한계 역시 존재했다.

 

인간의 추론을 모방한 예시 기반 번역

짧은 시기 안에 기계 번역이 성공적으로 개발될 것이라는 처음의 기대와 달리 1960년대 중반에 들어도 기계 번역의 성능은 낮은 수준에 머물렀다. 기계 번역 기술은 1990년 전후로 말뭉치 기반 기계 번역(Corpus-based Machine Translation)이 등장하면서 크게 발전하게 된다. 말뭉치 기반 기계 번역은 크게 예시 기반 기계 번역(Example-based Machine Translation)과 통계 기반 기계 번역(Statistical Machine Translation, SMT)으로 나뉜다.

예시 기반 기계 번역은 1984년 교토대학교의 나가오 마코토 교수가 처음 제안한 것으로, 번역한 원문과 번역문의 정보를 그대로 저장해두었다가 똑같은 문장의 번역 요청이 있을 시 저장한 정보를 활용하는 방식이다. 이러한 발상은 인간이 외국어를 배울 때 거치는 ‘유추’의 과정에서 착안한 것이다. 우리가 전혀 모르는 외국어를 처음 접하면, 복잡한 문법 이론을 배우기보다는 우선 그 언어의 가장 기본적인 문장을 암기한 뒤, 그 문장이 모국어로 쓰인 같은 내용의 문장과 어떻게 연결되는지 파악하는 데 집중한다. 예시 기반 기계 번역 과정에서도 먼저 번역 시스템에 다른 언어로 이루어진 한 쌍의 문장을 입력하고, 그 다음으로 입력한 문장에서 단어 하나만 바꾼 문장을 입력하는 과정을 반복함으로써 시스템이 두 문장의 공통점과 차이점을 파악하도록 한다. 이 과정을 통해 시스템은 해당 언어의 문장 구조와 두 언어의 단어가 대응되는 관계를 파악할 수 있다. 예시 기반 기계 번역은 1990년대 긍정적인 연구 결과가 다수 발표되며 인기를 끌었으나, 수많은 단어에 대한 동의어, 반의어 관계를 모두 시스템에 입력해야 하는 등 실용적인 구현에 한계가 있었다.

 

통계 기반의 번역, 주류로 자리 잡다

통계 기반 기계 번역은 기계 번역 역사의 초창기였던 1949년에 등장한 아이디어지만, 당시에는 만족스러운 결과를 보여주지 않았기에 주목받지 못했다. 그러나 1980년대 후반, IBM 왓슨 연구소에서 새로운 확률론적 기법을 적용하여 놀랄 만한 성과를 보여준 이후 통계 기반 기계 번역은 기계 번역의 주류 방법론으로 자리잡게 되었다. 통계 기반 기계 번역으로 사람들은 번역문을 이루는 구절의 반 이상을 거의 정확하게 번역할 수 있었으며, 이를 기반으로 2006년에는 그 유명한 구글 번역 서비스가 등장하는 등 다수의 검색 엔진 기업 등 IT 기업들이 기계 번역 개발에 적극적으로 뛰어들기 시작했다.

통계 기반 기계 번역은 언어학의 기존 개념에 의존하지 않은 채, 번역하고자 하는 언어에서 주어진 문장에 대응될 확률이 가장 큰 문장을 선택하는 작업으로 설명할 수 있다. 이를 위해 번역하고자 하는 문장을 단어 혹은 구절 단위로 분할하고, 각 단위를 다른 언어로 번역한 후 다시 문장으로 합치는 세 단계의 과정을 거친다. 다만 각 단위를 다른 언어로 번역할 때 그저 가능한 모든 경우를 동등하게 비교하는 것이 아니라, 실제 번역되는 언어의 문장에서 어떤 선택지가 더 빈번하게 사용되는지 확률로 나타내고, 더 큰 확률을 보이는 선택지에 가중치를 둔다. 이후 번역된 단위를 합칠 때에도 가능한 여러 조합을 번역될 언어로 쓰인 문장과 비교함으로써 가장 유사성이 높은 문장을 선택한다. 문장을 분할하는 단위로는 문맥까지 함께 고려할 수 있는 구절이 주로 사용된다.

하지만 통계 기반 기계 번역에도 몇 가지 어려움이 존재한다. 여기에는 번역될 문장이 정확한지 파악하는 모델을 구축하기 위해 충분한 데이터가 축적되어야 하며 두 언어의 어순이 다른 경우 각 단위를 순서에 맞춰 배열하기 어려운 점 등이 해당된다.

 

'단어 정렬' 등 여러 한계를 넘어서다

선풍적인 인기를 끌던 통계 기반 기계 번역은 2000년대 이후 딥 러닝과 결합하며 새로운 국면을 맞이한다. 시스템 구축에 필요한 통계 모델 등을 사람이 일일이 정하는 수고로운 과정을 거치지 않고도 인공 신경망을 통해 통계 기반 기계 번역의 단점들을 해결할 수 있게 된 것이다. ‘어제 놀이공원에 갔다’는 한국어 문장과 영어로 쓴 ‘I went to the amusement park yesterday’라는 문장에서 서로 대응되는 구절을 짝지으면, 영어 문장에서 ‘I’에 해당하는 주어는 한국어로 쓰인 문장에서 찾을 수 없다. 단어 정렬(Word Alignment)로 불리는 이 문제는 통계 기반 기계 번역이 극복해야 할 맹점 중 하나였는데, 단어 정렬을 포함한 여러 맹점들은 모두 인공 신경망을 사용해 보완할 수 있다.

 

인공 신경망, 새로운 번역 기술 되다

인공 신경망이 통계 기반 기계 번역을 보완하는 도구로써 사용되던 추세는 당시 몬트리올 대학교의 박사 후 과정 중에 있던 뉴욕대학교 조경현 교수 등이 2014년 발표한 논문을 계기로 역전되었다. 논문에서 제안한 RNN 인코더-디코더(RNN Encoder-Decoder)는 통계 기반 기계 번역의 성능을 향상하는 데도 쓰일 수 있지만, 스스로 새로운 기계 번역 기술로 거듭나며 인공 신경망 기반 기계 번역(Neural Based Machine Translation)의 시작을 알렸다. 기존의 여러 인공 신경망은 이전에 주어진 정보와 현재 주어진 정보를 종합적으로 판단하도록 설계되어 있지 않다. RNN(Recurrent Neural Network)은 이전 시점에서의 계산 결과가 뒤이은 시점의 입력으로 작용하도록 함으로써 기존 신경망의 한계를 극복하고자 고안되었다. 이러한 특성으로 인해 RNN은 일렬로 나타나는 데이터에서 패턴을 인식하는 데 탁월한 성능을 보인다. 기계 번역을 수행하기 위해서는 문장을 구성하는 단위를 벡터로 표현하는 과정을 거치며 이는 임베딩(Embedding), 혹은 인코딩(Encoding)으로 불린다. 문장 단위를 적절하게 임베딩하면 문장 단위 사이의 관계를 모델링할 수 있고, 이는 더 좋은 번역 성능으로 이어진다. RNN 인코더-디코더에서는 RNN에 문장 단위를 하나씩 입력함으로써 임베딩을 수행한다. 만일 이렇게 임베딩된 벡터를 또 다른 RNN에 입력해 그 역과정을 수행하도록 하되, 다만 번역하고자 하는 언어로 문장 단위가 출력되도록 하면 순전히 인공 신경망으로만 번역을 수행할 수 있을 것이다. 이는 병렬 말뭉치를 활용해 두 RNN을 학습시킴으로써 달성할 수 있다. 이러한 아이디어는 현재 인공 신경망에 기반한 기계 번역 서비스의 기본적인 토대가 되었다.

하지만 인공 신경망은 훈련하는 데 시간과 자원이 많이 소요된다는 점, 자주 쓰이지 않는 단어를 번역하는 데 취약하다는 점 등 아직 보완해야 할 점이 많다. 최근에는 기계 번역이 스스로 학습해 자신의 정확도를 향상하는 역 번역(Back Translation)과 디노이징(Denoising) 같은 기술도 개발되고 있다. 역 번역은 원문에서 나온 번역문을 다시 원문의 언어로 번역해서 기존 원문과 유사한지 확인함으로써 정확도를 개선하고, 디노이징은 역 번역 과정에서 문장이나 단어를 추가해 정확도를 개선한다. 인공 신경망이 어떤 원리로 번역의 성능을 향상하는지, 어떻게 하면 인공 신경망이 글의 맥락을 더 잘 파악하도록 할 수 있을지, 근원적인 물음에 답하며 현재의 기계 번역 기술은 또 한 번 전환점을 맞이할 것이다.

 

지구상에서 언어로 소통할 수 있는 동물은 사람뿐이다. 사람들은 언어를 사용하여 서로 교감하고 서로를 이해한다. 그렇지만 사람은 하나의 언어만을 사용하는 것은 아니기에 언어의 차이는 장막이 되기도 한다. 기계 번역은 사람과 사람 사이를 가로막는 장막을 걷고, 인류가 서로 소통하며 이해하기를 바랐던 이들의 결실이다. 그들의 노력은 지금도 계속되고 있다. 언젠가는 그 장막이 걷힐 날이 오기를 기대해본다.

참고문헌 |

Cho et al. (2014). Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation.
- Zhang et al. (2015). Deep Neural Networks in Machine. 

Translation: An Overview. IEEE Intelligent Systems, 30(5), 16-25.
- Hutchins. (2003). Machine translation: a concise history. 
- Nagao. (1984). A Framework of a Mechanical Translation Between Japanese and English by Analogy Principle.

저작권자 © 카이스트신문 무단전재 및 재배포 금지