projects
Code behind my research, teaching and side projects, all open source on GitHub.
Research
FallacyRAG
Under review at EACL 2027
Retrieval-augmented fallacy detection and classification in US political debates, with retrieval steered by the support and attack relations between arguments. Improves macro-F1 up to 0.864 for detection and 0.725 for classification over non-retrieval baselines.
RooseBERT
WI-IAT 2026
A BERT language model for political discourse, pre-trained on 11 GB of English debates and speeches (cased and uncased, from scratch or by continued pre-training). Outperforms general-purpose models on most downstream tasks, from stance detection to NER.
DebateLens
Work in progress
A SwiftUI iOS app that lets journalists read US presidential debates (1960-2020) as annotated argumentation: claims and premises, what supports or attacks them, and the fallacies used. Built on ElecDeb60to20.
Political Debates Graph Analysis
ArgMining@ACL 2025
Code for 'Leveraging Graph Structural Knowledge to Improve Argument Relation Prediction in Political Debates'. Knowledge graph embeddings over the argument graph of US presidential debates predict support, attack and equivalence relations.
ElecDeb60to20
Dataset (fork)
Annotated corpus of US presidential debates (1960-2020) with argument components, support and attack relations, and fallacies. A fork of the public dataset repository, which my work on fallacy detection and relation prediction builds on.
Teaching
Data Analysis and Visualization
Course material, 2025
Slides, Colab notebooks and solutions for the Data Analysis and Visualization course at CentraleDigitalLab@Nice: exploratory analysis, missing data and outliers, imbalanced data, text encoding, dimensionality reduction and visualization.
Machine learning and data
Multi-Source LMs for Audio
Can a language model trained on vector-quantized audio help music generation and source separation? Code to train a VQ-VAE on the Slakh dataset, a Transformer on the quantized representation, and a BERT fine-tuned on codebook indices.
Cross-Lingual Embeddings
An encoder-decoder model that places Italian and French embeddings in a shared latent space, trained with a contrastive loss on Europarl parallel corpora, with hyperparameter optimization and an ablation study.
Segmentation Is All You Need
Is segmentation always a useful preprocessing step in computer vision? Compares thresholding, watershed and clustering-based segmentation before classification and object detection, on images of the ten Formula 1 teams.
SarcasTweet
A neural network that classifies Italian tweets as sarcastic or not, trained on a manually annotated dataset. The notebook covers collecting tweets, analysis and training; the best model is served by a Flask app packaged as a Docker image.
Smart Houses
Hour-ahead demand response for home energy management, with Vincenzo Imperati. An LSTM forecasts electricity prices twelve hours ahead and multi-agent reinforcement learning schedules each appliance to cut cost and user discomfort.
Know a Person by Its Heart
Biometric identification from electrocardiograms, aimed at signals recorded by a smartwatch. Filtering and denoising, feature extraction from the ECG waves, and a classifier evaluated with CMC curves on the PTB diagnostic ECG database.
Software engineering
QRestaurant
Bachelor thesis
Digital guest registration for restaurants during COVID-19. Customers carry a personal QR code that restaurateurs scan to log attendance and receive alerts about positive cases. A Spring Boot backend and a React web app for restaurateurs.
Prodigit Bot
Team project, inactive
A Telegram bot that books study rooms at Sapienza for Computer Science master's students, built with a small team. Inactive since the end of the COVID emergency.
More on GitHub.