Classifying Restaurant Menu Items With Supervised Learning

Loading...
Thumbnail Image
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu | Master's thesis
Date
2021-01-25
Department
Major/Subject
Big Data and Large-Scale Computing
Mcode
SCI3042
Degree programme
Master’s Programme in Computer, Communication and Information Sciences
Language
en
Pages
63
Series
Abstract
Online food delivery is a rapidly growing business. The large selection of restaurants in these platforms poses a challenge as the individual dishes are described in the natural text and might not be tagged or categorized for machine use. This makes it difficult for the items to be used in platform-wide filtering, analysis, marketing, or search. This thesis uses a text classification model to classify dishes based on the natural text descriptions of restaurant dishes. The problem is explored using a dataset of restaurant menus from Wolt, one of the largest food delivery platforms in Finland. Dishes are classified using a multi-label approach using 20 different pre-determined labels such as pasta, dessert, and alcohol. A dataset involving 20 different labels is created for a supervised learning model. Machine learning pipeline is created and the performance of classifiers (support vector machines with different kernels, random forest classifier, multinomial Naive Bayes, linear regression, logistic regression, multi-layer perceptron neural network classifiers) is compared. The support vector machine with a linear kernel has the best subset accuracy (63.2%), F-measure (0.89), and recall (84.8%) scores among the tested classifiers. Multi-layer perceptron classifier is also performing well with an F-measurement of 0.867. Other classifiers such as random decision forest, logistic regression, or multinomial Naive Bayes were not as performant. Using pre-trained Word2Vec embeddings was not helpful in classification.

Ruoankuljetus verkossa kasvaa nopeasti. Suuri ravintolavalikoima ruoankuljetusalustoissa aiheuttaa haasteen sillä yksittäisiä ruokalajeja ei ole kategorisoitu tai merkattu konekäyttöön sopivaksi. Tämä tekee hankalaksi käyttää ruokalajeja suodattamisessa, analysoinnissa, markkinoinnissa tai haussa. Tämä opinnäytetyö käyttää koneoppimista luokittelemaan ruokalaleja niiden tekstikuvausten perusteella. Ongelmaa tutkitaan käyttäen Wolt-ruoanvälityspalvelun ravintoloiden ruokalistoja käyttäen. Ruokalajit luokitellaan 20 eri luokkaan käyttäen moniluokkaista tekstinluokittelua. Eri luokkia ovat muun muassa pasta, jälkiruoka ja alkoholi. Ohjattua koneoppimismallia varten luodaan 20 luokkaa sisältävä tietoaineisto. Koneoppimismalli luodaan ja eri luokittelualgoritmien (tukivektorikoneet eri kernelifunktioilla, päätöspuut, naiivi Bayesialainen malli, lineaarinen regressio, logistinen regressio, monikerroksinen perseptroniverkko) luokittelukykyä verrataan. Tutkimuksessa tukivektorikoneet lineaarisella kernelifunktioilla osoittui parhaaksi. Sillä on paras osajoukon tarkkuus (63,2%), F-mitta (0.89) ja erottelukyky (84,8%). Monikerroksiset perseptroniverkot osoittautuivat myös toimiviksi F-mitta-arvolla 0.867. Muut luokittelualgoritmit, kuten päätöspuut, logistinen regressio ja naiivi Bayesialainen malli eivät olleet yhtä hyviä. Valmiiksi koulutettujen Word2Vec-sanavektorien käytöstä ei ollut hyötyä luokituksessa.
Description
Supervisor
Jung, Alexander
Thesis advisor
Fedintsev, Alexander
Keywords
supervised learning, machine learning, classification, restaurant, food
Other note
Citation