A Lively chat platform via Live translation
변칙적인 온라인 구어체에 대응하는 첫 번째 방법
기계번역기가 상용으로 사용되기 위해서는 두 가지의 측면을 모두 만족해야 한다. 첫번째는 번역의 품질이요, 두번째는 번역의 속도이다. 그런 면에서 온라인 채팅창에서의 번역은 도전적인 과제이다. 온라인 채팅은 어떠한 다른 번역 과제보다 엄정한 품질과 빠른 속도를 요구하기 때문이다. ‘빠른 번역’이 필요하다는 사실은 채팅의 실시간성을 떠올리면 금방 인지할 수 있을 것이다. ‘정확한 번역’이 필요한 이유 또한 채팅의 속성, ‘실시간성’에서 비롯한다.
채팅은 번역의 편집 없이 상대방에게 그대로 노출될 가능성이 크기 때문에 좋은 품질의 기계번역기가 필요하다. 우리가 유창하지 못한 외국어로 이메일을 작성한다고 생각해보자. 일단 모국어로 작성해보고, 여기저기서 기계번역을 돌려보고, 최대한 내가 표현하고자 하는 뉘앙스가 잘 담겨있게 정성껏 편집을 할 것이다. 당연히 시간과 정성을 들이는 만큼 번역문의 품질은 좋아질 것이다. 하지만 채팅 플랫폼에서는 찰나에 상대방에게 의사 전달을 해야 한다. 이는 기계번역기가 도출한 기계번역문을 추가적인 편집이나 노력 없이 그대로 노출해야 한다는 뜻이다. 만약 기계번역기의 성능이 좋지 못하면 의사소통이 원활하지 못하며, 심지어 큰 오해가 빚어질 수도 있다.
‘정확함’과 ‘빠름’. 이 두가지 과제만으로도 사실 연구원들이 해야 할 일이 산더미다. 하지만 여기에 화룡점정을 찍으며 중급의 난이도를 최상의 난이도로 끌어올리는 게 있으니, 채팅이 바로 온라인에서 유통되는 구어체라는 사실이다. 익명성이 보장되는 온라인 플랫폼에서 많은 사람들은 맞춤법이나 띄어쓰기를 신경쓰지 않으며, 기분과 상태를 표현하기 위해 이모지를 비롯한 다양한 문자를 사용하는 것을 꺼리지 않는다. 예를 들어서, ‘없어서 못 먹지요’라는 뜻을 담은 다음 예시를 살펴보자. ‘업서어 못 먹쥬’라는 문장에는, 핸드폰 자판을 두드리다보면 충분히 낼 수 있는 오타가 포함되어 있다. 또한 자신의 말버릇이나 기분을 반영해서 쓸 수 있는 의도적인 어미 변형이 있다. 이에 대해 G사, N사, D사, O사의 기계번역기는 다음과 같이 번역한다.
원문 |
업서어 못 먹쥬 |
G사 | I can't eat it. |
N사 | I can't do that. |
D사 | I can't eat upstairs. |
O사 | I can't eat it because I'm not hungry. |
N사, D사, O사 모두 엉뚱한 번역문을 내놓았고 G사의 경우 ‘없어서’라는 의미 단위가 누락되었다. 이는 결코 시중의 기계번역기가 성능이 떨어지기 때문이 아니다. 단지 채팅에서 통용되는 말투에 대해 학습이 안 되어 있기 때문이다. 원문을 ‘없어서 못 먹지요.’라고 정제되고 깔끔한 문장으로 고치면, (‘매우 좋아하는 음식’이라는 숨겨진 뉘앙스는 번역하지 못하더라도) 세 종류의 기계번역기 모두 원문의 내용에 충실한 번역문을 도출한다.
원문 |
없어서 못 먹지요. |
G사 | I can't eat it because I don't have it. |
N사 | I can't eat it because I don't have it. |
D사 | I don't have it, so I can't eat it. |
O사 | I can't eat because it's not here. |
이외에도 다양한 문장을 넣어가면서 실험을 해보면, 기존의 기계번역기가 온라인 구어체에 약하다는 사실을 금세 알 수 있다.
시중의 기계번역기 약점에 대한 비밀의 키는 ‘데이터’가 쥐고 있다.
언어 모델은 기본적으로 먹어본 맛을 재현한다. 한국어를 먹어본 언어 모델은 한국어를, 영어를 먹어본 언어 모델은 영어를 재현하는 것이다. 이것은 미묘한 어투의 변화에도 적용된다. 구어체를 많이 학습한 모델은 구어체로, 문어체를 많이 학습한 모델은 문어체에서 성능이 좋다. 그러나 우리의 과제인 온라인 구어체는 ‘미묘한’ 정도를 넘어서서 파격적으로 사용 양상이 바뀐다. 시중의 기계번역기가 당황하는 것도 무리가 아니다. 언어 모델 입장에서는 한글과 외계어가 섞여 있는 느낌일 것이다. 이에 대한 해결책은 사실 간단하다. 로마에서는 로마의 법을, 온라인에서는 온라인 구어체를 학습하면 된다.
그러나 온라인 구어체를 학습하는 건 사실 만만한 일이 아니다. ‘강아지’라는 간단한 단어도 ‘강아쥐’, ‘깡쥐’, ‘멍멍이’, ‘댕댕이’ 등으로 다양하게 표현된다. ‘사랑해’라는 단어도 마찬가지이다. 이 의미를 전달하기 위해 ‘샤랑햬’, ‘살앙해’, ‘스릉흐’, ‘ㅅr랑해’, ‘싸랑해’, ‘삷랇핿’등의 다양한 변칙들이 넷상에서 유통되고, 여기에 동사의 위치나 쓰임에 따라 어미 변화까지 추가된다. 단어 수준만 봐도 이런데, 문장 수준으로 가면 변화의 범위는 상상을 초월한다. ‘강아지 사랑해’의 의미를 전달하기 위해 예시로 나온 변칙 단어를 조합하는 것만으로도 벌써 35가지의 표기 방법이 나온다. 그리고 이 35가지의 변화구들은 모두 단 한가지 의미, ‘강아지 사랑해’를 뜻한다.
이토록이나 변칙적인 온라인 구어체에 대응하기 위해서 두 가지 방법을 시도해볼 수 있다. 첫번째는 변칙적인 데이터를 일괄되게 정제된 데이터로 변형하는 것이고 두번째는... <2편에 계속>
함께 보면 좋은 콘텐츠
🔗온라인 구어체에 대응하는 방법 2. ChatGPT가 선택한 ‘울 댕댕이 ㅅr릉해❤️’의 답변
Editor l 고원희 연구원