Not logged in.

Contribution Details

Type Master's Thesis
Scope Discipline-based scholarship
Title A Neural Transducer in PyTorch: Efficient Mini-Batching for Large-Scale Training, Transformer Encoders, and Batched Decoding
Organization Unit
Authors
  • Silvan Wehrli
Supervisors
  • Simon Clematide
  • Peter Makarov
Language
  • English
Institution University of Zurich
Faculty Faculty of Business, Economics and Informatics
Date 2022
Abstract Text Neural methods have shown great success in string transduction tasks such as grapheme-to-phoneme conversion or morphological inflection. A particularly successful class of models for these tasks are recurrent neural transducers that use an encoder-decoder architecture to predict character-level edit actions. This work builds on such a neural transducer. Despite its ongoing success, this particular approach offers room for improvement: The model uses an outdated software framework, and the implementation is tailored toward the use on a CPU. This leads to low training efficiency preventing the application to large datasets. Moreover, the fully recurrent structure of the model does not reflect recent technological developments, as the non-recurrent transformer architectures have become dominant in many areas of natural language processing. This thesis addresses these shortcomings by reimplementing the model using the machine learning framework PyTorch, implementing GPU-supported mini-batch training and batched greedy decoding, as well as adding support for transformer-based encoders. Experimental results on standard datasets confirm the successful reimplementation. Top rankings in the SIGMORPHON 2022 Shared Task on Morpheme Segmentation (featuring training sets of up to 750,000 samples) demonstrate the model's ability to scale: GPU training and greedy decoding are up to 250 times, respectively, 10 times faster. While transformer-based encoders rarely outperformed recurrent encoders, the initial experiments in this work lay the foundation for further experimentation.
Zusammenfassung Neuronale Methoden haben sich bei der Umwandlung (engl. transduction) von Zeichenketten (engl. strings), wie derjenigen von Graphemen in Phoneme oder der morphologischen Flexion, als sehr erfolgreich erwiesen. Eine besonders erfolgreiche Klasse von Modellen für diese Aufgaben sind rekurrente neuronale Transducer, die eine Kodierer-Dekodierer-Architektur (engl. encoder-decoder architecture) zur Vorhersage von konkreten Änderungen (engl. edit actions) auf Zeichenebene verwenden. Die vorliegende Arbeit baut auf einem solchen Transducer auf. Trotz seines anhaltenden Erfolgs bietet dieser konkrete Ansatz Potential für Verbesserungen: Das Modell verwendet ein veraltetes Software-Framework, und die Implementierung ist auf den Einsatz auf einem CPU zugeschnitten. Dies führt zu einer geringen Trainingseffizienz, was die Anwendung auf grosse Datensätze verhindert. Ausserdem spiegelt die vollständig rekurrente Struktur des Modells nicht neuere technologische Entwicklungen wieder, da nicht-rekurrente Transformer-Architekturen in Natural Language Processing für viele Aufgaben vorherrschend geworden sind. Diese Arbeit befasst sich mit diesen Schwächen, indem das Modell in dem Machine-Learning-Framework PyTorch reimplementiert wird, GPU-gestütztes Mini-Batch-Training und Batched Greedy Decoding implementiert werden und das Modell um Support für Transformer-basierte Kodierer (engl. encoders) erweitert wird. Experimentelle Ergebnisse mit Standard-Datensätzen bestätigen die erfolgreiche Neuimplementierung. Spitzenplatzierungen im SIGMORPHON 2022 Shared Task on Morpheme Segmentation (mit Trainingsdatensätzen von bis zu 750'000 Beispielen) demonstrieren die Skalierbarkeit des Modells: Training und Greedy Decoding auf einem GPU sind bis zu 250 respektive 10 Mal schneller. Während Transformer-basierte Kodierer nur in wenigen Fällen besser abschnitten als rekurrente Kodierer, bilden die experimentellen Ergebnisse dieser Arbeit die Grundlage für weitere Experimente.
PDF File Download
Export BibTeX