Udgaven er udgivet af maskinoversættelsessystemet OpenNMT-tf 2.30.0 (Open Neural Machine Translation), som bruger maskinlæringsteknikker. Koden for de moduler, der udvikles af OpenNMT-tf-projektet, er skrevet i Python, bruger TensorFlow-biblioteket og distribueres under MIT-licensen.
Samtidig udvikles en udgave af OpenNMT baseret på PyTorch-biblioteket, som adskiller sig i forhold til de understøttede funktioner. Derudover præsenteres OpenNMT baseret på PyTorch som lettere at bruge og multimodal, mens udgaven baseret på TensorFlow fremhæves som modulær, stabil og i stand til at udnytte GPU'ens kapaciteter til at fremskynde træningsprocessen af neurale netværk. For at simplificere distributionsproduktet udvikles der også en selvstændig udgave af oversætteren i C++ — CTranslate2, som bruger foruddannede modeller uden afhængigheder.
Modellerne er forberedte til engelsk, tysk og katalansk, og for andre sprog kan man selv skabe en model baseret på datasættet fra OPUS-projektet (to filer sendes til systemet til træning — én med sætninger på kilde-sproget, og den anden med kvalitetsoversættelser af disse sætninger til mål-sproget).
Projektet udvikles i samarbejde med virksomheden SYSTRAN, der specialiserer sig i at skabe maskinoversættelsesværktøjer, og en gruppe forskere fra Harvard, der udvikler modeller for menneskesprog til maskinlæringssystemer. Brugergrænsefladen er maksimeret for simplificering og kræver kun angivelse af inputfilen med teksten og filen til at gemme oversættelsesresultatet. Udvidelsessystemet giver mulighed for at implementere yderligere funktionalitet baseret på OpenNMT, som eksempelvis auto-referencer, tekstklassifikation og generering af undertekster.
I den nye version:
- Der er tilføjet support til TensorFlow 2.11-biblioteket, men nye Keras-optimeringsalgoritmer understøttes endnu ikke (det kræver brug af tf.keras.optimizers.legacy-tilstand).
- Der er tilføjet support til den nye version af CTranslate2 3.x-motoren, der er designet til effektivt at udføre modeller med "transformer"-arkitektur.
- Der er tilføjet træningsparameteren pad_to_bucket_boundary for at inkludere ekstra fyld, der justerer blokstørrelsen til værdier, der er multipla af length_bucket_width.
- Integration af CHRF og CHRF++ metrics fra SacreBLEU-projektet, der sammenligner maskinoversættelse med reference menneskelig oversættelse.
- Attributten ctranslate2_spec er fjernet, da den ikke længere bruges i CTranslate2.
Kilde: opennet.ru
