De release van het vertaalmachine-systeem OpenNMT-tf 2.30.0 (Open Neural Machine Translation) is gepubliceerd, dat gebruik maakt van methoden voor machine learning. De code van de modules die door het OpenNMT-tf-project worden ontwikkeld, is geschreven in de programmeertaal Python, maakt gebruik van de TensorFlow-bibliotheek en wordt verspreid onder de MIT-licentie.
Tegelijkertijd wordt er aan een variant van OpenNMT op basis van de PyTorch-bibliotheek gewerkt, die verschilt in de ondersteunde mogelijkheden. Bovendien wordt de OpenNMT-variant op basis van PyTorch gepresenteerd als eenvoudiger in gebruik en multimodaal, terwijl de versie op basis van TensorFlow wordt gemarkeerd als modulair, stabiel en in staat om GPU-mogelijkheden te benutten om het leerproces van het neuraal netwerk te versnellen. Om de verspreiding van het product te vergemakkelijken, wordt er ook een zelfstandige variant van de vertaler in C++ ontwikkeld - CTranslate2, die vooraf getrainde modellen gebruikt zonder afhankelijkheden.
Modellen zijn voorbereid voor de Engelse, Duitse en Catalaanse talen; voor andere talen kan men zelf een model vormen op basis van datasets van het OPUS-project (voor het trainen van het systeem worden twee bestanden aan het systeem doorgegeven - ƩƩn met zinnen in de brontaal en de tweede met een kwalitatieve vertaling van deze zinnen naar de doeltaal).
Het project wordt ontwikkeld met deelname van het bedrijf SYSTRAN, dat gespecialiseerd is in het maken van middelen voor machinevertaling, en een groep onderzoekers van Harvard die modellen voor menselijke taal ontwikkelt voor systemen voor machine learning. De gebruikersinterface is maximaal vereenvoudigd en vereist alleen het opgeven van een invoerbestand met tekst en een bestand voor het opslaan van het vertaalresultaat. Het extensiesysteem biedt de mogelijkheid om extra functionaliteit op basis van OpenNMT te implementeren, zoals automatische samenvattingen, tekstclassificatie en het genereren van ondertitels.
In de nieuwe versie:
- Ondersteuning voor TensorFlow 2.11 is toegevoegd, maar nieuwe Keras-optimizers worden momenteel nog niet ondersteund (gebruik van de modus tf.keras.optimizers.legacy is vereist).
- Ondersteuning voor de nieuwe tak van de CTranslate2 3.x-engine is toegevoegd, bedoeld voor het efficiƫnt uitvoeren van modellen met een 'transformer'-architectuur.
- Een trainingsparameter voor modellen, pad_to_bucket_boundary, is toegevoegd om aanvullend vullen in te schakelen, waardoor de blokgrootte overeenkomt met waarden die een veelvoud zijn van length_bucket_width.
- Integratie van ondersteuning voor de meetwaarden chrf en chrf++ van het SacreBLEU-project, dat machinevertaling vergelijkt met referentie menselijke vertalingen.
- Het attribuut model ctranslate2_spec is verwijderd, omdat het niet langer wordt gebruikt in CTranslate2.
Bron: opennet.ru
