Teknologi

Hur Maskinöversättning Anpassar Sig Med Dubbelbyte-språk

UTF-8 tillsammans med neurala nätverk ökar maskinöversättningens prestanda när man hanterar Double-Byte och Multi-Byte språk.
8 minutes, 48 seconds
Innehållsförteckning

Varje språk i världen tillhör en familj som förklarar dess ursprung och spridning, men visste du att enligt datasystemparametrar kan alla talade språk delas in i två grupper: Enkelbyte- och dubbelbytespråk?

Dubbla byte-språk avser teckenkodningssystem där ett tecken representeras av 2 byte (16 bitar) för att representera ett tecken.

Detta händer eftersom dessa språk har ett stort teckenuppsättning, vilket kräver mer utrymme för att lagra dem än enkelbyte (8 bitar) kodningssystem.

Språk med dubbla byte inkluderar kinesiska (förenklad och traditionell), japanska, koreanska, vietnamesiska (i vissa äldre kodningar) och många andra över hela världen.

Supportsystem som UTF-16 och UTF-8 som kan växla mellan en, två eller till och med fler byte är nödvändiga för dubbelbyte- och multibytespråk.

Viktig: Double Byte (DBCS)-språk identifieras ofta felaktigt som Multi-Byte Character Set (MBCS) eftersom de har liknande begrepp.

Låt oss titta på detaljerna i den här artikeln, med fokus på relationen mellan denna kodningsskillnad i maskinöversättning!

1. Teckenkartläggningssystem för dubbelbytespråk

Kodningsprocessen blev enklare efter uppfinningen av UTF (Unicode Transformation Format).

1.1) Systemen som kom till innan Unicode blev populärt – DBCS (Double-Byte Character Set) 

Skapandet av DBCS var för språk som behöver många tecken, främst kinesiska, japanska och koreanska (CJK). 

Exempel: Shift JIS (japanska), Big5 (traditionell kinesiska), EUC-KR (koreanska). 

Med 2 byte (16 bitar) kan det representera upp till 65 536 tecken (2¹⁶). 

Bild av Wikimedia Commons

 

1.2) Avancerade system: UTF-16 och UTF-8

UTF är ett kodningsschema som omvandlar Unicode-tecken till binära format; därmed kan datorer och mjukvarusystem effektivt visa och dela text från många språk och skriftsystem. 

Det är en internationell standard där varje tecken tilldelas ett unikt nummer (kodpunkt), oavsett vilket språk eller skriftsystem det tillhör.

UTF beskriver processen att konvertera dessa kodpunktsnummer till en byteström som är begriplig för en dator.

Bild av Wikimedia Commons

Exempel på UTF:

UTF-16: 2 eller 4 byte för varje tecken.

Det används fortfarande i specifika system som hanterar asiatiska tecken.

Vissa versioner av Windows använder till exempel UTF-16 internt.

UTF-8: varje tecken är värt 1-4 byte, beroende på symbolen. 

Latinska alfabet (engelska, spanska, portugisiska) - 1 byte; specialtecken och asiatiska språk - 2-4 byte. 

Dessutom är UTF-8 den mest använda kodningen nuförtiden, på webben, i databaser och i moderna applikationer.  

1.3 SBCS fungerar inte för språk med dubbla byte. Varför?

SBCS (Single-Byte Character Set) är ett system som har maximalt 256 tecken (1 byte = 8 bitar = 2⁸ = 256 möjligheter). Det går bra för språk med mindre alfabet, engelska till exempel, spanska eller franska, som kan representeras inom denna gräns.

Med språk som använder tusen tecken saknar SBCS utrymme för Double-Byte Languages!


Kinesiska har mer än 50 000 tecken, även om 3 000–5 000 av dessa används till vardags;

Japanska kombinerar kanji (kinesiska logogram) med hiragana och katakana och kräver långt fler tecken än vad SBCS kan innehålla. 

Så det är därför dubbelbyte-språk behöver lämpliga system.

2. Dubbla byte-språk i maskinöversättning

Det finns några framträdande funktioner som dessa språk har, som maskiner måste hantera:

2.1) Support för kodning

Den stora majoriteten av språkmaskinverktyg som finns tillgängliga idag kan arbeta effektivt med UTF-8 och UTF-16, eftersom dessa är mångsidiga och representerar mycket komplexa tecken.

UTF-8 är mer accepterat än resten av kodningsformaten eftersom det tillåter engelsktalande (som använder 1 byte) samt japanska och kinesiska talare (som behöver flera byte).

Detta är optimalt med tanke på den konkurrensutsatta världsverksamheten som domineras av länder med engelska och mandarintalande

2.2) Segmentering av text

På spanska eller portugisiska används mellanslag för att segmentera varje ord, vilket gör det mycket enkelt att isolera ord i en mening.

På tyska eller japanska utförs ordavgränsning, eller textsegmentering, där lexikala enheter avgränsas, av maskiner innan någon översättning görs, eftersom mellanslag som avgränsare saknas.

2.3) Tvetydighet och sammanhang

Ett tecken i många asiatiska språk kan ha olika definitioner som är kontextuella för situationen.

Ta till exempel "银行", på kinesiska, mer specifikt "yínháng", som översätts till "bank", kan betyda en finansiell institution eller stranden av en flod.

Bild av författaren

System idag som DeepL, Google Översättare, Microsoft Översättare och Papago (Naver) använder neurala nätverk* för att förutsäga sammanhang och sedan välja den bästa meningen bland befintliga alternativ.

*Artificiella neurala nätverk är beräkningsmodeller som imiterar den mänskliga hjärnan. Den massiva datan bearbetas via artificiella neuronlager, letar efter mönster och lär sig att fatta beslut med eller utan några förutbestämda regler.

Vid maskinöversättning tar neurala nätverk hänsyn till sammanhanget på meningsnivå istället för ord-för-ord-översättning, vilket stämmer överens med vårt mål att göra mer naturliga och bättre översättningar.

2.4) Ordföljd

Skillnaderna i grammatiska strukturer mellan språk är enorma...

Exempel:

Jag äter ett äpple.

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

Maskinöversättning måste ordna om orden korrekt så att meningen i meningen inte går förlorad.

2.5) Översättning av frasuttryck för inhemska idiom

idiom kan vara knepiga att översätta direkt.

T.ex: "Till och med apor faller från träd" översätts naturligtvis till det japanska idiomet:猿も木から落ちる ("Även experter gör misstag").

Bild av författaren

3. Är DBCS och MBCS samma sak?

Double-Byte (DBCS) och Multi-Byte (MBCS) bör särskiljas från varandra.

Double-Byte Characters Set (DBCS) → Först är kodningssystemet som hanterar dubbla byte eller 16 bitar per tecken Double-Byte Characters Set (DBCS).

Exempel: Big5 (traditionell kinesiska), Shift JIS (japanska), EUC-JP(koreanska)

Dessa var tvungna att vara system som utnyttjade pre-unicodeparadigm.

MBCS-→ (Multi-Byte Character Set) (alla kodningar med från två byte per tecken)

t.ex. (UTF-8, kan använda upp till 1, 2, 3 eller 4 byte per tecken)

Före Unicode användes DBCS (Double-byte character set) vanligtvis för de många D:na som CJK (kinesiska, japanska, koreanska) med en begränsning på två byte per tecken.

Vissa språk förutom thailändska, vietnamesiska, hindi och arabiska (Multi-Byte Character Set) kommer normalt att kodas i detta Unicode-system.

På grund av UTF-8 och UTF-16 håller DBCS på att dö ut och många språk representeras eller kommer snart att representeras som 'Multi-byte' eller snarare under sina respektive namn (t.ex. kinesiska, japanska, koreanska, swahili och andra).

Slutsats: För maskinöversättning av dubbelbyte-språk är likheterna starkare än någonsin. Idag kan system hantera data för de flesta språk (två eller fler byte).

Dubbelbyte-språk är fortfarande en term som används och det är ganska populärt, men nu vet du att utbudet är större.

4. Double-Byte (DBCS) och Multi-Byte Languages Worldwide

Vi har pratat om kinesiska och japanska, men det finns många fler Double-byte-språk att inkludera också. Så låt oss ta en rundtur runt om i världen för att lära oss alla dessa språk…

4.1 Äldre historiskt dubbelbyte (DBCS) språk

DBCS används för det mesta av CJK-språk (kinesiska, japanska, koreanska) i Östasien.

  • Förenklad kinesiska (Kina, Singapore) – Gammal kodning: GB2312, GBK  
  • traditionell kinesiska (Taiwan, Hongkong, Macao) – Gammal kodning: Big5 
  • japanska – Gammal kodning: Shift JIS, EUC-JP
  • koreanska – Gammal kodning: EUC-KR 

Dessa språk har ett stort antal tecken, vilket kräver dubbelbytekodning i system före Unicode.

Koreanskt tangentbordBild av Wikimedia Commons

4.2 Standardkompatibel – Språk som använder multibyte (MBCS)

I dag kan kodningssystem i dessa språk kräva två, tre eller till och med fyra byte per tecken. De symboliseras vanligtvis som UTF-8 eller UTF-16 idag.

  • Sydostasiatiska språk:

→ vietnamesiska — Använder det latinska alfabetet med många diakritiska tecken som kan ta mer än en byte i äldre kodningar.

→ thailändska – vissa teckenkombinationer behöver mer än 1 byte för att representera dem korrekt. 

→ Lao — (precis som thailändska) En byte, mer lämpligt för 1 byte-tecken i det relevanta sammanhanget. 

→ Khmer (Kambodja) – har en stor teckenuppsättning som behöver Multi-byte.

→ Myanmar (burmesiska) – Innehåller hårda tecken som behövs för Multi-Byte-kodning.

  • Sydasiatiska språk: 

→ hindi och andra devanagari som hindi (marathi), nepali/sanskrit, tamil, telugu, kannada, bengali, gurmukhi (punjabi), gujarati, malayalam, singalesiska.

Skripten är mycket komplexa och måste representeras i ett format som kallas Multi-Byte-kodning med deras olika kombinationer.

Bild från Freepik
  • språk från Mellanöstern: Flera byte

→ arabiska, persiska – dessa språk kodas ofta med kontextualiserad teckenkodning, vilket innebär att samma tecken kan representeras av mer än en byte, beroende på sammanhanget, eftersom de har relativt små alfabet.

→ hebreiska: Precis som arabiska, beroende på vad du använder för att koda är det längre än en byte.

  • Tibetanska, georgiska och armeniska: Kan behöva många byte för att få dem i vissa kodningar.

De flesta originalskrifter från de afrikanska och amerikanska inhemska språken (flera byte de flesta av dem).

5. Varför är det viktigt för maskinöversättning att hantera dubbelbyte- och flerbyte-språk?

5.1) Global tillgänglighet

Det är en stor möjlighet för många asiatiska språk som kinesiska, japanska och koreanska, liksom för vissa sydostasiatiska språk – vilket innebär att kodningskravet är flera byte.

Om system för översättning inte kan hantera Double-Byte och Multi-Byte-kodning till ord på rätt sätt, leder det till kodningsfel, systemfel och felaktig översättning.


I takt med att internationell handel och kommunikation utvecklas allt mer är översättningar till dessa språk en viktig aspekt av marknadsexpansion och bättre global kommunikation.

Shenzhen Airport, Shenzhen, KinaBild av Andy Beales i Unsplash

5.2) Konkurrenskraft på världsmarknaden

Att stödja språk som traditionellt har varit svåra att översätta med hög Kvalitet på maskinöversättningstjänster kan också öppna en bas för extra användare.

Detta förbättrar inte bara användarupplevelsen utan gör det också möjligt för många fler att ta emot och använda Innehåll på sina språk.

Kunder på viktiga marknader som Asien behöver skyddas från att förlora sin försäljning om maskinöversättning system har svårt med flerbajtsspråk.

5.3) Interoperabilitet och dataflöden

Maskinöversättning måste fungera bra med många-byte-språk, annars kan inte rätt information överföras till enheter och plattformar som har språk baserade på flera byte.

Denna förmåga gör det möjligt att hantera information korrekt, oavsett dess ursprungliga plats samt kodningsformat, vilket underlättar användningen av flerspråkig data inom globala system såsom applikationer, webbplatser och databaser. Kort sagt säkerställer interoperabilitet och dataflöden att olika system med olika kodningsformat kan utbyta information effektivt, särskilt i flerspråkiga sammanhang.

6. Viktiga punkter att avsluta

Det finns många utmaningar i maskinöversättning för dubbelbyte-språk, såsom segmentering, grammatik och kontextuella betydelser.

För de äldre system som Shift JIS för japanska, Big5 för traditionell kinesiska, EUC-KR för koreanska var begreppen för dubbelbyte teckenuppsättningar (DBCS) som en svår uppgift.

Med framväxten av neurala nätverk, djupinlärning och naturlig språkbehandling (NLP) som gör smittande framsteg, kommer teckenlagringssystem att bli mer exakta i översättningar — bättre, snabbare. UTF-8 är en markering och ändrade scenariot för att hantera dessa språk med flera tecken.

Stöd för dubbelbyte och multibyte är ett måste för maskinöversättning; och är avgörande för att säkerställa noggrannhet, kontext och interoperabilitet.

Avsaknaden av denna funktion lämnar en dålig eftersmak i de flesta översättningssystem och förvränger användarupplevelsen, vilket därmed minskar prestandan hos översättningssystem.


Så det mest effektiva sättet skulle vara att optimera maskinöversättningen från dubbelbyte-språk med hjälp av befintliga moderna system.

Den goda nyheten är att vi redan har support för det, vi måste bara fortsätta förbättra dessa modeller.

Lås upp kraften i glokalisering med vårt översättningshanteringssystem.

Lås upp kraften i

med vårt översättningshanteringssystem.

Registrera dig idag
Översätt dubbelt så snabbt oklanderligt
Kom igång
Våra onlineevenemang!
Gå med i vår community

Prova Bureau Works gratis i 14 dagar

Framtiden är bara några klick bort
Kom igång nu
De första 14 dagarna bjuder vi på
Support i världsklass