Recommender Systems are a subclass of information filtering systems that try to predict the preferences or the ratings that a user would give to an item. They are applicable in a variety of domains: from movie recommendation to shopping recommendation. Based on the available data, there is a rich set of applicable techniques that can be employed to perform recommendations. These techniques are able to exploit some specific information contained in data, and each category of algorithms is focused on a different type of data. Beyond basic approaches Ensemble methods are employed: these techniques merge the recommendations of two or more algorithms in order to obtain new and enriched ones. As for the basic algorithms, several different types of ensemble techniques exist. This thesis is about the application of optimization techniques to an ensemble technique called average weighting, in order to find the best possible values for the weights. Automated techniques can be extremely useful with respect to manual parameter tuning, especially for an increasing number of parameters. This work consists in applying three different optimization techniques, Genetic Algorithms, Powell's Conjugate Direction method and Bayesian Optimization with the intent to show that ultimately Bayesian Optimization is able to outperform the other two methods in terms of computational speed and raw performances. We resorted to data coming from the 2017 RecSys Challenge to support our work. We took part in the challenge along with other students from Politecnico di Milano and we ended 2nd, placing first among Academic teams while being the only team composed exclusively by Master Degree students.

I sistemi di raccomandazione sono una sottoclasse dei sistemi di filtraggio di informazioni che provano a predire le preferenze o le valutazioni che un utente darebbe a un prodotto. Sono applicabili a un'ampia gamma di domini: dalle raccomandazioni sui film a quelle per lo shopping. A seconda dei dati disponibili, c'è un'ampia varietà di tecniche applicabili che possono essere impiegate per fornire raccomandazioni. Queste tecniche sono in grado di estrarre alcune informazioni specifiche contenute nei dati, con ogni categoria di algoritmo concentrato su un particolare tipo di dato. Oltre agli approcci di base, sono impiegate le tecniche di ensemble: queste tecniche uniscono le raccomandazioni di due o più algoritmi in modo da ottenerne di nuove, per aumentarne l'accuratezza e/o la diversità. Così come per le tecniche di base, esistono diverse tecniche di ensemble. Questa tesi si concentra sull'applicazione di tecniche di ottimizzazione a una tecnica di ensemble chiamata average weighting (o media pesata), in modo da trovare i miglior valori possibili per i pesi. Le tecniche automatizzate possono essere estremamente utili rispetto alla messa a punto dei parametri manuale, specialmente per un numero di parametri crescente. Questo lavoro consiste nell'applicare tre differenti tecniche di ottimizzazione, algoritmi genetici, il metodo delle direzioni coniugate di Powell e l'ottimizzazione bayesiana, con l'intenzione di mostrare che quest'ultima è in grado di superare le prestazioni degli altri due metodi in termini di velocità computazionale e di punteggio ottenuto. Per supportare il nostro lavoro, ci siamo basati sui dati provenienti dalla RecSys Challenge del 2017. Abbiamo preso parte alla competizione con altri studenti del Politecnico di Milano e ci siamo classificati secondi, primi tra tutte le squadre accademiche essendo inoltre l'unico gruppo di studenti di Laurea Magistrale.

Bayesian optimization for ensemble hyperparameters in job recommendation

CESARO, FEDERICO;DAGRADA, MATTIA
2016/2017

Abstract

Recommender Systems are a subclass of information filtering systems that try to predict the preferences or the ratings that a user would give to an item. They are applicable in a variety of domains: from movie recommendation to shopping recommendation. Based on the available data, there is a rich set of applicable techniques that can be employed to perform recommendations. These techniques are able to exploit some specific information contained in data, and each category of algorithms is focused on a different type of data. Beyond basic approaches Ensemble methods are employed: these techniques merge the recommendations of two or more algorithms in order to obtain new and enriched ones. As for the basic algorithms, several different types of ensemble techniques exist. This thesis is about the application of optimization techniques to an ensemble technique called average weighting, in order to find the best possible values for the weights. Automated techniques can be extremely useful with respect to manual parameter tuning, especially for an increasing number of parameters. This work consists in applying three different optimization techniques, Genetic Algorithms, Powell's Conjugate Direction method and Bayesian Optimization with the intent to show that ultimately Bayesian Optimization is able to outperform the other two methods in terms of computational speed and raw performances. We resorted to data coming from the 2017 RecSys Challenge to support our work. We took part in the challenge along with other students from Politecnico di Milano and we ended 2nd, placing first among Academic teams while being the only team composed exclusively by Master Degree students.
FERRARI DACREMA, MAURIZIO
ING - Scuola di Ingegneria Industriale e dell'Informazione
21-dic-2017
2016/2017
I sistemi di raccomandazione sono una sottoclasse dei sistemi di filtraggio di informazioni che provano a predire le preferenze o le valutazioni che un utente darebbe a un prodotto. Sono applicabili a un'ampia gamma di domini: dalle raccomandazioni sui film a quelle per lo shopping. A seconda dei dati disponibili, c'è un'ampia varietà di tecniche applicabili che possono essere impiegate per fornire raccomandazioni. Queste tecniche sono in grado di estrarre alcune informazioni specifiche contenute nei dati, con ogni categoria di algoritmo concentrato su un particolare tipo di dato. Oltre agli approcci di base, sono impiegate le tecniche di ensemble: queste tecniche uniscono le raccomandazioni di due o più algoritmi in modo da ottenerne di nuove, per aumentarne l'accuratezza e/o la diversità. Così come per le tecniche di base, esistono diverse tecniche di ensemble. Questa tesi si concentra sull'applicazione di tecniche di ottimizzazione a una tecnica di ensemble chiamata average weighting (o media pesata), in modo da trovare i miglior valori possibili per i pesi. Le tecniche automatizzate possono essere estremamente utili rispetto alla messa a punto dei parametri manuale, specialmente per un numero di parametri crescente. Questo lavoro consiste nell'applicare tre differenti tecniche di ottimizzazione, algoritmi genetici, il metodo delle direzioni coniugate di Powell e l'ottimizzazione bayesiana, con l'intenzione di mostrare che quest'ultima è in grado di superare le prestazioni degli altri due metodi in termini di velocità computazionale e di punteggio ottenuto. Per supportare il nostro lavoro, ci siamo basati sui dati provenienti dalla RecSys Challenge del 2017. Abbiamo preso parte alla competizione con altri studenti del Politecnico di Milano e ci siamo classificati secondi, primi tra tutte le squadre accademiche essendo inoltre l'unico gruppo di studenti di Laurea Magistrale.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
tesi.pdf

accessibile in internet per tutti

Descrizione: Testo della tesi
Dimensione 1.51 MB
Formato Adobe PDF
1.51 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/137491