MatsuLM - Python implementation of a neural network language modeling toolkit
Loading...
URL
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
2020-08-19
Department
Major/Subject
Analytics and Data Science
Mcode
SCI3073
Degree programme
Master’s Programme in Industrial Engineering and Management
Language
en
Pages
48 + 6
Series
Abstract
Language models (LMs) give a probability of how likely a sequence of words might appear in a particular order in a sentence, and they are an essential part of automatic speech recognition (ASR) and natural language processing (NLP) systems. These systems have improved at a considerable pace over the past decade. Similarly, language models have significantly advanced after the invention of recurrent neural network language models (RNNLMs) in 2010. These RNNLMs are generally called neural network language models (NNLMs) and they have become the state-of-the-art language models because of their superior performance compared to N-gram models. This thesis is creating a new NNLM toolkit, called MatsuLM that is using the latest machine learning frameworks and industry standards. Hence, it is faster and easier to use and set up than the existing NNLM tools. Currently, there are very few open-source toolkits for NNLMs; however, these toolkits have both become outdated and are no longer supported, or they suffer from functionality issues. This work introduces a new NNLM toolkit, called MatsuLM, that includes all the essential components to create and monitor NNLM development effortlessly. This toolkit is built to be as lightweight and straightforward as possible to decrease development effort in the future. MatsuLM’s performance is compared against two existing NNLM toolkits (TheanoLM and awd-lstm-lm). In the experiments conducted during this thesis, both existing toolkits were slower than the newly presented MatsuLM in training the language models. Conse- quently, MatsuLM is currently the fastest and most up to date NNLM toolkit compared to TheanoLM and awd-lstm-lm.Kielimallit (LM) antavat arvion siitä, kuinka todennäköisesti sanasarja saattaa esiintyä lauseessa. LM on olennainen osa automaattista puheentunnistus- (ASR) ja luonnollisen kielenkäsittelyn- (NLP) järjestelmiä. ASR ja NLP järjestelmät ovat parantuneet huomat- tavalla vauhdilla viimeisen vuosikymmenen aikana. Samoin kielimallit ovat kehittyneet huomattavasti sen jälkeen, kun ensimmäiset rekursiivisien neuroverkkojen kielimallit (RNNLM) kehitettiin vuonna 2010. Näitä RNNLM-malleja kutsutaan yleensä neuroverkkokielimalleiksi (NNLM) ja niistä on tullut alan huipputeknologiaa erinomaisen suorituskykynsä vuoksi. Tämä opinnäytetyö esittelee uuden NNLM-työkalun, nimeltään MatsuLM, joka käyttää uusimpia koneoppimisstandardeja sekä -komponentteja. MatsuLM on nopeampi ja helpompi käyttää ja asentaa kuin nykyiset NNLM-työkalut, sen modernin koneoppi-misstandardisoinnin vuoksi. MatsuLM sisältää kaikki tärkeät komponentit vaivatonta NNLM-kehitystä varten. MatsuLM työkalu on rakennettu avoimella lähdekoodilla ole- maan mahdollisimman kevyt ja helppokäyttöinen, jotta sen avulla voidaan vähentää NNLM-kehityksen työläyttä tulevaisuudessa. Motivaatio MatsuLM:n kehitykseen syntyi NNLM-kehitykseen tarkoitettujen avoimella lähdekoodilla tehtyjen työkalujen puutteesta. Lisäksi olemassa olevat avoimen lähdekoodin NNLM-työkalun kärsivät puutteellisesta toiminnallisuudesta, koska ne ovat vanhentuneita, eikä niitä enää tueta tai ne ovat vielä varhaisessa kehitysvaiheessa, eivätkä siksi ole luotettavia. MatsuLM:n suorituskykyä verrataan kahteen muuhun olemassa olevaan NNLM-työkaluun (TheanoLM ja awd-lstm-lm). Opinnäytetyön aikana suoritetuissa kokeissa molemmat vertailussa käytetyt NNLM-työkalut olivat hitaampia, kuin MatsuLM NNLM-mallien koulutuksessa. Näin ollen MatsuLM on nopein ja pävitetyin NNLM-työkalu verrattuna TheanoLM:ään sekä awd-lstm-lm:iin.Description
Supervisor
Kurimo, MikkoThesis advisor
Singh, MittulKeywords
neural networks, language modeling, machine learning, deep learning, pytorch, LSTM