Neironu Machine translation kas ļauj cilvēka Parity Innovations Cloud
2018 martā mēs Paziņoja (Hassan et al. 2018) izrāvienu rezultāts, ja mēs parādīja pirmo reizi mašīntulkošanas sistēmu, kas varētu veikt, kā arī cilvēku tulkotāju (jo īpaši scenārijs-ķīniešu-angļu ziņu tulkojums). Tas bija aizraujošs izrāviens mašīntulkošanas pētniecībā, bet sistēma, kuru mēs izveidojām šim projektam bija sarežģīta, smagsvara pētniecības sistēma, kas ietver vairākus progresiskus paņēmienus. Kamēr mēs izlaidām produkciju šīs sistēmas vairākos testu komplekti, sistēma pati par sevi nebija piemērots izvietošanai reālā laika mašīntulkošanas mākonis API.
Šodien mēs esam satraukti paziņot pieejamību ražošanā mūsu jaunākās paaudzes neironu mašīntulkošanas modeļus. Šie modeļi ietver lielāko daļu labestības mūsu pētniecības sistēmu un tagad ir pieejami pēc noklusējuma, kad lietojat Microsoft Translator API. Šie jaunie modeļi ir pieejami šodien ķīniešu, vācu, franču, hindi, itāliešu, spāņu, japāņu, korejiešu un krievu, no un uz angļu valodu. Drīzumā būs pieejamas vēl citas valodas.
Getting no pētniecības papīra mākonis API
Pagājušajā gadā mēs esam meklējām veidus, kā panākt daudz kvalitāti mūsu cilvēka paritātes sistēmu Microsoft Translator API, turpinot piedāvāt zemas izmaksas reāllaika tulkojumu. Šeit ir daži no soļiem šajā ceļojumā.
Skolotāju un studentu apmācība
Mūsu pirmais solis bija pāriet uz "skolotāju-students" ietvaros, kur mēs vilciens viegls reālā laika students, lai imitēt smagsvara skolotājs tīkls (Ba un Caruana 2014). Tas tiek paveikts, mācību students nevis paralēli dati, ka MT sistēmas parasti ir apmācīti, bet par tulkojumu, ko skolotājs (Kim un Rush 2016). Tas ir vienkāršāks uzdevums nekā mācīšanās no izejas datiem, un ļauj seklāks, vienkāršāks students ļoti cieši sekot komplekss skolotājs. Kā varētu sagaidīt, mūsu sākotnējie mēģinājumi joprojām cieta kvalitātes pilieni no skolotāja uz skolēnu (nav bezmaksas pusdienas!), bet mēs tomēr ieņēma pirmo vietu WNMT 2018 koplietojamo uzdevumu par efektīvu dekodēšana (Junczys-Dowmunt et al. 2018a). Daži īpaši aizraujoši rezultāti no šiem centieniem bija tas, ka transformators (Vaswani et al. 2017) modeļus un to modifikācijas spēlē arī ar skolotāju-studentu apmācību un ir apbrīnojami efektīvs laikā secinājumu par CPU.
Mācīšanās no šiem sākotnējiem rezultātiem un pēc daudz iterācijas mēs atklājām recepte, kas ļauj mūsu vienkāršs students ir gandrīz tāda pati kvalitāte kā komplekss skolotājs (dažreiz ir bezmaksas pusdienas pēc tam, kad visi?). Tagad mēs bijām brīvi, lai izveidotu lielu, sarežģītu skolotāju modeļus, lai palielinātu kvalitāti, neuztraucoties par reālā laika ierobežojumiem (pārāk daudz).
Reāllaika tulkošanas
Mūsu lēmums pāriet uz skolotāju un studentu sistēmu bija motivēts ar lielo darbu, ko Kim un Rush (2016) vienkāršiem uz RNN bāzes modeļiem. Šajā brīdī nebija skaidrs, vai ziņotie ieguvumi varētu izpausties arī transformatoru modeļiem (sk. Vaswani et al. 2017 Plašāku informāciju par šo modeli). Tomēr mēs ātri atklāja, ka tas tiešām ir gadījums.
Transformators students varētu izmantot ievērojami vienkāršotu dekodēšanas algoritmu (mantkārīgs meklēt), kur mēs vienkārši paņemt vienu vislabāk tulkoto vārdu katrā solī, nevis parastā metode (rāmju meklēšana), kas ietver meklēšanu caur milzīgu telpu iespējams Tulkojumi. Šīm izmaiņām bija minimāla kvalitātes ietekme, bet tās radīja lielus tulkošanas ātruma uzlabojumus. Turpretī, skolotājs modelis varētu ciest ievērojamu kritumu kvalitāti, pārejot no staru meklēšanas uz mantkārīgs meklēšanas.
Tajā pašā laikā mēs sapratu, ka, nevis izmantojot jaunākās neironu arhitektūra (transformators ar self-uzmanību), kas dekoders, students varētu mainīt, lai izmantotu krasi vienkāršotas un ātrāku atkārtotu (RNN) arhitektūru. Tas ir svarīgi, jo, lai gan Transformer kodētājs var aprēķināt pa visu avotu teikums paralēli, mērķa teikums tiek ģenerēts vienu vārdu laikā, tāpēc ātrums dekodētājs ir liela ietekme uz kopējo ātrumu tulkojumu. Salīdzinot ar pašapziņu, atkārtoti dekoders samazina algoritmisko sarežģītību no kvadrāta uz lineāru mērķa teikuma garumu. Jo īpaši skolotāju un studentu, kurā, mēs redzējām, nav kvalitātes zuduma dēļ šīs modifikācijas, ne automātiski, ne cilvēku novērtēšanas rezultātus. Vairāki papildu uzlabojumi, piemēram, parametru koplietošana, noveda pie turpmākas sarežģītības samazināšanās un ātruma palielināšanās.
Vēl viens skolotājs-students regulējuma priekšrocība mums bija ļoti satraukti redzēt, ka kvalitātes uzlabojumus laika gaitā arvien pieaugošo un mainot skolotāji ir viegli pārnestas uz nemainītu studentu arhitektūru. Gadījumos, kad mēs redzējām problēmas šajā sakarā, nelielu pieaugumu studentu modeļa jauda varētu slēgt plaisu vēlreiz.
Duālā mācīšanās
Galvenais ieskats duālās mācīšanās procesā (Viņš et al. 2016) ir "turp-atpakaļ tulkojums" pārbaudīt, ka cilvēki dažreiz izmanto, lai pārbaudītu tulkojuma kvalitāti. Pieņemsim, ka mēs izmantojam tiešsaistes tulkotājs iet no angļu uz itāļu. Ja mēs ne lasīt itāliešu, kā mēs zinām, ja tas ir izdarīts labs darbs? Pirms klikšķināt uz Nosūtīt uz e-pastu, mēs varētu izvēlēties, lai pārbaudītu kvalitāti, tulkojot Itālijas atpakaļ uz angļu (varbūt citā mājas lapā). Ja angļu mēs saņemam atpakaļ ir noklīdis pārāk tālu no oriģināla, izredzes ir viens no tulkojumiem devās pie sliedēm.
Divējāda mācīšanās izmanto to pašu pieeju, lai apmācītu divas sistēmas (piemēram, angļu-> itāliešu un itāļu-> angļu) paralēli, izmantojot turp-atpakaļ tulkojumu no vienas sistēmas, lai score, apstiprināt un apmācīt citu sistēmu.
Duālā mācīšanās bija galvenais faktors, kas veicina mūsu cilvēciskās paritātes pētījumu rezultātus. Kas iet no pētniecības sistēmas, lai mūsu ražošanas recepte, mēs vispārinātās šo pieeju kopumā. Ne tikai mēs co-vilcienu pārus sistēmu par katru citu produkciju, mēs arī izmantoja to pašu kritēriju filtrēšanas mūsu paralēli datiem.
Neprecīzu datu tīrīšana
Mašīntulkošanas sistēmas ir apmācīti par "paralēliem datiem", t.i., dokumentu pāriem, kas ir tulkojumu viens no otra, ideālā variantā, ko rada cilvēka tulkotājs. Kā izrādās, šie paralēlie dati bieži vien ir pilns ar neprecīziem tulkojumiem. Dažreiz dokumenti nav patiesi paralēli, bet tikai brīvi pārfrāzēts viens no otra. Cilvēku tulkotāji var izvēlēties atstāt dažus izejmateriālus vai ievietot papildu informāciju. Dati var saturēt typos, pareizrakstības kļūdas, gramatikas kļūdas. Dažkārt mūsu datizraces algoritmus var apmānīt ar līdzīgiem, bet ne-paralēliem datiem vai pat ar teikumiem nepareizā valodā. Sliktākajā no visiem, daudz interneta lapu mēs redzam, ir surogātpasts, vai faktiski var būt Machine tulkojumi nevis cilvēku tulkojumi. Neironu sistēmas ir ļoti jutīgas pret šāda veida neprecizitāti datos. Mēs noskaidrojām, ka ēkas neironu modeļus, lai automātiski identificētu un atbrīvoties no šīs neprecizitātes bija spēcīgi uzlabojumi kvalitātes mūsu sistēmām. Mūsu pieeja datu filtrēšanai radīja pirmo vietu WMT18 paralēlais corpus filtrēšanas kritērijs (Junczys-Dowmunt 2018a) un palīdzēja uzbūvēt vienu no spēcīgākajām angļu-vācu valodas tulkošanas WMT18 ziņu tulkošanas uzdevums (Junczys-Dowmunt 2018b). Mēs izmantojām uzlabotas versijas šo pieeju ražošanas sistēmas, mēs izlaidām šodien.
Word pārstāvniecības
Pārvietojot pētniecības tehnoloģiju uz ražošanu, rodas vairākas reālās pasaules problēmas. Iegūt numurus, datumi, laiki, kapitalizācija, atstarpes, utt labi jautājumiem daudz vairāk ražošanas nekā pētniecības sistēmā.
Apsveriet izaicinājumu lielo burtu. Ja mēs tulkojam teikumu "WATCH CAT VIDEOS šeit". Mēs zinām, kā tulkot "kaķis". Mēs gribētu tulkot "CAT" tādā pašā veidā. Bet tagad apsvērt "Watch ASV futbola šeit". Mēs negribam sajaukt vārdu "mums" un akronīmu "ASV" šajā kontekstā.
Lai to paveiktu, mēs izmantojām pieeju, kas pazīstama kā ņemt Mašīntulkošana (Koehn un Hoang 2007, Sennrich un Haddow 2016), kas darbojas šādi: "Cat" vai "CAT" vietā vienā skaitliskā atveidojumā ("iegulšana") mēs izmantojam vairākas iegulšanas, sauktas par "faktoriem". Šajā gadījumā primārā iegulšana būtu tāda pati "CAT" un "Cat", bet atsevišķs faktors nozīmētu kapitalizācijas, parādot, ka tas bija visu vāciņi vienā gadījumā, bet mazajiem burtiem otrā. Līdzīgi faktori tiek izmantoti avota un mērķa pusē.
Mēs izmantojam līdzīgus faktorus, lai apstrādātu vārdu fragmentus un atstarpi starp vārdiem (sarežģīta problēma atstarpju vai daļējas atstarpju valodās, piemēram, ķīniešu, korejiešu, japāņu vai taju).
Faktori arī ievērojami uzlabota tulkojumu numurus, kas ir kritiska daudzos scenārijos. Numuru tulkošana lielākoties ir algoritmiskā transformācija. Piemēram, 1 234 000 var rakstīt kā 12, 34000 hindi, 1.234.000 vācu un 123,4 万 ķīniešu valodā. Tradicionāli skaitļi ir attēloti kā vārdi, kā dažādu garumu rakstzīmju grupas. Tas padara grūti Mašīnmācīšanās atklāt algoritmu. Tā vietā mēs barojam katru ciparu no numura atsevišķi, ar faktoriem marķējums sākas un beidzas. Šis vienkāršais triks robusta un droši izņemta gandrīz visu numuru tulkošanas kļūdas.
Ātrāku modeļu apmācību
Kad mēs esam apmācību vienotu sistēmu, lai vienu mērķi, kā mēs par cilvēku paritātes pētniecības projektu, mēs sagaidām mest milzīgo skaitu aparatūras pie modeļiem, kas ņem nedēļas apmācīt. Kad tiek apmācīti ražošanas modeļi 20 + valodu pāriem, šī pieeja kļūst nepārliecinošs. Ne tikai mums ir nepieciešams saprātīgs pagrieziena ap laiku, bet mums arī ir mērens mūsu aparatūras prasībām. Attiecībā uz šo projektu mēs veikām vairākus snieguma uzlabojumus, lai Marian NMT (Junczys-Dowmunt et al. 2018b).
Marian NMT ir atvērtā pirmkoda neironu MT Toolkit, ka Microsoft Translator pamatā. Marian ir tīrs c + + neironu mašīntulkošanas instrumentu kopumu, un, kā rezultātā, ļoti efektīvs, nav nepieciešams GPUs Runtime, un ļoti efektīvs treniņa laikā
Sakarā ar tās autonomajā raksturs, tas ir diezgan viegli optimizēt Marian par NMT konkrētiem uzdevumiem, kas rada vienu no visefektīvākajiem NMT instrumentu kopuma pieejams. Ieskatieties Kritērijus. Ja jūs interesē Neural MT pētniecība un izstrāde, lūdzu, Pievienojieties un piedalieties Kopiena GitHub.
Mūsu uzlabojumus attiecībā uz jauktu precizitātes apmācību un dekodēšana, kā arī liela modeļa apmācību drīzumā būs pieejama valsts GitHub repozitorijā.
Mēs priecājamies par nākotni neironu mašīntulkošanu. Mēs turpināsim izskrējēt jauno modeļa arhitektūru uz atlikušajām valodām un Custom Translator visu šo gadu. Mūsu lietotāji automātiski iegūs ievērojami labākas kvalitātes tulkojumus, izmantojot Translator APIMūsu Translator app, Microsoft Office un Edge pārlūku. Mēs ceram, ka jaunie uzlabojumi palīdzēs jūsu personīgajai un profesionālajai dzīvei un gaidām jūsu atsauksmes.
Atsauces
- Jimmy ba un Rich Caruana. 2014. vai Deep Nets tiešām jābūt Deep? Progress neironu informācijas apstrādes sistēmu 27. Pages 2654-2662. https://papers.nips.cc/paper/5484-do-deep-nets-really-need-to-be-deep
- Hany Hassan, Anthony Aue, Chang Chen, Vishal Chowdhary, Jonathan Clark, Christian Federmann, Xuedong Huang, Marcin Junczys-Dowmunt, William Lewis, mu Li, Shujie Liu, tie-Yan Liu, Renqian Luo, Arul Menezes, Tao Qin, Frank Seide, Xu Tan, Fei Tian, Lijun Wu, Shuangzhi Wu, Yingce XIa, Dongdong Zhang, Zhirui Zhang, Ming Zhou. 2018. sasniegt cilvēka paritāti par Automatic ķīniešu uz angļu ziņu translation. http://arxiv.org/abs/1803.05567
- Viņš, di un XIa, Yingce un Qin, Tao un Wang, Liwei un Yu, Nenghai un Liu, tie-Yan un ma, Wei-Ying. 2016. duālā mācīšanās mašīntulkošanai. Sasniegumi neironu informācijas apstrādes sistēmās 29. Pages 820-828. https://papers.nips.cc/paper/6469-dual-learning-for-machine-translation
- Marcin Junczys-Dowmunt. 2018a. duālā nosacītā krusteniskā entropija filtrēšana skaļš paralēli corpora. Trešā mašīntulkošanas konference: kopīgu uzdevumu dokumenti. Beļģija, Pages 888-895. https://aclweb.org/anthology/papers/W/W18/W18-6478/
- Marcin Junczys-Dowmunt. 2018b. Microsoft ' s iesniegšana WMT2018 jaunumi translation uzdevums: kā es uzzināju, lai apturētu satraucoša un love Data. Trešā mašīntulkošanas konference: kopīgu uzdevumu dokumenti. Beļģija, Pages 425-430. https://www.aclweb.org/anthology/W18-6415/
- Marcin Junczys-Dowmunt, Kenneth Heafield, hieu Hoang, Roman Grundkiewicz, Anthony Aue. 2018a. Marian: rentabls augstas kvalitātes neironu Mašīntulkošana c + +. Tiesvedība 2 Workshop par neironu Mašīntulkošana un Generation. Melbourne, Austrālija, Pages 129-135. https://aclweb.org/anthology/papers/W/W18/W18-2716/
- Marcin Junczys-Dowmunt, Roman Grundkiewicz, Tomasz Dwojak, hieu Hoang, Kenneth Heafield, Tom Neckermann, Frank Seide, Ulrich Germann, Alham Fikri aji, Nikolay Bogoychev, André F. T. Martins, Alexandra Birch. 2018b. Marian: Fast neironu Mašīntulkošana c + +. Procedūras ACL 2018, System demonstrācijas. Melbourne, Austrālija, Pages 116-121. https://www.aclweb.org/anthology/P18-4020/
- Yoon Kim un Alexander M. Rush. 2016. zināšanu pārtvaice sekvences līmenī. Tiesvedībā 2016 konferencē par empīriskās metodes dabiskās valodas apstrāde, EMNLP 2016, Austin, Texas, ASV, November 1-4, 2016, Pages 1317-1327. https://aclweb.org/anthology/papers/D/D16/D16-1139/
- Philipp Koehn, hieu Hoang. 2007. factored tulkošanas modeļi. 2007. kopīgas konferences par empīriskām metodēm dabiskās valodas apstrādē un Datoriztās dabiskās valodas apguvē (EMNLP-CoNLL) izskatīšana. Prāga, Čehijas Republika, Pages 868-876. https://www.aclweb.org/anthology/D07-1091/
- Rico Sennrich, Barry Haddow. 2016. lingvistiskās ievades funkcijas uzlabo neironu mašīntulkošanu. Tiesvedība par pirmo konferenci par mašīntulkošanu: 1. sējums, zinātniskie raksti. Berlīne, Vācija, Pages 83-91. https://www.aclweb.org/anthology/W16-2209/
- Vaswani, Ashish un shazeer, Noam un Parmar, Niki un Uszkoreit, Jakob un Jones, Llion un Gomez, Aidan N un Kaiser, Lukasz un Polosukhin, Illia. 2017. uzmanību ir viss, kas jums nepieciešams. Progress neironu informācijas apstrādes sistēmu 30. Pages 5998-6008. https://papers.nips.cc/paper/7181-attention-is-all-you-need