Skip to content
View mithinsagar's full-sized avatar
  • Chennai

Block or report mithinsagar

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
mithinsagar/README.md

Mithin Sagar — AI & Machine Learning · Software Engineering · Interface Design

LinkedIn Hugging Face Email Chennai, India


I build machine learning systems that can explain themselves — and the interfaces that make those explanations useful to someone who isn't an ML engineer.

I'm a Computer Science undergrad at VIT Chennai (AI & ML specialisation, class of 2027). I spent a summer at the Indira Gandhi Centre for Atomic Research replacing a manual industrial weld-inspection workflow with an end-to-end YOLOv8 pipeline, and I've presented a paper on automated AWS cost and security cleanup at ICANDIT 2026.

The through-line across everything below is the same, whether it's a research notebook or a game engine: a system nobody can inspect is a system nobody should trust. So my projects ship with the model and the dashboard, the metric and the interface, the paper and the CI pipeline.


Selected work

EXAI-ResumeIntel  ·  Explainable resume-to-role matching

Most ATS tools hand you a score. This one hands you the reasoning — Shapley values, LIME, counterfactuals and attention heatmaps that name the exact skills that earned the score, and price out what adding the missing ones would be worth. Built on a 22-skill / 346-alias ontology and SBERT embeddings over 1M+ job postings and 2,484 real resumes, with the Shapley and LIME implementations written from first principles rather than imported. The 6 GB of model artifacts stream from memory-mapped arrays, which is what makes it deployable at all.

Deployed live and usable in a browser.

FastAPI Streamlit sentence-transformers scikit-learn Plotly Docker Kubernetes Nginx

Live demo  ·  Datasets  ·  Models

xai-attack-defense-framework  ·  Can you make an explanation lie?

An adversarial robustness study of post-hoc explainability: can an attacker leave a security model's prediction untouched while corrupting the explanation the analyst reads? Across 235,795 phishing URLs, an intrusion-detection set and a fraud corpus, four attacks against SHAP, LIME and Integrated Gradients say yes. Four defenses follow — the hybrid one cuts mean explanation drift by 91.1% while holding classification performance. A few-shot analysis shows the problem gets 40–100% worse in the low-data regime, which is exactly where security teams operate.

PyTorch SHAP LIME Captum XGBoost scikit-learn pytest

mediXplain-disease-prediction  ·  Diagnosis you can audit

Symptom-to-diagnosis prediction across 41 conditions and 133 symptoms, wrapped in explainability at every layer: calibrated confidence, a ranked differential, a FAISS-retrieved evidence paragraph, and an optional LLM explanation in plain English. Seven classifiers benchmarked under 5-fold CV. If FAISS or a GPU isn't available it degrades gracefully to TF-IDF retrieval, so it runs on any laptop — and the LLM layer is optional by design, never load-bearing.

The front end is a dark-themed responsive Flask UI with live symptom search, chip selection and an animated confidence bar. No build step, no bundler.

Flask scikit-learn FAISS sentence-transformers Jinja2 Vanilla JS pytest GitHub Actions

aws-ai-resource-cleanup  ·  Cloud hygiene, automated

Cloud accounts accumulate ghosts: forgotten EC2 instances, orphaned EBS snapshots, stale IAM users, security groups nobody remembers opening. This scans seven AWS resource domains, pulls real CloudWatch utilisation, and runs a Random Forest over engineered idle-signal features to recommend keep / review / delete with a confidence score — falling back to a rule engine when no model is present.

Deletion is treated as the dangerous operation it is: dry-run by default, protected tags honoured, hardcoded exclusions, pre-deletion verification and a timestamped audit log. Ships with a Flask dashboard, PDF and CSV audit reports, and Lambda + EventBridge scheduling. The research behind it was presented at ICANDIT 2026.

Boto3 scikit-learn Flask ReportLab AWS Lambda EventBridge SNS unittest.mock

StriderRunner-UnityGame  ·  A finished game, written like a library

Seven hand-built levels, nine movement abilities, fourteen trap behaviours, two enemy types — deliberately written as a clean reference codebase rather than a jam prototype. 47 C# files across a four-layer architecture (input, simulation, presentation, persistence), where every playable character is a ScriptableObject, so adding one touches zero lines of code.

Nine UI screens with real confirmation flows, a pooled audio system that never instantiates an AudioSource at runtime, and a Unity CI pipeline that runs edit-mode and play-mode tests and produces Windows and WebGL artifacts on every push. Validated across six build targets.

Unity 2022 LTS C# Cinemachine Unity Input System TextMesh Pro GitHub Actions Git LFS


Tech Arsenal

Languages

Python C++ C Java C# JavaScript SQL

ML & Deep Learning

PyTorch TensorFlow Keras scikit-learn XGBoost YOLOv8 OpenCV

NLP & GenAI

Hugging Face BERT FAISS RAG LLM

Explainability

SHAP LIME Captum Integrated Gradients

Backend & APIs

FastAPI Flask Streamlit Pydantic REST

Frontend & Design

HTML5 CSS3 Plotly Figma

Cloud & DevOps

AWS Docker Kubernetes GitHub Actions Nginx Boto3

Data

pandas NumPy MongoDB

Game Development

Unity C# Cinemachine


How I build

Every repository above follows the same discipline, and I think it's the more interesting half of the work. Packages, not scripts — modules with clear boundaries you can swap or test in isolation. Configuration in YAML with typed dataclasses, not constants buried three files deep. Test suites that run without cloud credentials, a GPU, or a 6 GB download, because a test nobody can run is documentation at best. GitHub Actions on every push. Architecture docs written for someone who isn't me.

And sensible failure modes throughout: the RAG layer falls back to TF-IDF, the recommender falls back to rules, the explanation layer falls back to a template — and the tool that deletes cloud infrastructure won't do it unless you ask twice.


Recognition

  • Winner — Hack The Gap, VIT Chennai (2025). Full-stack platform connecting underserved students to mentors and learning resources; recognised for solution design and practical impact.
  • First Runner-Up — Figma × Apple Vision Pro Design Challenge, GDSC VIT Chennai (2023). Spatial-computing UI prototype.
  • Paper presented — ICANDIT 2026, INTI International University, Malaysia. Automated AWS Resource Cleanup for Optimization of Cost and Security.
  • Outreach Head — TechnoVIT & Vibrance (2024–25). Led a 25-member team across two flagship university festivals.
  • Certifications — Google UX Design Professional Certificate · Introduction to Generative AI, Google Cloud (100%) · Python Data Structures, University of Michigan (97.6%)

Top languages

Elsewhere

Away from the keyboard I shoot photography and play badminton. The photography is where most of my design instinct comes from — framing, hierarchy, and knowing what to leave out of the frame turn out to be the same problem as designing an interface.

Open to SDE and AI/ML roles. The fastest way to reach me is email or LinkedIn.



Contribution Snake


3D Contribution Graph

Popular repositories Loading

  1. xai-attack-defense-framework xai-attack-defense-framework Public

    Robustness analysis of post-hoc XAI explanations under adversarial perturbations — covering SHAP, LIME, and Integrated Gradients across phishing, intrusion detection, and fraud datasets, with four …

    Jupyter Notebook 7

  2. StriderRunner-UnityGame StriderRunner-UnityGame Public

    A Unity 2D game built around tight controls and faster reflexes. Dash, wall jump and outrun every trap across seven punishing levels.

    C# 7

  3. EXAI-ResumeIntel EXAI-ResumeIntel Public

    Explainable AI resume analyzer that scores candidate-role fit using skill ontology, semantic embeddings, and Shapley/LIME-based interpretability.

    Jupyter Notebook 7

  4. mediXplain-disease-prediction mediXplain-disease-prediction Public

    Explainable disease prediction using multi-model scikit-learn, FAISS RAG, and a modern Flask UI.

    Python 7

  5. aws-ai-resource-cleanup aws-ai-resource-cleanup Public

    Smart cloud hygiene tool that scans your AWS account for dead resources and cleans them up automatically. Powered by Boto3, scikit-learn and a Flask dashboard. Research backed, production ready.

    Python 6

  6. mithinsagar mithinsagar Public

    Umm about me!

    6