기술

더블 바이트 언어에 적응하는 기계 번역 방법

UTF-8와 신경망은 Double-Byte 및 Multi-Byte 언어를 처리할 때 기계 번역 성능을 향상시킵니다.
Thalita Lima
8 minutes, 48 seconds
목차

세계의 각 언어는 기원과 확산을 설명하는 어족에 속하지만, 데이터 시스템 매개 변수에 따르면 모든 구어체 언어는 두 그룹으로 나눌 수 있다는 것을 알고 계셨습니까? 싱글바이트 및 더블바이트 언어?

더블 바이트 언어는 문자를 나타내기 위해 2바이트(16비트)로 문자를 표현하는 문자 인코딩 시스템을 말합니다.

이것은 이러한 언어들이 큰 문자 집합을 가지고 있어, 단일 바이트(8비트) 인코딩 시스템보다 더 많은 저장 공간을 필요로 하기 때문에 발생합니다.

더블바이트 언어에는 중국어(간체 및 번체), 일본어, 한국어, 베트남어(일부 이전 인코딩) 및 전 세계의 다른 많은 언어가 포함됩니다.

UTF-16 및 UTF-8과 같은 지원 시스템은 더블 바이트 및 멀티 바이트 언어에 대해 하나, 두 개 또는 그 이상의 바이트 간에 전환할 수 있어야 합니다.

중요: DBCS(Double Byte) 언어는 개념이 비슷하기 때문에 MBCS(Multi-Byte Character Set)로 잘못 인식되는 경우가 많습니다.

이 기사에서 이 인코딩 차이와 기계 번역의 관계에 초점을 맞춰 세부 사항을 살펴보겠습니다!

1. 더블 바이트 언어를 위한 문자 매핑 시스템

UTF(유니코드 변환 형식)의 발명 이후 인코딩 프로세스가 더 쉬워졌습니다.

1.1) 유니코드가 대중화되기 전의 시스템 – DBCS (Double-Byte Character Set) 

DBCS의 생성은 많은 문자가 필요한 언어, 주로 중국어, 일본어, 한국어(CJK)를 위해 이루어졌습니다. 

예시: Shift JIS (Japanese), Big5 (Traditional Chinese), EUC-KR (Korean). 

2바이트(16비트)로 최대 65,536개의 문자를 표현할 수 있습니다 (2¹⁶). 

Image by Wikimedia Commons

 

1.2) 고급 시스템: UTF-16 및 UTF-8

UTF는 유니코드 문자를 이진 형식으로 변환하는 인코딩 방식입니다. 따라서 컴퓨터와 소프트웨어 시스템은 여러 언어와 스크립트의 텍스트를 효과적으로 표시하고 공유할 수 있습니다. 

이것은 각 문자가 특정 언어나 쓰기 시스템에 속하는 것과 관계없이 고유한 번호(코드 포인트)가 할당되는 국제 표준입니다.

UTF는 이러한 코드 포인트 번호를 컴퓨터에서 이해할 수 있는 바이트 스트림으로 변환하는 프로세스를 설명합니다.

이미지 by Wikimedia Commons

UTF의 예:

UTF-16: 각 문자에 대해 2 또는 4바이트입니다.

아시아 문자를 다루는 특정 시스템에서 여전히 사용되고 있습니다.

예를 들어 일부 Windows 버전은 내부적으로 UTF-16을 사용합니다.

UTF-8: 각 문자는 기호에 따라 1-4바이트입니다. 

라틴 알파벳 (영어, 스페인어, 포르투갈어) - 1바이트; 특수 문자와 아시아 언어 - 2-4 바이트. 

또한 UTF-8은 웹, 데이터베이스 및 현대 응용 프로그램에서 요즘 가장 널리 사용되는 인코딩입니다.  

1.3 SBCS는 더블 바이트 언어에서 작동하지 않습니다. 왜?

SBCS(Single-Byte Character Set)는 최대 256자(1바이트 = 8비트 = 2⁸ = 256가지 가능성)를 가질 수 있는 시스템입니다. 예를 들어 영어, 스페인어 또는 프랑스어와 같은 더 작은 알파벳을 가진 언어의 경우 이 제한 내에서 나타낼 수 있습니다.

언어가 천 개의 문자를 사용하는 경우 SBCS에는 더블바이트 언어를 위한 공간이 부족합니다!


중국어는 50,000자 이상의 문자를 가지고 있지만, 이 중 3,000-5,000자는 일상적으로 사용됩니다;

일본어는 한자(중국어 표의 문자)와 히라가나, 가타카나를 결합하여 SBCS가 포함할 수 있는 것보다 훨씬 더 많은 문자가 필요합니다. 

그래서 더블 바이트 언어는 적절한 시스템이 필요합니다.

2. 기계 번역에서의 더블 바이트 언어

이 언어들이 가지고 있는 몇 가지 두드러진 기능이 있으며, 기계가 이를 처리해야 합니다:

2.1) 인코딩 지원

현재 사용 가능한 대부분의 언어 기계 도구는 UTF-8 및 UTF-16과 함께 효율적으로 작동할 수 있으며, 이는 다재다능하고 매우 복잡한 문자를 표현할 수 있습니다.

UTF-8은 영어 사용자(1바이트 사용)와 일본어 및 중국어 사용자(여러 바이트 필요)를 허용하기 때문에 다른 인코딩 형식보다 더 많이 받아들여집니다.

이것은 영어와 중국어를 사용하는 국가가 지배하는 경쟁이 치열한 세계 비즈니스를 고려할 때 최적입니다. 

2.2) 텍스트 세분화

스페인어 또는 포르투갈어에서는 각 단어를 분할하는 데 공백이 사용되어 문장에서 단어를 매우 쉽게 분리할 수 있습니다.

독일어나 일본어에서는 어휘 단위가 구분되는 단어 구분 또는 텍스트 분할이 구분 기호로서의 공백이 없기 때문에 번역이 이루어지기 전에 기계에 의해 수행됩니다.

2.3) 모호성과 문맥

수많은 아시아 언어에서 문자는 상황에 따라 다양한 정의를 가질 수 있습니다.

예를 들어 중국어로 "银行", 더 구체적으로 "yínháng"은 "은행"으로 번역되며, 금융 기관이나 강둑을 의미할 수 있습니다.

Image by author

오늘날의 시스템, 예를 들어 DeepL, Google 번역가, Microsoft 번역가, 그리고 Papago (Naver)는 신경망*을 사용하여 문맥을 예측하고 기존 옵션 중에서 최적의 문장을 결정합니다.

*인공 신경망은 인간의 뇌를 모방하는 계산 모델입니다. 방대한 데이터는 인공 뉴런 층을 통해 처리되어 패턴을 찾고 미리 결정된 규칙이 있거나 없는 결정을 내리는 방법을 학습합니다.

기계 번역에서 신경망은 단어별 번역보다는 문장 수준에서 문맥을 고려하며, 이는 더 자연스럽고 나은 번역을 만드는 우리의 목표와 일치합니다.

2.4) 어순

언어들 간의 문법 구조의 차이는 엄청나...

본보기:

나는 사과를 먹는다.

Japanese:「I apple eat」 (「リンゴ を 食む)

기계 번역은 문장의 의미가 손실되지 않도록 단어를 올바르게 배열해야 합니다.

2.5) 네이티브 관용구의 구문 표현 번역

숙어는 직접 번역하기가 까다로울 수 있습니다.

예: "원숭이도 나무에서 떨어진다"는 말은 자연스럽게 일본 관용구인 猿も木から落ちる("전문가도 실수를 한다")로 번역됩니다.

이미지 author

3. DBCS와 MBCS는 같은 것인가요?

DBCS(Double-Byte)와 MBCS(Multi-Byte)는 서로 구분되어야 합니다.

더블 바이트 문자 집합 (DBCS) → 처음에, 문자를 위해 더블 바이트 또는 16비트를 관리하는 인코딩 시스템은 더블 바이트 문자 집합 (DBCS)입니다.

예: Big5 (Traditional Chinese), Shift JIS (Japanese), EUC-JP(Korean)

이들은 유니코드 이전의 패러다임을 활용한 시스템이어야 했습니다.

MBCS(Multi-Byte Character Set) →(문자당 2바이트 이상의 모든 인코딩)

예: (UTF-8, 문자당 최대 1, 2, 3 또는 4바이트를 사용할 수 있음)

유니코드 이전에는 DBCS(더블바이트 문자 집합)가 일반적으로 문자당 2바이트 제한이 있는 CJK(중국어, 일본어, 한국어)와 같은 많은 D에 사용되었습니다.

태국어, 베트남어, 힌디어 및 아랍어(멀티바이트 문자 집합) 이외의 일부 언어는 일반적으로 이 유니코드 시스템에서 인코딩됩니다.

UTF-8 및 UTF-16으로 인해 DBCS는 사라져가고 있으며, 많은 언어가 '멀티바이트' 또는 해당 이름(예: 중국어, 일본어, 한국어, 스와힐리어 등)으로 이미 표시되거나 곧 표시될 것입니다.

결론: 더블 바이트 언어의 기계 번역에서, 유사성은 그 어느 때보다 강력합니다. 오늘날, 시스템은 대부분의 언어에 대한 데이터를 처리할 수 있습니다 (2바이트 이상).

더블바이트 언어는 여전히 사용되는 용어이며 꽤 인기가 있지만 이제 범위가 더 넓다는 것을 알게 되었습니다.

4. 전 세계 더블 바이트(DBCS) 및 멀티바이트 언어

우리는 중국어와 일본어에 대해 이야기했지만 포함해야 할 더블 바이트 언어가 훨씬 더 많습니다. 그러니 이 모든 언어를 배우기 위해 전 세계를 여행해 봅시다...

4.1 이전의 DBCS(역사적으로 더블 바이트) 언어

DBCS는 동아시아의 CJK 언어(중국어, 일본어, 한국어)에서 대부분 사용됩니다.

  • 중국어 간체(중국, 싱가포르) – 이전 인코딩: GB2312, GBK  
  • 번체 중국어 (대만, 홍콩, 마카오) — 이전 인코딩: Big5 
  • 일본어 – 이전 인코딩: Shift JIS, EUC-JP
  • Korean – 이전 인코딩: EUC-KR 

이 언어들은 방대한 수의 문자를 가지고 있어, 유니코드 이전 시스템에서는 더블 바이트 인코딩이 필요합니다.

Korean keyboardImage by Wikimedia Commons

4.2 표준 준수 – 다중 바이트(MBCS)를 사용하는 언어

오늘날 이러한 언어의 인코딩 시스템은 문자당 두 바이트, 세 바이트 또는 네 바이트가 필요할 수 있습니다. 오늘날에는 일반적으로 UTF-8 또는 UTF-16으로 표시됩니다.

  • 동남아시아 언어:

→ 베트남어 — 이전 인코딩에서 1바이트 이상을 차지할 수 있는 많은 분음 부호와 함께 라틴 알파벳을 사용합니다.

→ 태국어 – 일부 문자 조합은 올바르게 표현하기 위해 1바이트 이상이 필요합니다. 

→ 라오스어 — (태국어와 마찬가지로) 1바이트, 관련 컨텍스트에서 1바이트 문자에 더 적합합니다. 

→ 크메르어(캄보디아) – 멀티바이트가 필요한 큰 문자 집합이 있습니다.

→ 미얀마어(버마어) – 멀티바이트 인코딩에 필요한 하드 문자를 포함합니다.

  • 남아시아 언어: 

→ 힌디어와 힌디어(마라티어), 네팔어/산스크리트어, 타밀어, 텔루구어, 칸나다어, 벵골어, 구르무키어(펀자브어), 구자라트어, 말라얄람어, 싱할라어와 같은 기타 데바나가리어.

스크립트는 매우 복잡하며 다양한 조합과 함께 Multi-Byte 인코딩이라는 형식으로 표현해야 합니다.

이미지 제공: Freepik
  • Middle Eastern languages: 여러 바이트

→ 아랍어, 페르시아어 – 이러한 언어는 종종 상황에 맞는 문자 인코딩을 사용하여 인코딩되며, 이는 상대적으로 작은 알파벳을 가지고 있기 때문에 동일한 문자가 컨텍스트에 따라 두 바이트 이상으로 표시될 수 있음을 의미합니다.

→ 히브리어: 아랍어와 마찬가지로, 인코딩에 사용하는 것에 따라 1바이트 이상이 필요할 수 있습니다.

  • 티베트어, 조지아어, 아르메니아어: 특정 인코딩으로 가져오기 위해 많은 바이트가 필요할 수 있습니다.

아프리카와 아메리카 원주민 언어의 대부분의 원본 문자(대부분 여러 바이트).

5. 기계 번역이 더블 바이트 및 멀티 바이트 언어를 처리하는 것이 왜 중요한가요?

5.1) 글로벌 접근성

중국어, 일본어, 한국어와 같은 많은 아시아 언어와 일부 동남아시아 언어에 중요한 기회입니다. 이는 인코딩 요구 사항이 여러 바이트임을 의미합니다.

번역 시스템이 더블 바이트 및 멀티 바이트 인코딩을 단어로 제대로 처리하지 못하면 인코딩 오류, 시스템 오류 및 잘못된 번역이 발생합니다.


국제 무역과 커뮤니케이션이 계속 발전함에 따라 해당 언어에 대한 번역을 제공하는 것은 시장 확장과 더 나은 글로벌 커뮤니케이션의 중요한 측면입니다.

Shenzhen Airport, Shenzhen, ChinaImage by Andy Beales in Unsplash

5.2) 세계 시장에서의 경쟁력

전통적으로 번역하기 어려운 언어를 고품질 기계 번역 서비스에서 지원하는 것은 추가 사용자 기반을 열 수 있습니다.

이는 사용자 경험을 개선할 뿐만 아니라 더 많은 사람들이 자신의 언어로 콘텐츠를 받고 사용할 수 있게 합니다.

아시아와 같은 중요한 시장의 고객들은 기계 번역 시스템이 다중 바이트 언어를 처리하는 데 어려움을 겪을 경우 판매 손실로부터 보호되어야 합니다.

5.3) 상호 운용성 및 데이터 흐름

기계 번역은 다중 바이트 언어와 잘 작동해야 하며, 그렇지 않으면 적합한 정보가 다중 바이트 기반 언어를 사용하는 장치 및 플랫폼으로 전송될 수 없습니다.

이 기능은 정보의 원래 위치와 인코딩 형식에 관계없이 올바르게 처리할 수 있도록 하여, 애플리케이션, 웹사이트, 데이터베이스와 같은 글로벌 시스템 내에서 다국어 데이터를 사용하는 데 도움을 줍니다. 요컨대, 상호 운용성과 데이터 흐름은 서로 다른 코딩 형식을 가진 다양한 시스템이 특히 다국어 환경에서 효과적으로 정보를 교환할 수 있도록 보장합니다.

6. 키 포인트 결론

이중 바이트 언어에 대한 기계 번역에는 세분화, 문법, 문맥적 의미와 같은 많은 도전 과제가 있습니다.

일본어의 Shift JIS, 번체 중국어의 Big5, 한국어의 EUC-KR과 같은 오래된 시스템의 경우, 더블 바이트 문자 집합(DBCS)의 용어는 어려운 과제와 같았습니다.

신경망, 딥러닝, 자연어 처리(NLP)의 출현으로 인해 문자 저장 시스템은 번역에서 더 정확해지고 있으며, 더 나아지고, 더 빨라지고 있습니다. UTF-8은 표시이며 이러한 다중 문자 언어를 처리하기 위해 시나리오를 변경했습니다.

더블 바이트 및 멀티 바이트 지원은 기계 번역에 필수적이며, 정확성, 문맥, 상호 운용성을 보장하는 데 필수적입니다.

이 기능의 부재는 대부분의 번역 시스템에서 나쁜 인상을 남기고 사용자 경험을 왜곡하여 번역 시스템의 성능을 저하시킵니다.


따라서 가장 효율적인 방법은 기존의 현대적 시스템을 사용하여 더블 바이트 언어에서 기계 번역을 최적화하는 것입니다.

좋은 소식은 이미 그것에 대한 지원이 있다는 것이며, 우리는 단지 이러한 모델을 계속 개선해야 한다는 것입니다.

우리의 번역 관리 시스템으로 Glocalization 의 힘을 활용하세요.

우리의 번역 관리 시스템으로

의 힘을 활용하세요.

시작하기
Thalita Lima
photography | writing | communication for socio-environmental impact | art
ترجم مرتين بسرعة لا تشوبها شائبة
ابدأ
أحداثنا عبر الإنترنت!
انضم إلى مجتمعنا

14일 간 무료로 Bureau Works 이용

ChatGPT 통합
지금 시작하기
첫 14일은 무료
기본 지원도 무료 제공