Semi-automated document indexing
Kerppola, Juho (2020)
Diplomityö
Kerppola, Juho
2020
School of Engineering Science, Tuotantotalous
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2020091169370
https://urn.fi/URN:NBN:fi-fe2020091169370
Tiivistelmä
This thesis was done in co-operation with the Finnish public employment services. The aim was to develop an approach to provide automated indexing suggestions based on employment service descriptions. To realize this the research questions were structured around three concrete goals. First, identify suitable approaches and study the related algorithms for term assignment. Second, research evaluation methods for term assignment algorithms, that can be ultimately used in model selection. And third, implement the most promising algorithms, evaluate their performance, and finally provide recommendation on best alternatives.
Altogether, five different term assignment algorithms (two ensemble models and three individual algorithms) are implemented using an open source tool called Annif. It uses a combination of natural language processing and machine learning tools, that can be used for term assignment and provides a command line interface for both training and evaluating different algorithms. The results show that ensemble models (i.e. models that combine indexing suggestions from multiple individual algorithms) slightly outperformed individual term assignment models. Out of the individual algorithms Omikuji – a state-of-the-art machine learning algorithm for extreme multi-label classification – clearly outperformed VSM and Maui. VSM’s results were as expected whereas Maui’s performance was not on par with previous evaluation results found in literature. However, these results were partly to be expected since Maui is a lexical algorithm that uses dictionary mapping to prune candidate terms from the input text. Here the inputs consisted of short descriptions and often did not include all indexing terms in the description resulting to poor performance. Overall, the implemented term assignment models performed sufficiently well and provide added value in semi-automatic metadata generation. Tämä opinnäytetyö tehtiin yhteistyössä TE-palveluiden kanssa. Tavoitteena oli kehittää menetelmä, jolla voidaan tuottaa automaattisia asiasanaehdotuksia työvoimapalveluista olemassa olevien kuvausten perusteella. Tähän pääsemiseksi tutkimuskysymykset aseteltiin kolmen konkreettisen tavoitteen ympärille. Ensimmäisenä tavoitteena oli tunnistaa sopivia lähestymistapoja automaattisen asiasanoituksen toteuttamiseksi sekä tarkastella näihin liittyviä algoritmeja. Toisena kokonaisuutena olivat algoritmien evaluointimenetelmiin perehtyminen, jotta algoritmien keskinäistä suorituskykyä voitiin arvioida. Kolmannella tutkimuskysymyksellä edelliset kokonaisuudet tuotiin yhteen ja tavoitteeksi asetettiin tunnistettujen algoritmien implementointi, suorituskyvyn evaluointi sekä näiden pohjalta parhaan asiasanoitusalgoritmin suosittelu.
Diplomityössä tarkasteltiin yhteensä viittä eri asiasanoitus algoritmia (kaksi yhdistelmä mallia (eng. ensemble models) sekä kolme yksittäistä algoritmia) käyttäen avoimen lähdekoodin työkalua nimeltä Annif. Annif hyödyntää luonnollisen kielenkäsittelyn ja koneoppimisen työkalujen yhdistelmää, ja sitä voidaan käyttää asiasanoitus algoritmien kouluttamiseen ja evaluointiin. Tulokset osoittavat, että yhdistelmä mallit (eli mallit, joissa yhdistetään useiden yksittäisten algoritmien indeksointiehdotuksia) tuottavat hieman parempia tuloksia kuin yksittäiset asiasanoitus algoritmit. Yksittäisistä algoritmeista Omikuji – koneoppimisalgoritmi asiasanoitukseen - ylitti selvästi VSM- ja Maui-algoritmien tulokset. VSM:n tulokset olivat odotusten mukaisia, kun taas Mauin suorituskyky ei yltänyt kirjallisuuskatsauksessa olleiden tulosten tasolle. Mauin osalta tulokset olivat kuitenkin osittain odotettavissa, koska Maui on leksikaalinen algoritmi, joka etsii sopivia asiasanoitustermejä suoraan annetusta kuvaustekstistä. Tapaustutkimuksessa Mauille annetut syötteet koostuivat lyhyistä palvelukuvauksista, jotka eivät usein sisältäneet kaikkia indeksointitermejä, mikä johti huonoon suorituskykyyn. Vaikka tulokset Mauin osalta eivät olleet toivotunlaiset, muut algoritmit toimivat hyvin ja asiasanoitusehdotusten automatisointi saatiin toteutettua onnistuneesti.
Altogether, five different term assignment algorithms (two ensemble models and three individual algorithms) are implemented using an open source tool called Annif. It uses a combination of natural language processing and machine learning tools, that can be used for term assignment and provides a command line interface for both training and evaluating different algorithms. The results show that ensemble models (i.e. models that combine indexing suggestions from multiple individual algorithms) slightly outperformed individual term assignment models. Out of the individual algorithms Omikuji – a state-of-the-art machine learning algorithm for extreme multi-label classification – clearly outperformed VSM and Maui. VSM’s results were as expected whereas Maui’s performance was not on par with previous evaluation results found in literature. However, these results were partly to be expected since Maui is a lexical algorithm that uses dictionary mapping to prune candidate terms from the input text. Here the inputs consisted of short descriptions and often did not include all indexing terms in the description resulting to poor performance. Overall, the implemented term assignment models performed sufficiently well and provide added value in semi-automatic metadata generation.
Diplomityössä tarkasteltiin yhteensä viittä eri asiasanoitus algoritmia (kaksi yhdistelmä mallia (eng. ensemble models) sekä kolme yksittäistä algoritmia) käyttäen avoimen lähdekoodin työkalua nimeltä Annif. Annif hyödyntää luonnollisen kielenkäsittelyn ja koneoppimisen työkalujen yhdistelmää, ja sitä voidaan käyttää asiasanoitus algoritmien kouluttamiseen ja evaluointiin. Tulokset osoittavat, että yhdistelmä mallit (eli mallit, joissa yhdistetään useiden yksittäisten algoritmien indeksointiehdotuksia) tuottavat hieman parempia tuloksia kuin yksittäiset asiasanoitus algoritmit. Yksittäisistä algoritmeista Omikuji – koneoppimisalgoritmi asiasanoitukseen - ylitti selvästi VSM- ja Maui-algoritmien tulokset. VSM:n tulokset olivat odotusten mukaisia, kun taas Mauin suorituskyky ei yltänyt kirjallisuuskatsauksessa olleiden tulosten tasolle. Mauin osalta tulokset olivat kuitenkin osittain odotettavissa, koska Maui on leksikaalinen algoritmi, joka etsii sopivia asiasanoitustermejä suoraan annetusta kuvaustekstistä. Tapaustutkimuksessa Mauille annetut syötteet koostuivat lyhyistä palvelukuvauksista, jotka eivät usein sisältäneet kaikkia indeksointitermejä, mikä johti huonoon suorituskykyyn. Vaikka tulokset Mauin osalta eivät olleet toivotunlaiset, muut algoritmit toimivat hyvin ja asiasanoitusehdotusten automatisointi saatiin toteutettua onnistuneesti.