CV
Education
- Ph.D in Recommender Systems, University of Cagliari, 2021 - Expected Oct. 2024
- M.S. in Computer Science, University of Cagliari, 2019 - 2021
- B.S. in Computer Science, University of Cagliari, 2016 - 2019
Work experience
- Amazon, Edinburgh, UK
- Applied Scientist II Intern, May 2024 – August 2024
- Amazon, Edinburgh, UK
- Applied Scientist II Intern, Nov. 2022 – March 2023
- Maxtrino, Cagliari, IT
- .Net Software Developer Intern, July 2019 – Sept. 2019
- Juvenile Court
- Full Stack Web Developer Intern, March 2019 - July 2019
Projects
M.S. Projects
- Sentiment Analysis with Bidirectional Recurrent Neural Networks
- Modelled two types of bidirectional RNN (LSTM, GRU) scoring 90% accuracy in predicting the rating (0 to 5) assigned to a review from its text on Amazon Dataset. Models were trained on word embeddings created with FASTTEXT on the preprocessed reviews. Models were built in Python and Tensorflow, and were compared against Random Forest and SVM. (Solo Project, 2021)
- Driver Real-Time Drowsiness Detector
- Developed a model for detecting if a driver is falling asleep (binary classification) from real-time video obtaining 92\% precision. Pipeline involves feature extraction encoding 4 properties from driver’s eyes, model crafting of three recurrent neural networks in an ensemble and evaluating with 5-Fold Cross-validation. (Team project, 3 people, 2021).
- Particle Swarm Optimization (PSO) Bike Rebalancing Problem
- Adapted PSO algorithm to solve the problem of finding the best path among stations for a bike picking vehicle with limited capacity minimizing cost in terms of distance. Accomplishing a reduction of computation time of 10 times at in exchange of a small loss in terms of objective function. Built in C++ and visualizing the best path in the graph of stations with Python. (Solo Project, 2021)
- Single vs Parallel on Graph Algorithms
- Developed an application for automatic deployment of AWS workers with Terraform for comparing execution time of several graph algorithms using standard python vs the same algorithm written using pyspark. Also conducted experiments to study if parallel computing can impact execution time and if a relationship between performance and number of workers exists. (Solo Project, 2021)
- Interactive 2D Efficient Point Location
- Designed a visual interactive implementation of “Trapezoidal Map algorithm” for 2D point location. Written in C++, QT creator and respecting theoretical time and space complexity. (Solo Project, 2020)
- Cart sector locator in a market using BOVW
- Created a model with 95\% accuracy for finding the location of a user in a shopping centre from the pictures taken from the cart. The problem is modelled as a multiclass problem for finding the sector using a KNN classifier trained with a bag of visual words. (Team project, 2 people, 2020).
B.S. Projecs
- Simulated Visa Transactions Data Stream
- Creaction an artificial data stream with a Kafka producer that simulated a real-time transactions flow. Data were consumed and redirected to: Postgresql with PostGis where it was possible to perform geographical queries. And to MongoDB where all the stream is labeled and stored for categories. 12 hours hackatlon for the exam Advanced Databases. (Team Project, 2 people, 2020)
- SmartWallet
- Website for keeping track of cryptocurrency wallets locally, showing balance and doing conversions between coins using real time values extracted from APIs. (Team project, 4 people, 2019)
- Sorry for ripping your game:( A Metal Slug Clone
- Multiplatform (Android, Windows) Metal slug clone with 3 levels with boss fights built from scratch. (Team Project, 4 people, 2019)
- Really?! An Ocaml Compiler
- A compiler following the given rules written in Ocaml (Team Project, 3 people, 2019)
- Algorithms ABC
- Ten programs each one having as subject a basic algorithm including sorting, string matching, graphs, trees, hashing, linked lists. (2017)
Side Projects
- CovidItalia.io
- A simple website that shows leadearbords with stats directly extracted by the daily government reports of the covid-19 cases in Italy with different granularities (Region, Province) and a Tableau Dashboard with more statistics. Hosted on AWS, built with Django for a week-long hackathon. (Team Project, 2 people, 2020)
Skills
- Programming Proficiency
- Python
- Java Spark
- C++
- Languages
- English CAE
- Italian Mothertongue
Talks
University of Glasgow - Reinforcement recommendation reasoning through knowledge graphs for explanation path quality (13 February, 2023)
Teaching
- Pula Summer School, Sardegna Ricerche, Cagliari, Italy
- Applicated Computer Science and Data Analytics (IADA), University of Cagliari, Cagliari, Italy
- Tutor of Algorithm and Data Structures 2023-2024
- Tutor of Algorithm and Data Structures 2022-2023
- Tutor of Algorithm and Data Structures 2021-2022
Thesis Supervision
- Alessandro Soccol: Learning KG represantations via LMs for multi-task
- Simone Cocco: Human-like Explanations via LMs
- Andrea Martis: RAG for education
- Giovanni Murgia: Food Explainable Recommendation
Service and leadership
- Program Committee:
- Recsys 2024
- ECIR 2024
- CIKM 2024
- Student Volunteer: ACM Recsys23
- LeadTheFuture Mentorship: Mentor 2022
- HuggingFace Student Ambassador 2022
- Student Volunteer: ACM Recsys21