구글 번역, 파파고는 어떻게 번역할까? 기계번역의 원리

6 분 소요

여행지 식당에서 번역 앱의 카메라를 메뉴판에 갖다 대면, 화면 속 외국어가 그대로 한국어로 바뀝니다. 간판도, 안내문도 마찬가지입니다. 불과 십몇 년 전만 해도 종이 사전을 한 장씩 넘기던 일이 이제는 카메라를 드는 동작 하나로 끝납니다. 그런데 번역기는 한국어 문법도 영어 문법도 배운 적이 없습니다. 그렇다면 무엇을 근거로 번역할까요? 이번 글에서는 기계번역이 거쳐 온 세 번의 큰 변화를 따라가며 그 원리를 정리하겠습니다.

1세대, 사람이 규칙을 가르치던 시절 #

가장 먼저 나온 방식은 단순하고 직관적입니다. 언어학자들이 문법 규칙과 사전을 통째로 컴퓨터에 입력하는 것입니다. “영어는 주어 다음에 동사가 오고, 한국어는 동사가 문장 끝에 온다” 같은 변환 규칙을 만들고, 단어는 사전에서 일대일로 바꿔 끼웁니다. 이것이 규칙 기반 번역입니다.

문제는 언어가 규칙보다 예외로 가득하다는 점입니다. 같은 “배"라도 먹는 배, 타는 배, 사람의 배가 다르고, “miss the boat"는 배를 놓쳤다는 뜻이 아니라 기회를 놓쳤다는 관용구입니다. 예외를 처리하는 규칙을 추가할수록 규칙끼리 충돌했고, 사람이 손으로 입력하는 속도는 언어가 변하는 속도를 따라가지 못했습니다. 수십 년을 다듬어도 품질은 “단어는 맞는데 문장은 아닌” 수준에 머물렀습니다.

2세대, 정답지 수백만 장에서 확률을 배우다 #

1990년대에 발상이 뒤집힙니다. 사람이 규칙을 가르치는 대신, 이미 사람이 번역해 둔 문장 쌍을 대량으로 모아 컴퓨터가 스스로 통계를 내게 한 것입니다. 같은 내용이 두 언어로 기록된 국제기구 회의록 같은 자료가 좋은 재료였습니다. 수백만 쌍을 비교하다 보면 “이 단어는 저 단어로 번역될 확률이 높다”, “이 표현 뒤에는 저 표현이 자주 온다” 같은 패턴이 저절로 드러납니다.

2016년 무렵까지의 구글 번역이 이 방식이었습니다. 써 본 분이라면 기억할 그 어색함, 단어 하나하나는 맞는데 문장으로 읽으면 이상한 번역이 이 방식의 한계였습니다. 통계 기반 번역은 문장을 단어와 구 단위 조각으로 나눠 번역한 뒤 이어 붙이기 때문에, 조각의 이음새가 그대로 드러났습니다. “구글 번역체"라는 놀림 섞인 말이 생긴 시절입니다.

3세대, 문장 전체의 의미를 숫자로 바꾸다 #

2016년을 전후해 번역 품질이 갑자기 좋아졌다고 느낀 분이 많을 것입니다. 실제로 그 무렵 구글 번역이 신경망 방식으로 전환했고, 파파고도 처음부터 신경망 기반으로 출시됐습니다. 핵심 아이디어는 단어 대 단어의 대응을 포기한 것입니다.

신경망 번역은 먼저 문장 전체를 읽고, 그 의미를 숫자 묶음으로 압축합니다. 그리고 그 숫자 묶음을 다른 언어의 문장으로 다시 풀어냅니다. 비유하면 영어 문장을 한국어 단어로 갈아 끼우는 것이 아니라, 일단 뜻을 머릿속에 담았다가 한국어로 처음부터 다시 말하는 방식입니다. 그래서 어순이 통째로 바뀌어도, 조각의 이음새 없이 자연스러운 문장이 나옵니다.

세 세대를 한 표로 비교하면 이렇습니다.

세대배우는 방식약점
규칙 기반사람이 문법 규칙과 사전을 입력예외와 관용구에 무너짐
통계 기반번역 쌍에서 단어·구의 확률을 학습조각을 이어 붙여 문장이 어색함
신경망문장 전체의 의미를 숫자로 바꿔 학습번역 자료가 적은 언어에 약함

그러면 ChatGPT의 번역은 무엇이 다를까 #

요즘은 ChatGPT 같은 AI에게 번역을 맡기는 분도 많습니다. 사실 LLM과 신경망 번역은 뿌리가 같습니다. 신경망 번역을 연구하다 나온 구조가 발전해 오늘날 LLM의 토대가 됐기 때문입니다. LLM이 다음 단어를 확률로 예측하는 기계라는 이야기를 앞서 다뤘는데, 학습한 텍스트에 여러 언어가 섞여 있다 보니 “이 영어 문장 다음에 올 가장 그럴듯한 한국어 문장"을 예측하는 일, 즉 번역도 같은 원리로 해냅니다.

차이는 지시를 알아듣는다는 점입니다. 전용 번역기는 문장을 넣으면 번역문 하나를 돌려주지만, LLM에는 “격식 있는 비즈니스 이메일 어투로”, “초등학생도 알아듣게” 같은 조건을 붙일 수 있습니다. 대신 전용 번역기보다 느리고, 가끔 번역 대신 자기 생각을 보태는 부작용도 있습니다.

한국어와 영어 사이가 유독 어려운 이유 #

같은 번역기라도 언어 조합에 따라 품질이 다릅니다. 한국어와 일본어 사이는 규칙 기반 시절부터 품질이 좋았던 반면, 한국어와 영어 사이는 신경망 이후에야 쓸 만해졌습니다. 이유는 언어 사이의 거리입니다.

한국어와 일본어는 어순이 거의 같고, 조사가 있다는 점도, 한자에서 온 단어를 많이 공유한다는 점도 닮았습니다. 단어를 순서대로 갈아 끼우는 수준으로도 어느 정도 통합니다. 반면 영어는 어순부터 다릅니다. 한국어는 동사가 문장 끝에 오고 주어를 자주 생략하지만, 영어는 동사가 앞에 오고 주어를 반드시 요구합니다. 문장을 통째로 해체해 다시 조립해야 하는 조합이라, 의미를 숫자로 담았다가 다시 풀어내는 신경망 방식이 오기 전까지는 품질이 나오기 어려웠습니다.

카메라 번역과 음성 번역의 정체 #

메뉴판에 카메라를 대는 번역과 마이크에 대고 말하는 번역은 별개의 신기술처럼 보이지만, 속을 들여다보면 둘 다 조합 상품입니다. 카메라 번역은 사진 속 글자를 텍스트로 읽어 내는 문자 인식, 그 텍스트의 번역, 번역문을 원래 위치에 입혀 보여 주는 화면 합성의 세 단계입니다. 음성 번역은 말을 텍스트로 받아 적는 음성 인식, 번역, 번역문을 소리로 읽어 주는 음성 합성의 조합입니다.

가운데에 있는 번역 엔진은 지금까지 이야기한 그 번역기와 같습니다. 그래서 손글씨 메뉴판이나 시끄러운 길거리에서 결과가 이상하다면, 번역이 틀렸다기보다 첫 단계인 인식이 글자나 말을 잘못 읽었을 가능성이 큽니다.

그래도 틀리는 이유 #

이만큼 발전했는데 번역기는 왜 여전히 틀릴까요? 첫째, 맥락이 부족합니다. 번역기는 대체로 문장 단위로 일하기 때문에, 앞 문장에서 화제가 과일이었는지 사과문이었는지 모릅니다. 동음이의어가 많은 한국어에서 특히 자주 사고가 납니다. 둘째, 존댓말입니다. 영어 문장에는 말하는 사람과 듣는 사람의 관계 정보가 없어서, 한국어로 옮길 때 반말과 존댓말 중 무엇을 골라야 할지 번역기로서는 알 길이 없습니다. 셋째, 학습 자료에 없던 신조어와 유행어는 엉뚱하게 직역됩니다.

정리하면 이렇습니다. 기계번역은 사람이 규칙을 입력하던 시대에서, 번역 쌍의 통계를 배우는 시대를 지나, 문장 전체의 의미를 숫자로 바꿨다가 다른 언어로 풀어내는 시대까지 왔습니다. 카메라 번역과 음성 번역은 인식 기술과 번역 엔진의 조합이고, 남은 약점은 대부분 문장 바깥의 맥락에서 옵니다. 그러니 중요한 문서라면 번역 결과에 맥락을 보태 한 번 더 다듬고, 여행지에서라면 마음 편히 카메라를 드시면 됩니다. 그 한 번의 동작 뒤에서 칠십 년 치 연구가 움직이고 있습니다.

X