Mahdi Sabet Kish
Machine Learning Researcher — Self-Supervised Learning
Research Fellow, Signal & Image Processing Lab, Shiraz University
I work on learning methods that don't need large labeled datasets to be useful, and on applying them carefully to high-dimensional biological, medical imaging and healthcare data. My background is in mathematics; most of my current work is in Python and PyTorch, built around reproducible pipelines run on HPC clusters.
About
From algebra to applied machine learning
My PhD is in mathematics, in algebra, and for most of it I was working with logical-algebraic structures that have nothing to do with neural networks. Somewhere in the middle of that I got pulled into machine learning, first through a plant phenomics project that needed someone comfortable with both the math and the coding, and then on my own, through self-supervised learning. What stuck with me from the algebra side is less a specific result and more a habit of asking what structure a system actually has, and I'm increasingly interested in carrying that into how ML and deep learning models are built rather than treating the math as something you only bring in afterward to explain what a trained model did. Since finishing the PhD I've stayed in research as a research fellow at the Signal & Image Processing Lab, Shiraz University.
What keeps me interested in SSL is the constraint it puts on you: you can't lean on huge labeled datasets, so you have to think carefully about what structure in the data you're actually exploiting. I've applied that across a few different areas rather than just one: computer vision, transformer-based sequence and language models, world models and non-contrastive representation learning, federated and distributed settings, and computational biology. The biology side gets a bit more attention below because gene expression data is high-dimensional, expensive to label, and often has far more features than patients, which is exactly the setting where careless evaluation gives you numbers that don't survive contact with a new dataset. Most of my recent projects there, on METABRIC, TCGA, and spatial transcriptomics data, are built around getting that evaluation right first and the modeling second. The same approach now extends to brain imaging: tumour segmentation on structural MRI and autism classification from resting-state fMRI connectomes.
Day to day, that means Python, PyTorch, and Slurm, with config-driven pipelines so a result can be rerun exactly, not just approximately, months later. I'd rather report a model that's a bit weaker but measured honestly than one that looks better because of a split that leaked information.
Outside of modeling, I've taught Python and mathematics courses, including a workshop I designed and ran myself, and I keep most of my project code public, partly so the evaluation choices I just described are checkable rather than taken on faith. Details and code for individual projects are below, and the full publication record is on Google Scholar.
Research
What I work on
A few threads run through most of my projects. They overlap more often than they stay separate.
Self-supervised learning
Pretext tasks and contrastive objectives (SimCLR, Barlow Twins, masked autoencoding) for learning representations without relying on labeled data, applied to both images and tabular/omics data.
World models & non-contrastive SSL
Non-contrastive joint-embedding methods (Barlow Twins, VICReg, JEPA-style predictive architectures) that learn by predicting missing or future structure in the data rather than by contrasting pairs of samples.
Federated & distributed learning
Extending self-supervised and representation learning to settings where data can't be centralized, with an eye on how statistical heterogeneity across clients affects what a shared model actually learns.
Computer vision & NLP
Image encoders paired with language decoders, attention mechanisms, and transformer architectures, applied to tasks that sit across both fields rather than inside just one, such as image captioning (see Vision2Words).
Bayesian uncertainty quantification
MC dropout and Bayesian deep survival models for cases where knowing how confident a model is matters as much as the prediction itself, particularly in clinical settings.
Machine learning for genomics & healthcare
Working with high-dimensional transcriptomic and histology data (METABRIC, TCGA, spatial transcriptomics), where the main risk is evaluation that looks strong but doesn't hold up out of sample.
Medical imaging & neuroimaging
Label-efficient segmentation of brain tumours on 3D MRI, and classification from resting-state fMRI connectomes, where scans are expensive to annotate and each subject's measurement is noisy (see brainssl).
Mathematical foundations of ML & DL
A background in algebra and logical-algebraic structures that I'm interested in carrying into model design itself, things like symmetry, invariance, and structural constraints in neural network architectures, not just using it after the fact to analyze what a model learned.
Projects
Open-source work
All code is public on GitHub. A few include a live, interactive demo you can run in the browser.
brainssl: brain MRI and fMRI
Label-efficient learning on brain imaging. A 3D U-Net pretrained without labels by reconstructing hidden tissue from its mirror image, for tumour segmentation on MRI, and a connectome classifier trained on each scan's own noise for autism versus control on resting-state fMRI (ABIDE I). Includes a Nextflow pipeline and a Rust inference binary.
Family homelessness early warning
Forecasts which English local authorities will see a sharp rise in family homelessness a year ahead, using only public Open Government Licence statistics. Reports two tasks separately and is explicit about where the model beats a naive baseline and where it doesn't.
Parsimony
A reinforcement learning agent (Rainbow DQN and PPO) that decides which gene expression test to order next for a patient, trading diagnostic accuracy against measurement cost, trained on TCGA pan-cancer data.
Histology–omics fusion
Multimodal fusion of spatial transcriptomics and histology images for predicting cortical layers, using self-supervised pretraining before the fusion step.
TCGA pan-cancer classifier
A methods study on TCGA pan-cancer RNA-seq across 32 cancer types: a permutation-equivariant Set Transformer encoder, VICReg self-supervised pretraining, and a Bayesian output layer, benchmarked against logistic regression, a random forest, and a plain MLP.
Bayesian survival analysis — METABRIC
Bayesian deep survival models with MC dropout on the METABRIC breast cancer cohort, with a focus on evaluating the resulting uncertainty estimates and selective prediction rather than just point accuracy.
AFA-SSL
Label-efficient active feature acquisition: a self-supervised pretrained predictor paired with a Gaussian feature model, applied to cancer gene expression data.
Vision2Words
Image captioning on Flickr8k with an EfficientNet-B0 encoder and LSTM or Transformer decoders. Includes a C++ inference binary on ONNX Runtime matching the Python output, a Nextflow pipeline end to end, and a Gradio demo comparing both decoders.
Barlow Twins on CIFAR-10
A from-scratch implementation of Barlow Twins for self-supervised representation learning on CIFAR-10.
Self-Supervised SimCLR
A SimCLR implementation for contrastive self-supervised representation learning.
Publications
Papers
Full record, including citation counts, on Google Scholar.
Machine learning & computer vision
Algebra & logical-algebraic structures
Education
Degrees
Ph.D., Mathematics — Algebra
Ranked first in the program.
M.Sc., Soft Computing — Logical Algebraic Structures
Ranked first among eight students.
B.Sc., Mathematics and Applications
Ranked first among sixteen students.
Teaching
Teaching experience
I like connecting abstract material to something a student can actually run or compute. That's as true for a proof in algebra as it is for a line of PyTorch code.
Instructor — Zand Institute of Higher Education
Teaching Fuzzy Systems to Master's students, and Programming and Advanced Programming to Bachelor's students.
Instructor — Python Programming Workshop, Shahid Beheshti University
Designed and delivered a hands-on workshop covering core programming concepts, data structures, and scientific computing applications.
Teaching Assistant — mathematics & computer science courses
Ran weekly problem-solving sessions, graded assignments and exams, and supported students during office hours.
Courses taught
- Fuzzy Systems (Master's) — Zand Institute, 2025–present
- Programming (Bachelor's) — Zand Institute, 2025–present
- Advanced Programming (Bachelor's) — Zand Institute, 2025–present
- Python Programming Workshop (Instructor) — Shahid Beheshti University, Aug 2023
- Introduction to Computers & Programming
- Algebra — Jan–May 2019
- Calculus I & II, Numerical Analysis — 2015–2017
- Differential Equations — Feb–May 2015
- Calculus I — Sep 2014–Jan 2015
Honors & Awards
Recognition
National merit scholarship
Full, merit-based scholarship covering undergraduate through PhD study, awarded for academic performance and renewed each year.
Khwarizmi Youth Award
National award for research and invention.
Best Thesis Award
Awarded for the Master's thesis, for its contribution to computational science.
Quera Data Analysis Competition — finalist
Reached the finals of a national data science competition.
Certifications
Supervised Machine Learning: Regression and Classification
Data Science Math Skills
Claude 101
Claude Code 101
Contact
Get in touch
Happy to hear from fellow researchers, potential collaborators, or anyone with questions about any of the projects above.