科技

机器翻译如何适应双字节语言

UTF-8 和神经网络在处理双字节和多字节语言时可以提高机器翻译性能。
Thalita Lima
8 minutes, 48 seconds
目录

世界上的每种语言都属于一个解释其起源和传播的语系,但您知道吗,根据数据系统参数,所有口语都可以分为两组: 单字节和双字节语言?

双字节语言是指字符编码系统,其中字符用 2 个字节(16 位)来表示。

发生这种情况是因为这些语言具有较大的字符集,与单字节(8位)编码系统相比,需要更多的空间来存储它们。

双字节语言包括中文(简体和繁体)、日语、韩语、越南语(在一些较旧的编码中)以及全球的许多其他语言。

对于双字节和多字节语言,需要像 UTF-16 和 UTF-8 这样可以在一个、两个甚至更多字节之间切换的支持系统。

重要: 双字节(DBCS)语言经常被错误地识别为多字节字符集(MBCS),因为它们具有相似的概念。

让我们看看本文的细节,重点介绍这种编码差异在机器翻译中的关系!

1. 双字节语言的字符映射系统

UTF(Unicode 转换格式)发明后,编码过程变得更加容易。

1.1) Unicode 流行之前出现的系统 – DBCS(双字节字符集) 

DBCS 的创建适用于需要许多字符的语言,主要是中文、日语和韩语(CJK)。 

示例: Shift JIS(日语),Big5(繁体中文),EUC-KR(韩语)。 

具有2个字节(16位),最多可以表示65,536个字符(2¹⁶)。 

图片由维基共享资源

 

1.2)高级系统: UTF-16 和 UTF-8

UTF 是一种将 Unicode 字符转换为二进制格式的编码方案;因此,计算机和软件系统可以有效地呈现和共享多种语言和脚本的文本。 

这是一项国际标准,根据该标准,每个字符都分配有一个唯一的编号(码位),无论其属于任何语言或书写系统。

UTF 描述了将这些代码点编号转换为计算机可以理解的字节流的过程。

图片由 Wikimedia Commons

UTF 示例:

UTF-16: 每个字符2 或 4 字节。

它仍在处理亚洲字符的特定系统中使用。

例如,某些版本的 Windows 在内部使用 UTF-16。

UTF-8: 每个字符值为 1-4 字节,具体取决于符号。 

拉丁字母(英语、西班牙语、葡萄牙语) - 1 字节;特殊字符和亚洲语言 - 2-4 字节。 

此外,UTF-8 是当今 Web、数据库和现代应用程序中使用最广泛的编码。  

1.3 SBCS 不适用于双字节语言。 为什么?

SBCS(单字节字符集)是一个最多具有 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”,翻译为“银行”,可能是指金融机构或河岸。

图片由作者提供

如今的系统,如 DeepL、Google Translator、Microsoft Translator 和 Papago(Naver)都使用神经网络*来预测上下文,然后从现有选项中决定最佳句子。

*人工神经网络是模拟人脑的计算模型。 海量数据通过人工神经元层进行处理,寻找模式并学习在有或没有任何预定规则的情况下做出决策。

在机器翻译中,神经网络在句子级别而不是逐字翻译上考虑上下文,这与我们做出更自然、更好的翻译的目标一致。

2.4) 词序

不同语言之间语法结构的差异是巨大的......

例:

我吃一个苹果。

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

机器翻译必须适当地重新排列单词,以免丢失句子的含义。

2.5) 本地成语的短语表达的翻译

成语可能很难直接翻译。

例如: “连猴子都从树上掉下来”自然翻译成日本成语:猿も木から落ちる(“即使是专家也会犯错误”)。

图片由 author

3 提供。 DBCS 和 MBCS 是一样的吗?

双字节(DBCS)和多字节(MBCS)应彼此区分。

双字节字符集 (DBCS) → 首先,管理字符的双字节或 16 位的编码系统是双字节字符集 (DBCS)。

例: Big5(繁体中文)、Shift JIS(日语)、EUC-JP(韩语)

这些必须是利用前 Unicode 范式的系统。

多字节字符集 (MBCS) →(每个字符 2 字节以上的任意编码)

例如: (UTF-8,每个字符最多可使用 1、2、3 或 4 个字节)

在 Unicode 之前,DBCS(双字节字符集)通常用于许多 D,如 CJK(中文、日文、韩文),每个字符限制为两个字节。

除泰语、越南语、印地语和阿拉伯语(多字节字符集)之外的其他语言通常会在此 Unicode 系统中编码。由于 UTF-8 和 UTF-16 的出现,DBCS 正在消亡,许多语言已经或即将被表示为“多字节”或更确切地说是它们各自的名称(例如中文、日语、韩语、斯瓦希里语等)。

结论: 对于双字节语言的机器翻译,相似性比以往任何时候都更加强烈。 今天,系统可以处理大多数语言的数据(两个或多个字节)。

双字节语言仍然是一个正在使用的术语,它非常流行,但现在您知道范围更大了。

4. 全球双字节(DBCS)和多字节语言

我们已经讨论了中文和日语,但还有更多的双字节语言需要包括在内。 因此,让我们环游世界,学习所有这些语言……

4.1 较旧的历史双字节(DBCS)语言

DBCS 主要由东亚的 CJK 语言(中文、日语、韩语)使用。

  • 简体中文(中国、新加坡)– 旧编码: GB2312、GBK  
  • 繁体中文(台湾、香港、澳门)— 旧编码: Big5 
  • 日语 – 旧编码: Shift JIS,EUC-JP
  • Korean – 旧编码: EUC-KR 

这些语言有大量的字符,因此需要在 Unicode 之前的系统中进行双字节编码。

韩语键盘图片来自 Wikimedia Commons

4.2 符合标准 – 使用多字节(MBCS)的语言

在当今,这些语言的编码系统可能需要每个字符两个、三个甚至四个字节。 它们现在通常被符号化为 UTF-8 或 UTF-16。

  • 东南亚语言:

→ 越南语 — 使用带有许多变音符号的拉丁字母,这些变音符号在较旧的编码中可能占用多个字节。

→ 泰语 – 某些字符组合需要超过 1 个字节才能正确表示它们。 

→ 老挝语 — (就像泰语一样)一个字节,在相关上下文中更适合 1 字节字符。 

→ 高棉语(柬埔寨) – 有一个需要多字节的大字符集。

→ 缅甸语(缅甸) – 包含多字节编码所需的复杂字符。

  • 南亚语言: 

→ 印地语和其他天城文,如印地语(马拉地语)、尼泊尔语/梵语、泰米尔语、泰卢固语、卡纳达语、孟加拉语、果鲁穆奇语(旁遮普语)、古吉拉特语、马拉雅拉姆语、僧伽罗语。

这些脚本非常复杂,需要以一种称为多字节编码的格式及其各种组合来表示。

图片由 Freepik
  • Middle Eastern languages 提供: 多个字节

→ 阿拉伯语、波斯语 – 这些语言通常使用上下文化字符编码进行编码,这意味着同一字符可能由多个字节表示,具体取决于上下文,因为它们的字母表相对较小。

→ 希伯来语: 像阿拉伯语一样,根据您用于编码的内容,它的长度可能超过一个字节。

  • 藏语、格鲁吉亚语和亚美尼亚语: 可能需要许多字节才能以某些编码获取它们。

非洲和美洲土著语言的大多数原始脚本(大多数是多个字节)。

5. 为什么机器翻译处理双字节和多字节语言很重要?

5.1) 全球可访问性

对于中文、日语和韩语等许多亚洲语言以及一些东南亚语言来说,这是一个重大的机会——这意味着编码要求是多个字节。

如果翻译系统无法正确处理双字节和多字节编码为单词,则会导致编码错误、系统故障和错误翻译。


随着国际贸易和通信的不断发展,为这些语言提供翻译是市场扩张和改善全球沟通的关键方面。

深圳机场,深圳,中国图片由 Andy Beales 在 Unsplash 上拍摄

5.2) 世界市场的竞争力

支持那些传统上难以通过高质量机器翻译服务翻译的语言,也可以为额外的用户打开基础。

这不仅改善了用户体验,还使更多人能够以他们的语言接收和使用内容。

如果机器翻译系统在处理多字节语言时遇到困难,则需要保护亚洲等重要市场的客户免于失去销售。

5.3) 互操作性和数据流

机器翻译必须能够很好地处理多字节语言,否则正确信息无法传输到使用多字节语言的设备和平台。

此功能允许正确处理信息,无论是其原始位置还是编码格式,从而有助于在全球系统(例如应用程序、网站和数据库)中使用多语言数据。简而言之,互操作性和数据流确保具有不同编码格式的不同系统可以有效地交换信息,尤其是在多语言环境中。

6. 关键 Points to Conclude

在双字节语言的机器翻译中存在许多挑战,例如分词、语法和上下文含义。

对于较旧的系统,如日语的 Shift JIS、繁体中文的 Big5、韩语的 EUC-KR,双字节字符集(DBCS)的术语似乎是一项艰巨的任务。

随着神经网络、深度学习和自然语言处理(NLP)的迅猛发展,字符存储系统的翻译将更加准确——更好、更快。 UTF-8 是一个标记,并改变了处理这些多字符语言的场景。

双字节和多字节支持是机器翻译的必备条件;对于确保准确性、上下文和互操作性至关重要。

缺少此功能会在大多数翻译系统中留下不好的印象,并扭曲用户体验,从而降低翻译系统的性能。


因此,最有效的方法是使用现有的现代系统优化双字节语言的机器翻译。

好消息是我们已经得到了对此的支持,我们必须不断改进这些模型。

Unlock the power of glocalization with our Translation Management System.

Unlock the power of

with our Translation Management System.

Sign up today
Thalita Lima
photography | writing | communication for socio-environmental impact | art
两倍的翻译速度无可挑剔
开始吧
我们的在线活动!
加入我们的社区

免费试用 Bureau Works 14 天

未来只需点击几下
立即开始
前 14 天由我们承担
世界一流的支持