The emerging fifth generation 5G cellular networks face strict requirements for the quality of service. Accurate and fast algorithms need to be deployed to deliver the promised high data rates and low latencies. One of those algorithms, the frequency offset compensation, is the focal point of this thesis. The goal is to develop a machine learning model for frequency offset compensation in a 5G base station receiver. The feasibility of the model is evaluated based on comparisons to an existing conventional algorithm.
Denoising autoencoders are selected as the machine learning method for this thesis. The most significant novelty of this approach is that an autoencoder does not use an external estimate of the frequency offset. The autoencoder models are developed with the PyTorch framework in the Python programming language. The development work is conducted in three paths, each focusing on one autoencoder architecture. The data for the machine learning solution is generated with a link-level simulator that can simulate communication scenarios between a transmitter and a receiver. In addition to monitoring the autoencoders' performance at training time, the trained models are integrated into the link-level simulator to examine their impact on the whole signal processing chain of the receiver.
Most of the developed models demonstrate poorer performance than the conventional algorithm. It was verified that the training data contains all the needed information in order to compensate for the frequency offset ideally, but the autoencoders did not learn to utilize this information. However, the positive results in this thesis indicate that an autoencoder-based algorithm can outperform the conventional method especially at higher frequency offsets. It was also discovered that an autoencoder trained for a narrow frequency offset range is able to generalize outside of that range to some extent.
Kehittyvien viidennen sukupolven 5G-matkapuhelinverkkojen toimintaan kohdistuu tiukkoja laatuvaatimuksia. Verkoissa on hyödynnettävä tarkkoja ja nopeita algoritmeja, jotta luvatut suuret datanopeudet ja matalat viiveet voidaan saavuttaa. Tämä diplomityö keskittyy yhteen näistä algoritmeista, taajuusvirheen kompensointiin. Tavoitteena on kehittää koneoppimisratkaisu taajuusvirheen kompensointiin 5G-tukiaseman vastaanottimessa. Koneoppimismallin toteutettavuutta arvioidaan vertaamalla sitä olemassa olevaan perinteiseen algoritmiin.
Kohinaa poistavat autoenkooderit (engl. denoising autoencoders) on valittu tämän diplomityön koneoppimismenetelmäksi. Tämän lähestymistavan merkittävin uutuus on se, että autoenkooderi ei hyödynnä erillistä arviota taajuusvirheestä. Autoenkooderimallien kehityksessä käytetään PyTorch-kirjastoa Python-ohjelmointikielellä. Työssä keskitytään kolmeen erilaiseen autoenkooderiarkkitehtuuriin, joita kehitetään toisistaan erillään. Data koneoppimisratkaisua varten tuotetaan linkkitason simulaattorilla, jolla voidaan simuloida lähettimen ja vastaanottimen välistä viestintää eri tilanteissa. Sen lisäksi, että autoenkooderien suorituskykyä valvotaan niiden opetuksen aikana, opetetut mallit yhdistetään linkkitason simulaattoriin, jotta voidaan arvioida niiden vaikutusta koko vastaanottimen signaalinkäsittelyketjuun.
Suurimmalla osalla kehitetyistä malleista on heikompi suorituskyky kuin vertailualgoritmilla. Työssä varmistettiin, että opetusdata sisältää kaiken tarvittavan informaation ideaalista taajuusvirheen kompensointia varten, mutta mallit eivät oppineet hyödyntämään tätä informaatiota. Tässä diplomityössä saavutetut positiiviset tulokset osoittavat kuitenkin, että autoenkooderiin perustuva menetelmä voi suoriutua perinteistä menetelmää paremmin erityisesti tilanteissa, joissa taajuusvirhe on suuri. Työssä havaittiin myös, että kapealle taajuusvirhealueelle opetettu autoenkooderi pystyy jossain määrin toimimaan yleisemmin myös tämän alueen ulkopuolella.