Skip to content
View mat126's full-sized avatar

Block or report mat126

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mat126/README.md

👋 Hi, I'm Matteo Morella

🎓 MSc in Statistical and Actuarial Sciences — 110/110 cum laude — Università degli Studi del Sannio
📊 Data science, statistical modeling, and machine learning, with a focus on sports analytics and healthcare
🧪 Into Bayesian methods, deep learning, and reproducible research
📍 Based in Italy · open to roles across data science, ML/AI engineering, and research


🔍 Projects

  • Multimodal architecture on the ISIC 2024 dataset (~401k images + 55 metadata variables): an EfficientNetB0 CNN on dermatoscopic images combined with FFNN / Random Forest / Gradient Boosting on tabular metadata
  • Models stacked via a logistic-regression meta-learner using out-of-fold predictions to prevent leakage
  • ROC-AUC ≈ 0.953; decision threshold selected via Youden's index and framed for clinical triage (minimizing false negatives), as decision support rather than diagnosis
  • 📘 Paper on Zenodo
  • Hierarchical Bayesian Bradley-Terry model ranking teams, Pokémon, moves and items for Worlds 2026, built on 17.5k tournament matches with team strength decomposed into feature effects
  • Additive and low-rank synergy (factorisation machine) variants in PyMC, sampled with NUTS on GPU (numpyro); Siamese Set Transformer in PyTorch as a non-linear comparison
  • Key findings: player skill dominates team choice (~5× the dispersion of any team feature), no single species has a robust effect, and the regularised Bayesian model beats the neural net on held-out log-loss (0.658 vs 0.669)
  • 📓 GPU notebooks on Kaggle · 📝 Full technical write-up in the repo
  • Comparative study using logistic regression, LDA, bagging, random forest (with hyperparameter tuning), and feedforward neural networks
  • SHAP explainability, ROC / Brier / F1 evaluation, full data pipeline, and reproducible code
  • 📘 Paper on Zenodo · 📊 Dataset on Kaggle
  • Monte Carlo simulator for the UEFA Swiss-system format, driven by a Bayesian Poisson model for match outcomes
  • Estimates qualification and seeding probabilities across simulated tournament runs

📄 Curriculum Vitae

📎 Download CV (PDF)


🛠️ Languages & Tools

Python R C LaTeX PyMC JAX scikit-learn PyTorch TensorFlow Keras pandas NumPy Git VS Code


📫 Contacts

Pinned Loading

  1. Expected-Goals-xG-model-in-Football Expected-Goals-xG-model-in-Football Public

    This repository contains a project developed in R aimed at creating a new model for evaluating Expected Goals (xG) in football.

    HTML 1

  2. skin-cancer-classification skin-cancer-classification Public

    Skin lesion classification with ML/CNN (ISIC 2024)

    Jupyter Notebook

  3. bayesian-uefa-swiss bayesian-uefa-swiss Public

    Simulating a Swiss-system UEFA World Cup qualification and testing whether it produces fairer outcomes than the traditional group stage, with a hierarchical Bayesian Poisson model as the match-outc…

    Jupyter Notebook

  4. bayesian-ranking-vgc bayesian-ranking-vgc Public

    Hierarchical Bayesian Bradley-Terry model ranking Pokémon VGC teams, moves and items for Worlds 2026 (Regulation M-B) from 17.5k tournament matches. Additive and low-rank synergy variants in PyMC/N…

    Jupyter Notebook