Mattia Curri

Master's Degree Computer Science Student — Software Developer — AI Engineer

Ciao! I'm Mattia, a Computer Science Master's student at the University of Bari. I build things at the intersection of deep learning, NLP and computer vision, always curious about the next hard problem.

Education

Master's Degree in Computer Science — AI Track

GPA: 4.0/4.0, entirely in English

Numerical MethodsDatabase IIFormal MethodsFundamentals of AINatural Language ProcessingSoftware Engineering for AI
Bachelor's Degree in Computer Science

110 cum laude/110, GPA: 3.8/4.0

Thesis: Thesis: Supervised Learning for Semantic Segmentation of Aerial Images — 3-month research internship at CILab Lab under Prof. Gennaro Vessio, comparing CNN and Transformer architectures on the CVPR 2024 Agriculture-Vision Challenge (~50k images).

Computational IntelligenceAlgorithms & Data StructuresDatabasesSoftware EngineeringKnowledge EngineeringInformation RetrievalHuman-Computer InteractionComputer Networks

Publications

FFT-UniBa at Cruciverb-IT: Special Length Tokens and CSP for Italian Crossword Solving

Fine-tuned Italian T5 with length-constrained generation and CSP-based grid solver. — EVALITA 2026, CEUR-WS Vol-4195

Projects

Look Where It Matters: Distilling Vision Through Explanations

Explored whether Grad-CAM explanations improve knowledge distillation from Qwen2.5-VL-3B into a ViT student. Compared 7 distillation variants — global MSE baseline vs explanation-weighted losses with mean/attention/cross-attention probes. Built a blind-comparison arena (React/Express) with 3 local VLM judges for qualitative evaluation on 500 Mini-ImageNet images, plus BERTScore and LLM-as-a-judge automated metrics.

PyTorchHugging FaceGrad-CAMReactExpress
End-to-end Code Comment Classification

Production-grade multi-label classification system categorizing code comments across Java, Python, and Pharo. Built end-to-end MLOps pipeline: DVC data versioning → CatBoost + SetFit dual-model training → MLflow experiment tracking → containerized FastAPI deployment with Gradio frontend. Prometheus/Grafana monitoring, sub-2s inference latency, 92.7% test coverage, published on HuggingFace Spaces with automated CI/CD.

PythonCatBoostDockerMLflowFastAPIGrafana
Temporal Link Prediction on Social Networks

Forecasted future social connections in the Gab network using Evolving Graph Convolutional Networks (EvolveGCN). Integrated 768-dim BERT embeddings from user posts as node features, trained incrementally across 6 temporal snapshots. Evaluated 4 experiment configurations varying learning rate and negative sampling, with GPU-accelerated metrics (cuDF/cuGraph) and t-SNE/UMAP embedding analysis.

PyTorchNetworkXW&BcuDFcuGraph
Corporate Credit Rating Prediction

Predicted corporate credit ratings (4 consolidated risk classes from 22 original categories) using RandomForest, XGBoost, and LightGBM. Tackled severe class imbalance with SMOTE, ADASYN, SMOTETomek, and SMOTEENN. Built a Bayesian Network with pgmpy for probabilistic inference on missing data. Achieved 86% balanced accuracy, evaluated with Cohen's Kappa and Geometric Mean.

Scikit-learnXGBoostPgmpyPandas

Achievements

Leonardo Hackathon — Space Edition

High-tech space-sector hackathon organized by Leonardo in collaboration with Talent Garden, focused on AI and automations for space applications. Selected as one of 50 finalists among 400 candidates — achieved 3rd place in team, winning a €2000 prize.

AIAutomationRoboticsSpace
First Italian University AI Competition

The competition involved using open data to create a solution for the city of Bari, focused on logistics and intelligent traffic management. Achieved 2nd place in the first stage out of 20 teams.

AILLMOpen Data
ITAData Hack 2025

Anomaly Detection task on Hadoop Distributed File System logs. Secured 2nd place out of 15 teams.

PythonCatBoostScikit-Learn
AI2B Hackathon Winner

Winning team of the AI2B Hackathon organized by University of Bari and AI2B, focused on AI and cybersecurity. Won first place out of 10 teams, obtaining a €500 prize.

CryptographyPrompt Engineering
CyberChallenge 2024

Qualified to the national stage by ranking in the top 6 of the local venue, reaching 21st place out of 43 teams at the national competition. Qualified for the local stage by being in the top 20 of the selection.

WebBinary ExploitationCryptographyNetwork

Additional

Italian (native) · English (B2 Cambridge)