Skills
- Programming languages: Python, SQL, JavaScript, C++, C
- MLOps/DevOps: Docker, Kubernetes, Helm, MLflow, ClearML, Git, DvC, Airflow, Prefect, GitHub Actions, Gitlab CI, FastAPI, Flask, Gunicorn, Nginx, Grafana, Prometheus, Evidently, GCP, AWS
- Machine Learning: TensorFlow, Keras, PyTorch, Scikit-learn, Prophet, spaCy
- Other: NLP, LangChain, Kafka, Ray, Spark, Streamlit, OpenCV, Postgres, pytest, HTML, CSS, React
- Expertise: Computer Vision, Medical Imaging, ML System Design, ML Solution Architecture
Work Experience
Machine Learning Engineer at Perceptra
Feb 2022 - Jul 2024 (2 years and 6 months)
Deployed machine learning models to 100+ hospitals nationwide, accelerating cancer detection, to save lives.
Accomplishments
- Enhanced existing model serving, achieving 3-4x faster inference time by resolving bottlenecks.
- Designed model serving architectures for 14+ disease prediction services (averaging 85%+ AUC), covering a wide range of model types.
- Revised Docker-based ML platform and infrastructure for 35% smaller image size and 3x faster builds.
- Streamlined ML workflow under strict data privacy restrictions, boosting team efficiency and system reliability.
- Optimized CICD pipelines with Gitlab CI, automating testing, builds, and deployment resulting in faster deployment times and eliminating manual work.
- Developed a YOLOv7 model to identify artifacts in mammogram images, achieving 83% mAP@0.5. This enabled dataset cleansing for improved downstream model performance.
- Developed outlier detection models and pipelines, purging 1% of low-quality data; boosted AUC by 1.7%, sensitivity by 1.6%, and specificity by 2.5% across diseases.
- Introduced MLOps best practices, including data versioning (DvC) and drift detection (Evidently, alibi), and translated leading-edge academic research into production-ready solutions.
AI Engineer Intern at Obodroid
Jun 2021 - Jul 2021 (2 months)
Enabled surveillance robots to recognize where they are.
Accomplishments
- Involved in the “Place Recognition” part of the Robot Navigation project.
- Collected data from the real working environment.
- Adapted SuperGlue model to do Visual Place Recognition task.
- Implemented a lot of utility files for image/video processing and running inference.
- Built a complete pipeline from raw data input to place recognition results.
- Built an end-to-end API to do Visual Place Recognition with SuperGlue and SuperPoints model using FastAPI. (GitHub)
Projects
Sales Forecast MLOps at Scale

"Sales Forecast MLOps at Scale" delivers a full-stack, production-ready solution designed to streamline the entire sales forecasting system – from development and deployment to continuous improvement. It offers flexible deployment options, supporting both on-premises environments (Docker Compose, Kubernetes) and cloud-based setups (Kubernetes, Helm), ensuring adaptability to your infrastructure.
Key Features
- Dual-Mode Inference: Supports both batch and online inference modes, providing adaptability to various use cases and real-time prediction needs.
- Automated Forecast Generation: Airflow DAGs orchestrate weekly model training and batch predictions, with the ability for on-demand retraining based on the latest data.
- Data-Driven Adaptability: Kafka handles real-time data streaming, enabling the system to incorporate the latest sales information into predictions. Models are retrained on demand to maintain accuracy.
- Scalable Pipeline and Training: Leverages Spark and Ray for efficient data processing and distributed model training, ensuring the system can handle large-scale datasets and training.
- Transparent Monitoring: Ray and Grafana provide visibility into training performance, while Prometheus enables system-wide monitoring.
- User-Friendly Interface: Streamlit offers a clear view of predictions. MLflow tracks experiments and model versions, ensuring reproducibility and streamlined updates.
- Best-Practices Serving: Robust serving stack with Nginx, Gunicorn, and FastAPI for reliable and performant model deployment.
- CI/CD Automation: GitHub Actions streamline the build and deployment process, automatically pushing images to Docker Hub and GCP.
- Cloud-native, Scalability and Flexibility: Kubernetes and Google Cloud Platform ensure adaptability to growing data and workloads. The open-source foundation (Docker, Ray, FastAPI, etc.) offers customization and extensibility.
Tools / Technologies
Full-stack On-Premises MLOps system for Computer Vision

Fully operating on-premises MLOps system tailored for Computer Vision tasks from Data versioning to Model monitoring and drift detection with the concept: 1 config, 1 command from Jupyter Notebook to serve Millions of users". This system equips you with everything you need, from a development workspace in Jupyter Lab/Notebook to production-level services and it only takes "1 config and 1 command" to run the whole system from building the model to deployment! I've integrated numerous best practices to ensure scalability and reliability while maintaining flexibility. While my primary use case revolves around image classification, this project structure can easily adapt to a wide range of ML/DL developments, even transitioning from on-premises to cloud!
Tools / Technologies
Real-time Webcam Background Replacement Web Application

A web application with the Zoom-like feature: Real-time webcam background replacement with a Web UI + Cartoonification + Image filters built with FastAPI using WebSocket (Also, utilizes JavaScript for frontend functionalities).
Key Features
- Dymanic background: Replace the webcam background with a selected prepopulated image or one uploaded by the user.
- Background model options: Two available models for background segmentation: Mediapipe (default) and ‘apple/deeplabv3-mobilevit-xx-small’ from Hugging Face.
- Cartoonification: Cartoonify webcam stream with two options: OpenCV (Sequence of image processings) and CartoonGAN (Deep learning model).
- Image filters: Apply filters to the webcam stream. Available filters include Grayscale, Saturation, Brightness, and Contrast.
- Reliability: Supports concurrent connections.
- Docker-based: The entire app is dockerized.
Face Recognition with Liveness Detection Login on Flask Web application

A web application login page including face verification (1-to-1 to verify whether the person who is logging in is really that person), for security purposes, with liveness detection mechanism (to check whether the person detected on the camera is a REAL person or FAKE (eg. image, video, etc. of that person)) for Anti-Spoofting (Others pretending to be the person). After the login page, a webpage placeholder is also provided for future use.
Contributions
- Implemented the face liveness detection method proposed in a research paper (link).
- Collected data for real and fake images for binary classification.
- Built and trained the CNN-based liveness model from scratch with TensorFlow.
- Implemented the web application with Flask framework.
- Used dlib for face recognition.
EzFit: Startup MVP
Pain point: People are bored of exercise and lack motivation.
Solution: Gamification and Multi-user Empowered by AI.
Accomplishments in Business Aspect:
- Led and envisioned a team of 5 people from different backgrounds.
- Built a full startup plan from scratch, a financial model, and a marketing plan.
- Built a pitch deck and pitched to many entrepreneurs and investors.
- Did market validation to validate the feasibility of the solution and understand customer behavior.
Accomplishments in AI / App Development Aspect:
- Analyzed and drew insights with data analytics from a market validation survey.
- Collected and preprocessed data for exercise repetition counting.
- Adapted pre-trained Pose Estimation model and trained Exercise Classification models for classifying and counting the repetition of 7 exercises.
- Achieved high accuracy across all exercises: 99% for push-up, 96% for jumping-jack, 92% for squat, 91% for leg-raise, 84% for lunge, 84% bicycle-crunch, 72% for mountain-climber.
- Optimized and deployed real-time ML models on the mobile device using TensorFlow ecosystems.
- Built a cross-platform mobile application using React Native.
- Implemented and took care of everything in the main gameplay part.
Awards:
- Received a grant and advanced to demo day at Startup Thailand League 2021, one of the largest startup competitions in Thailand.
- Finalist at INNO for Change 2021, a competition organized by one of the top-tier business universities in Thailand.
Main tools: React Native, Expo, Firebase, TensorFlow, TensorFlow Lite, TensorFlowJS, Mediapipe
Competitions
There are a lot of competitions I have attended, but here are the ones I’ve learned the most from and I’m allowed to open-source the work.
Thailand Machine Learning for Chemistry Competition (TMLCC)

TMLCC is a new type of Data Science competition in which competitors need to use Machine Learning techniques in order to build and develop mathematic models with the ability to learn and understand the relationship between structural properties of Metal-Organic frameworks (MOFs) and their Working Capacity. The developed models need to be able to predict this property of other MOFs accurately and precisely.
Briefly given a number of features of chemistry properties and molecule files, the goal is to predict the CO2 Working Capacity (how much the MOFs can absorb CO2) in mL/g. Hence this is the regression task.
We placed in 6th place from over 200+ teams nationwide. Here are the main techniques we applied that made us stand out:
- Create many new features from feature engineering with domain expertise in Chemistry subject.
- Fill missing values in some features with Multivariate Imputation by Chained Equation (MICE) technique and Chemistry formula.
- Select features using backward elimination along with SHAP values.
- Do hyperparameters tuning with Optuna.
- Use DeepInsight to transform tabular data into images and train a downstream CNN model.
- Use the trained CNN as a feature extractor to extract more features and append them to train along with other original features with LightGBM. This gave us the best standalone model!
- Ensemble models with a weighted average strategy by giving higher weight to the results from more accurate models.
© 2024 Ariya Sontrapornpol. Powered by Jekyll and the Minimal Theme.