AI Engineer based in Luxembourg.
Master's Researcher focused on clinical AI and few-shot learning.
Former IT Project Manager who crossed over to the building side, and never looked back.
Drawn to hard problems where data is scarce, stakes are high, and the model needs to know what it doesn't know.
Open to collaboration on AI, ML engineering, and anything where explainability matters.
"The most interesting question isn't whether a model is accurate, it's whether it knows when it's wrong."
The problem: rare renal tumours don't have thousands of labelled scans. You can't just throw data at it.
Built a unified pipeline that learns from very few examples using episodic meta-learning (Prototypical Networks), trained on the multi-centre KiTS23 dataset (599 cases, 123 hospitals). The model uses Monte Carlo Dropout to flag ambiguous cases for human review instead of silently getting them wrong. Integrated Grad-CAM for spatial explainability so predictions can be inspected visually.
The combination of episodic meta-learning + Bayesian uncertainty + spatial explainability on a realistic multi-centre cohort hadn't been done before. That gap was the whole motivation.
Python PyTorch MONAI Prototypical Networks Monte Carlo Dropout Grad-CAM KiTS23
Four-stage Alzheimer's classification from 6,400 MRI scans. Benchmarked a custom CNN against ResNet50 and EfficientNetB0 — the custom architecture won at 93% accuracy, macro F1 of 0.93. Grad-CAM analysis showed activations consistently landing on the hippocampus and ventricles, matching established neuropathology. That alignment is what makes AI trustworthy in a clinical setting.
Python TensorFlow/Keras Custom CNN ResNet50 EfficientNetB0 Grad-CAM
github.com/Mhanyn/Brain-Tumor-Detector
Research project comparing custom and pre-trained architectures for 4-class brain MRI classification (Glioma, Meningioma, Pituitary, Healthy). The custom CNN reached 99.25% test accuracy, outperforming DenseNet201 and Xception. Full evaluation suite including per-class precision, recall, F1, confusion matrices and ROC curves.
Python TensorFlow/Keras CNN DenseNet201 Xception Google Colab
Binary malignancy classification on cell nuclei features
Logistic Regression vs. KNN with GridSearchCV hyperparameter tuning. Evaluated on AUC-ROC and stratified F1. Clean end-to-end pipeline from preprocessing through evaluation.
Python Scikit-learn Pandas Seaborn GridSearchCV
End-to-end deployed health prediction app
Random Forest classifier on lifestyle biomarker data, serialised and served as a live Flask REST API with a StandardScaler preprocessing pipeline. The full trip from notebook to something that actually runs.
Python Scikit-learn Random Forest Flask
HPC — MPI/OpenMP implementation of parallelised K-Means
Implemented a hybrid parallel K-Means clustering algorithm combining MPI for inter-node communication and OpenMP for intra-node threading. Designed to handle high-dimensional personality trait datasets, with performance benchmarked against a sequential baseline to quantify speedup across varying core counts and node configurations.
C MPI OpenMP High-Performance Computing Parallel Algorithms
HPC — performance analysis of distributed image processing
Research project analysing the performance trade-offs in parallel image blurring across different parallelisation strategies. Evaluated synchronization overhead, communication patterns, and load balancing across processes to understand how data distribution and inter-process communication impact scalability on multi-core and distributed systems.
C MPI OpenMP High-Performance Computing Performance Analysis
Exhaustive Search vs. Genetic Algorithm — where does brute force break down?
Benchmarked DFS and GA across increasing board sizes and pinpointed the exact crossover where exact search becomes computationally hopeless and heuristics take over. Classic CS, but satisfying to measure precisely.
Python
English French Arabic Spanish German
Always glad to hear from people working in AI, ML engineering, or anything related to data.