Uutisdatan luokittelu: Suomenkieliset uutisotsikot
Mansikka, Mikael (2020)
Mansikka, Mikael
2020
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2020-11-20
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202010267498
https://urn.fi/URN:NBN:fi:tuni-202010267498
Tiivistelmä
Tekstinkäsittely on saanut jalansijaa kasvavan datamäärän ja internetin myötä. Tekstinkäsittelyn eräs sovellus on tekstin kategorisointi eli tekstinluokitus. Tekstin luokittelun tarkoitus on jakaa tekstimuodossa oleva data ennalta määrättyihin luokkiin. Tämä tarkoittaa siis sitä, että tekstin luokittelun tarkoitus on siis selvittää funktio, jonka avulla voidaan mallintaa näytteiden kuuluvuus eri kategorioihin.
Tekstin luokittelun sovellukset ovat osa nykyistä arkipäivää. Tekstipohjaisen datan automaattinen luokitus, automaattinen sähköpostisuodatus, potilasasiakirjojen automaattinen luokittelu, suositusjärjestelmät ja esimerkiksi hakukoneet (Google, Bing, jne.) ovat esimerkkejä, joissa tekstin luokittelua käytetään vähentämään resurssikulutusta.
Diplomityön tarkoituksena on tutkia, minkälaisia menetelmiä on luokitella tekstiä sisältävää dataa ja kuinka hyvin ne toimivat. Tärkeimpänä huomiona metodien valitsemiseen on kieli, joka tässä työssä on suomi. Diplomityössä päädytään vertaamaan neljää eri luokittelijaa SVM (Support Vector Machine/Tukivektorikone), Naiivi Bayes, BiLSTM (Bidirectional Long-Short-Term Memory), BERT (Bidirectional Encoder Representations of Transformers) suomenkielisen uutisdatan luokittelussa. Kyseiset metodit on valittu aikaisempien tutkimuksien tuloksien, sekä niiden helppokäyttöisyyden ja toteutuksien saatavuuden takia.
Uutisdata koostuu uutisten otsikoista sekä näiden luokituksesta viiteen eri luokkaan (”Urheilu”, ”Kotimaa”, ”Ulkomaat”, ”Politiikka”, ”Kulttuuri”). Luonnollisten kielten käsittelyn eli NLP (Natural Language Processing) tekniikoiden avulla uutisotsikot muunnetaan numeeriseen muotoon, jota on mahdollista käsitellä koneellisesti. Tätä vaihetta kutsutaan esiprosessoinniksi. Koska esiprosessoitu data tuottaa parempia tuloksia, kuin häiriöitä sisältävä data. Työssä hyödynnetään esiprosessointina datan alkiot eli tässä tapauksessa sanat muunnetaan pieniksi kirjaimiksi, sekä ylimääräiset ja merkityksettömät sanat eli stoppisanat poistetaan. Esiprosessoinnin jälkeen ominaisuuksien valitseminen on vaihe, jonka tarkoitus on auttaa luokittelijoita luokitustehtävässä. Tämän jälkeen TF-IDF-muunnoksella sekä Python-kirjastojen valmisfunktioilla saavutetaan halutut koneellisesti ymmärrettävät muodot.
Luokitteluun käytettävistä metodeista parhaiten suoriutuu BERT. Kyseinen metodi sai parhaimmaksi tarkkuudekseen 94 %, mikä on 2 prosenttiyksikköä korkeampi kuin muut työssä vertailtavat algoritmit ja metodit. Toiseksi parhaimman tarkkuuden saavutti SVM jakaen saman tarkkuuden BiLSTM-neuroverkon kanssa. Työssä alhaisimman tarkkuuden tuotti Naiivi Bayes, jonka ominaisuudet selittävät sen toimivan heikosti epätasaisen jakauman omaavalla datalla. The field of natural language processing is a continuously expanding field of machine learning. Text classification is an application of NLP. Text classification has become more important because of its use on data from the world wide web. The purpose of text classification, which is also known as text categorization is to assign textual data into predefined categories. This means that the purpose of text classification is also to generate a function, which models the membership of data in separable categories.
Applications of text classification are part of everyday life. Examples of everyday text classification include e-mail filtering and search engines (Google, Bing, etc.).
The purpose of this Master of Science Thesis is to examine, what kind of methods exists for classifying text-based data on how well they work. The most important factor when choosing methods for text classification is the language of the text. In this thesis the language is chosen to be Finnish. During this thesis, the focus is on SVM (Support Vector Machine), Naive Bayes, BiLSTM (Bidirectional Long-Short-Term Memory) and BERT (Bidirectional Encoder Representations of Transformers). These methods are chosen, because of their success in previous studies and because of all previously mentioned methods have easy to use implementations available.
The data consist of news headlines and corresponding labels. Each news headline is assigned with one ”true” label, which can be either ”Homeland”, ”Abroad”, ”Sports”, ”Culture”, ”Economy” or ”Politics”. Natural Language Processing techniques are used to transform news headlines into numerical format. The first step in text classification is to preprocess the data. In this work data is preprocessed to only have lowercase letters. Part of preprocessing is to remove irrelevant words, which are also known as stopwords. Feature selection method is chosen to be TF-IDF and other Python libraries are used as feature selection tools when needed.
The best text classification method in this Master of Sciences Thesis is BERT, which achieved accuracy of 94 percent. Compared to other text classification methods, BERT achieved 2 percentage points higher accuracy. After BERT, the second most accurate method is SVM with the same score as BiLSTM. Naive Bayes performed the worst out from selected methods.
Tekstin luokittelun sovellukset ovat osa nykyistä arkipäivää. Tekstipohjaisen datan automaattinen luokitus, automaattinen sähköpostisuodatus, potilasasiakirjojen automaattinen luokittelu, suositusjärjestelmät ja esimerkiksi hakukoneet (Google, Bing, jne.) ovat esimerkkejä, joissa tekstin luokittelua käytetään vähentämään resurssikulutusta.
Diplomityön tarkoituksena on tutkia, minkälaisia menetelmiä on luokitella tekstiä sisältävää dataa ja kuinka hyvin ne toimivat. Tärkeimpänä huomiona metodien valitsemiseen on kieli, joka tässä työssä on suomi. Diplomityössä päädytään vertaamaan neljää eri luokittelijaa SVM (Support Vector Machine/Tukivektorikone), Naiivi Bayes, BiLSTM (Bidirectional Long-Short-Term Memory), BERT (Bidirectional Encoder Representations of Transformers) suomenkielisen uutisdatan luokittelussa. Kyseiset metodit on valittu aikaisempien tutkimuksien tuloksien, sekä niiden helppokäyttöisyyden ja toteutuksien saatavuuden takia.
Uutisdata koostuu uutisten otsikoista sekä näiden luokituksesta viiteen eri luokkaan (”Urheilu”, ”Kotimaa”, ”Ulkomaat”, ”Politiikka”, ”Kulttuuri”). Luonnollisten kielten käsittelyn eli NLP (Natural Language Processing) tekniikoiden avulla uutisotsikot muunnetaan numeeriseen muotoon, jota on mahdollista käsitellä koneellisesti. Tätä vaihetta kutsutaan esiprosessoinniksi. Koska esiprosessoitu data tuottaa parempia tuloksia, kuin häiriöitä sisältävä data. Työssä hyödynnetään esiprosessointina datan alkiot eli tässä tapauksessa sanat muunnetaan pieniksi kirjaimiksi, sekä ylimääräiset ja merkityksettömät sanat eli stoppisanat poistetaan. Esiprosessoinnin jälkeen ominaisuuksien valitseminen on vaihe, jonka tarkoitus on auttaa luokittelijoita luokitustehtävässä. Tämän jälkeen TF-IDF-muunnoksella sekä Python-kirjastojen valmisfunktioilla saavutetaan halutut koneellisesti ymmärrettävät muodot.
Luokitteluun käytettävistä metodeista parhaiten suoriutuu BERT. Kyseinen metodi sai parhaimmaksi tarkkuudekseen 94 %, mikä on 2 prosenttiyksikköä korkeampi kuin muut työssä vertailtavat algoritmit ja metodit. Toiseksi parhaimman tarkkuuden saavutti SVM jakaen saman tarkkuuden BiLSTM-neuroverkon kanssa. Työssä alhaisimman tarkkuuden tuotti Naiivi Bayes, jonka ominaisuudet selittävät sen toimivan heikosti epätasaisen jakauman omaavalla datalla.
Applications of text classification are part of everyday life. Examples of everyday text classification include e-mail filtering and search engines (Google, Bing, etc.).
The purpose of this Master of Science Thesis is to examine, what kind of methods exists for classifying text-based data on how well they work. The most important factor when choosing methods for text classification is the language of the text. In this thesis the language is chosen to be Finnish. During this thesis, the focus is on SVM (Support Vector Machine), Naive Bayes, BiLSTM (Bidirectional Long-Short-Term Memory) and BERT (Bidirectional Encoder Representations of Transformers). These methods are chosen, because of their success in previous studies and because of all previously mentioned methods have easy to use implementations available.
The data consist of news headlines and corresponding labels. Each news headline is assigned with one ”true” label, which can be either ”Homeland”, ”Abroad”, ”Sports”, ”Culture”, ”Economy” or ”Politics”. Natural Language Processing techniques are used to transform news headlines into numerical format. The first step in text classification is to preprocess the data. In this work data is preprocessed to only have lowercase letters. Part of preprocessing is to remove irrelevant words, which are also known as stopwords. Feature selection method is chosen to be TF-IDF and other Python libraries are used as feature selection tools when needed.
The best text classification method in this Master of Sciences Thesis is BERT, which achieved accuracy of 94 percent. Compared to other text classification methods, BERT achieved 2 percentage points higher accuracy. After BERT, the second most accurate method is SVM with the same score as BiLSTM. Naive Bayes performed the worst out from selected methods.