Comparative analysis of outlier detection methods in the context of procurement spend analysis
Heikkinen, Anni (2021)
Diplomityö
Heikkinen, Anni
2021
School of Engineering Science, Tuotantotalous
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe202102013382
https://urn.fi/URN:NBN:fi-fe202102013382
Tiivistelmä
Outliers are inevitable when working with large amounts of data. Outlier detection methods utilizing machine learning have been developed and are readily available to use. This thesis aims to determine the best alternative outlier detection machine learning algorithm for a given spend data set from the procurement spend analysis perspective. The algorithms’ performance is analyzed, and a recommendation of an algorithm to be developed and implemented as a part of the case company Sievo’s product is given. Outlier detection algorithms chosen for the comparison are the One-Class Support Vector Machine, Principal Component Analysis based method, Isolation Forest, and Local Outlier Factor.
The literature review gives information about the four algorithms in theory. In addition to this, spend analysis and spend data are presented, and the concept of an outlier and outlier detection is defined. In the empirical section, a real spend data set is used from the case company’s client. The algorithms’ parameters are tuned to be the most suitable for the sample spend data. The tuned algorithms are iteratively tested with the data, and the performance is measured using Excess-Mass and Mass-Volume. Other measures like counts and proportions of the detected outliers are also evaluated in the comparison to support the analysis.
The final results are that one of the studied algorithms performs best in terms of Excess-Mass and Mass-Volume measures for the particular spend data case. Based on further analysis, that algorithm is the suggested one for the case company for further development considering the above-mentioned measures and other factors related to the algorithm’s overall performance. Poikkeamat ovat väistämätön osa suuria data määriä. Koneoppimista hyödyntäviä poikkeamien tunnistamisalgoritmeja on ajan mittaan kehitetty. Tämän työn tavoitteena on etsiä mahdollisimman hyvä vaihtoehto valituista koneoppimisalgoritmeista tunnistamaan poikkeamia annetusta kuludatasta, hankinnan kuluanalyysin näkökulmasta. Algoritmien suorituskyky mainitussa kontekstissa analysoidaan ja yhtä algoritmeista suositellaan case yritys Sievolle eteenpäin kehitettäväksi ja implementoitavaksi osaksi sen tuotetta. Valitut algoritmit vertailussa ovat One-Class Vector Machine, pääkomponenttianalyysiin perustuva poikkeamien tunnistus, Isolation Forest ja Local Outlier Factor.
Kirjallisuuskatsaus käy lävitse kaikki neljä algoritmia teoreettisella tasolla. Lisäksi hankinnan kuluanalyysi ja kuludata esitellään. Poikkeama sekä poikkeamien tunnistaminen käsitteinä määritellään. Työn empiirisessä osassa käytetään oikeaa case yrityksen asiakkaan kuludataa. Algoritmien parametrit optimoidaan käytettävään kuludataan sopiviksi. Optimoituja algoritmeja testataan iteratiivisesti datalla ja suorituskykyä tarkastellaan kahden mittarin avulla – Excess-Mass ja Mass-Volume. Analyysiä tukee myös muut mittarit kuten poikkeamien suhteellinen osuus sekä algoritmin laskennallinen suorituskyky.
Excess-Mass ja Mass-Volume mittareiden perusteella yksi algoritmeista suoriutui parhaiten kuludatan tapauksessa. Syvemmän analyysin perusteella, case yritykselle suositellaan kyseistä algoritmia jatkokehitettäväksi sekä aiemmin mainittujen mittareiden että muiden algoritmin kokonaissuorituskykyyn liittyvien tekijöiden perusteella.
The literature review gives information about the four algorithms in theory. In addition to this, spend analysis and spend data are presented, and the concept of an outlier and outlier detection is defined. In the empirical section, a real spend data set is used from the case company’s client. The algorithms’ parameters are tuned to be the most suitable for the sample spend data. The tuned algorithms are iteratively tested with the data, and the performance is measured using Excess-Mass and Mass-Volume. Other measures like counts and proportions of the detected outliers are also evaluated in the comparison to support the analysis.
The final results are that one of the studied algorithms performs best in terms of Excess-Mass and Mass-Volume measures for the particular spend data case. Based on further analysis, that algorithm is the suggested one for the case company for further development considering the above-mentioned measures and other factors related to the algorithm’s overall performance.
Kirjallisuuskatsaus käy lävitse kaikki neljä algoritmia teoreettisella tasolla. Lisäksi hankinnan kuluanalyysi ja kuludata esitellään. Poikkeama sekä poikkeamien tunnistaminen käsitteinä määritellään. Työn empiirisessä osassa käytetään oikeaa case yrityksen asiakkaan kuludataa. Algoritmien parametrit optimoidaan käytettävään kuludataan sopiviksi. Optimoituja algoritmeja testataan iteratiivisesti datalla ja suorituskykyä tarkastellaan kahden mittarin avulla – Excess-Mass ja Mass-Volume. Analyysiä tukee myös muut mittarit kuten poikkeamien suhteellinen osuus sekä algoritmin laskennallinen suorituskyky.
Excess-Mass ja Mass-Volume mittareiden perusteella yksi algoritmeista suoriutui parhaiten kuludatan tapauksessa. Syvemmän analyysin perusteella, case yritykselle suositellaan kyseistä algoritmia jatkokehitettäväksi sekä aiemmin mainittujen mittareiden että muiden algoritmin kokonaissuorituskykyyn liittyvien tekijöiden perusteella.