Maskin Översättning
Vad är maskin Översättning?
Maskin översättnings system är program eller online tjänster som använder maskin inlärnings teknik för att översätta stora mängder text från och till något av de språk som stöds. Tjänsten översätter en "källtext" från ett språk till ett annat "mål språk".
Även om begreppen bakom maskin översättnings teknik och gränssnitten för att använda den är relativt enkla, är vetenskapen och teknikerna bakom den extremt komplexa och sammanför flera ledande teknologier, i synnerhet djup inlärning ( artificiell intelligens), stordata, lingvistik, moln tjänster och webb-API: er.
Sedan början av 2010-talet, en ny artificiell intelligens teknik, djupa neurala nätverk (alias djup inlärning), har tillåtit tekniken för tal igenkänning att nå en kvalitets nivå som tillät Microsoft Translator team att kombinera tal igenkänning med sin grundläggande text översättnings teknik för att lansera en ny tal översättnings teknik.
Historiskt sett var den primära maskin inlärnings tekniken som användes i branschen statistisk maskin översättning (SMT). SMT använder avancerad statistisk analys för att uppskatta bästa möjliga översättningar för ett ord med tanke på sammanhanget i några få ord. SMT har använts sedan mitten av 2000-talet av alla större leverantörer av översättnings tjänster, inklusive Microsoft.
Tillkomsten av neurala maskin översättning (NMT) orsakade en radikal förskjutning i översättnings teknik, vilket resulterade i mycket högre kvalitet översättningar. Denna översättnings teknik började driftsätta för användare och utvecklare i senare delen av 2016.
Både SMT och NMT översättnings teknik har två delar gemensamt:
- Båda kräver stora mängder pre-Human översatt innehåll (upp till miljon tals översatta meningar) för att utbilda systemen.
- Inte heller fungera som tvåspråkiga ordböcker, översätta ord baserat på en lista över möjliga översättningar, men översätter baserat på kontexten av ordet som används i en mening.
Vad är Översättare?
Översättare och taltjänster, en del av Kognitiva tjänster samling av API: er, är maskin översättnings tjänster från Microsoft.
Text översättning
Translator har använts av Microsoft-grupper sedan 2007 och finns sedan 2011 som ett API för kunder. Översättaren används i stor utsträckning inom Microsoft. Det är inkorporerat i produktlokaliserings-, support- och onlinekommunikationsteam. Samma tjänst är också tillgänglig, utan extra kostnad, inifrån välbekanta Microsoft-produkter som Bing, Cortana, Microsoft-Edge, Office, Sharepoint, Skypeoch Yammer.
Översättare kan användas i webb- eller klientprogram på valfri maskinvaruplattform och med alla operativsystem för att utföra språköversättning och andra språkrelaterade åtgärder som språkidentifiering, text till tal eller ordlista.
Genom att använda REST-teknik av bransch standard skickar utvecklaren käll text (eller ljud för tal översättning) till tjänsten med en parameter som anger mål språket, och tjänsten skickar tillbaka den översatta texten för klienten eller webbappen som ska användas.
Översättaretjänsten är en Azure-tjänst som finns i Microsofts datacenter och drar nytta av den säkerhet, skalbarhet, tillförlitlighet och icke-avancerad tillgänglighet som även andra Microsoft-molntjänster får.
Tal Översättning
Översättningstekniken för översättare lanserades i slutet av 2014 med början med Skype Translator och finns som ett öppet API för kunder sedan början av 2016. Den är integrerad i Microsoft Translator live-funktionen, Skype, Skype-mötessändning och Microsoft Translator-apparna för Android och iOS.
Tal översättning är nu tillgänglig via Microsoft Speech, en heltäckande uppsättning helt anpassningsbara tjänster för tal igenkänning, tal översättning och tal syntes (Text till tal).
Hur fungerar text översättning?
Det finns två huvudsakliga teknologier som används för text översättning: det äldre, statistisk maskin översättning (SMT) och den nyare utvecklingen en, neural maskin översättning (NMT).
Statistisk maskin Översättning
Translators implementering av Statistical Machine Translation (SMT) bygger på mer än ett decennium av forskning på naturligt språk på Microsoft. I stället för att skriva handgjorda regler för att översätta mellan språk, moderna översättningssystem strategi översättning som ett problem att lära sig omvandlingen av text mellan språk från befintliga mänskliga översättningar och utnyttja de senaste framstegen inom tillämpad statistik och maskininlärning.
Så kallade "parallellkorpor" fungerar som en modern Rosetta Stone i massiva proportioner, vilket ger ord, fras och idiomatiska översättningar i sitt sammanhang för många språkpar och domäner. Statistiska modelleringstekniker och effektiva algoritmer hjälper datorn att ta itu med problemet med dechiffrering (upptäcka överensstämmelser mellan käll- och målspråk i utbildningsdata) och avkodning (hitta den bästa översättningen av en ny ingångs mening). Översättare förenar kraften i statistiska metoder med språklig information för att producera modeller som generaliserar bättre och leder till mer begripliga översättningar.
På grund av detta tillvägagångs sätt, som inte förlitar sig på ordböcker eller grammatiska regler, det ger de bästa översättningar av fraser där det kan använda sammanhanget runt ett givet ord kontra försöker utföra enstaka ord översättningar. För enstaka ord översättningar utvecklades den tvåspråkiga ordboken och är tillgänglig via www.Bing.com/Translator.
Neurala maskin Översättning
Kontinuerliga förbättringar av översättningen är viktiga. Prestandaförbättringar har dock planat ut med SMT-teknik sedan mitten av 2010-talet. Genom att utnyttja omfattningen och kraften i Microsofts AI-superdator, särskilt Microsoft Cognitive Toolkit, erbjuder Translator nu neurala nätverk (LSTM) baserad översättning som möjliggör ett nytt decennium av översättning kvalitets förbättring.
Dessa neurala nätverksmodeller är tillgängliga för alla talspråk via taltjänsten på Azure och via text-API:et med hjälp av kategori-ID:et "generalnn".
Neurala nätverk översättningar fundamentalt skiljer sig i hur de utförs jämfört med de traditionella SMT sådana.
Följande animation skildrar olika steg neurala nätverk översättningar gå igenom för att översätta en mening. På grund av detta tillvägagångs sätt, översättningen kommer att ta i sammanhanget hela meningen, kontra bara några ord glidande fönster som SMT teknik använder och kommer att producera mer vätska och mänskliga översatta ser översättningar.
Baserat på neurala nätverk utbildning, varje ord kodas längs en 500-dimension vektor (a) representerar dess unika egenskaper inom ett visst språk par (t. ex. engelska och kinesiska). Baserat på språkpar som används för utbildning, kommer det neurala nätverket själv definiera vad dessa dimensioner bör vara. De kan koda enkla begrepp som kön (feminin, maskulin, neutral), artighet nivå (slang, casual, skriftlig, formell, etc.), typ av ord (verb, Substantiv, etc.), men också alla andra icke-uppenbara egenskaper som härrör från utbildning data.
Stegen neurala nätverk översättningar gå igenom är följande:
- Varje ord, eller mer specifikt den 500-dimension vektor representerar det, går igenom ett första lager av "nerv celler" som kommer att koda den i en 1000-dimension vektor (b) representerar ordet inom ramen för de andra orden i meningen.
- När alla ord har kodats en gång i dessa 1000-dimensionen vektorer, processen upprepas flera gånger, varje lager möjliggör bättre fin justering av denna 1000-dimensionen representation av ordet inom ramen för hela meningen (i motsats till SMT teknik som bara kan ta hänsyn till ett 3 till 5 ord fönster)
- Den slutliga produktionen matris används sedan av uppmärksamhet lager (dvs. en programvarualgoritm) som kommer att använda både denna slutliga output matris och utdata från tidigare översatta ord för att definiera vilket ord, från käll meningen, bör översättas nästa. Det kommer också att använda dessa beräkningar för att potentiellt släppa onödiga ord på mål språket.
- Dekodern (Translation) Layer, översätter det markerade ordet (eller mer specifikt den 1000-dimension vektor representerar detta ord inom ramen för hela meningen) i sin lämpligaste mål språket motsvarande. Resultatet av detta sista lager (c) matas sedan tillbaka in i uppmärksamhet lagret för att beräkna vilket nästa ord från käll meningen bör översättas.
I exemplet som visas i animeringen är den Sammanhangs beroende 1000-dimensionens modell av "den"kommer att koda att substantivet (House) är ett feminint ord på franska (Mer från La Maison). Detta kommer att möjliggöra en lämplig översättning för "den"att vara"La"och inte"Le"(singular, hane) eller"Les"(plural) när den når dekodern (översättning) lager.
Uppmärksamhet algoritmen kommer också att beräkna, baserat på ordet (s) tidigare översatt (i detta fall "den"), att nästa ord som ska översättas ska vara ämnet ("House") och inte ett adjektiv ("Blå"). I kan uppnå detta eftersom systemet lärde sig att engelska och franska Invertera ordningen på dessa ord i meningar. Det skulle också ha beräknat att om adjektivet skulle "Stora"i stället för en färg, att det inte ska Invertera dem ("det stora huset"= >"La Grande Maison").
Tack vare detta tillvägagångs sätt är den slutliga produktionen i de flesta fall mer flytande och närmare en mänsklig översättning än en SMT-baserad översättning någonsin kunnat ha varit.
Hur fungerar tal Översättning?
Översättaren kan också översätta tal. Denna teknik är exponerad i Translator live-funktionen (http://translate.it), översättar apparna, Skype Translator och är även initialt tillgänglig endast via funktionen Skype Translator och i Microsoft Translator-apparna på iOS och Android, är denna funktion nu tillgänglig för utvecklare med den senaste versionen av den öppna REST-baserat API som finns på Azure Portal.
Även om det kan tyckas vara en rättfram process vid en första anblick för att bygga en tal översättnings teknik från den befintliga tekniken tegelstenar, krävde det mycket mer arbete än att bara ansluta en befintlig "traditionell" människa till maskin tal igenkänning motorn till den existerande text översättningen en.
För att korrekt översätta "källa" tal från ett språk till ett annat "mål" språk, systemet går igenom en fyra stegs process.
- Tal igenkänning, för att konvertera ljud in i text
- TrueText: en Microsoft-teknik som normaliserar texten för att göra den mer lämplig för översättning
- Översättning via text översättning motor som beskrivs ovan, men på översättnings modeller speciellt utvecklad för verkliga livet talat samtal
- Text-till-tal, vid behov, för att producera det översatta ljudet.
Automatisk tal igenkänning (ASR)
Automatisk tal igenkänning (ASR) utförs med hjälp av ett neuralt nätverk (NN) system utbildad på att analysera tusentals timmar av inkommande ljud tal. Den här modellen är utbildad på människa till människa interaktioner snarare än människa-till-maskin-kommandon, som producerar tal igenkänning som är optimerad för normala konversationer. För att uppnå detta, mycket mer data behövs samt en större DNN än traditionella människa-till-maskin ASRs.
Läs mer om Microsofts tal till text tjänster.
Sanntext
Som människor konversera med andra människor, vi talar inte så perfekt, klart eller prydligt som vi ofta tror att vi gör. Med TrueText-tekniken omvandlas den bokstavliga texten till en närmare återspegling av användarnas avsikter genom att ta bort tal disfluenser (Utfyllnadsord), till exempel "UM" s, "Ah" s, "och" s, "som" s, hakar och repetitioner. Texten blir också mer läsbar och översättnings bar genom att lägga till menings brytningar, rätt skiljetecken och versaler. För att uppnå dessa resultat, använde vi årtionden av arbete med språk teknik, utvecklade vi från översättare för att skapa TrueText. Följande diagram visar, genom ett exempel i verkliga livet, de olika transformationen TrueText arbetar för att normalisera denna bokstavliga text.
Översättning
Texten översätts sedan till någon av de språk och dialekter stöds av Translator.
Översättningar med hjälp av tal översättning API (som utvecklare) eller i en tal översättning app eller tjänst, drivs med den senaste neurala nätverk baserade översättningar för alla tal-input språk som stöds (se Här för hela listan). Dessa modeller byggdes också genom att utvidga den nuvarande, mesta dels skrivna-text utbildade översättnings modeller, med mer talad text korpusar att bygga en bättre modell för talad konversation typer av översättningar. Dessa modeller är också tillgängliga via "tal" standard kategori av det traditionella text översättnings-API: t.
För alla språk som inte stöds av neurala översättningen, traditionell SMT översättning utförs.
Text till tal
Om mål språket är ett av de 18 stödda text-till-tal- Språk, och användnings fallet kräver en ljud utgång, konverteras texten till talutdata med hjälp av tal syntes. Det här steget utelämnas i tal-till-text-översättningsscenarier.
Läs mer om Microsofts text-till-tal-tjänster.
Forskning
Visa de senaste forsknings dokumenten från Microsoft Translator-teamet.