Building a CI/CD workflow for scalable radiology Al applications

This project discusses the implementation of a Continuous Integration/Continuous Deployment (CI/CD) workflow for radiology AI applications. The huge volumes of data and models in radiology AI can lead to a disorganised and error-prone environment. This complexity not only makes it difficult to tr...

Full description

Saved in:
Bibliographic Details
Main Author: Tan, Jared Zheng Da
Other Authors: Jagath C Rajapakse
Format: Final Year Project
Language:English
Published: Nanyang Technological University 2024
Subjects:
Online Access:https://hdl.handle.net/10356/175201
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:This project discusses the implementation of a Continuous Integration/Continuous Deployment (CI/CD) workflow for radiology AI applications. The huge volumes of data and models in radiology AI can lead to a disorganised and error-prone environment. This complexity not only makes it difficult to track data and resolve errors but also makes the maintenance of the AI pipelines complicated. The first aim is to establish an end-to-end MLOps pipeline, suitable for integration into clinical workflows. The second objective is to deploy the web application using Kubernetes on Amazon Elastic Kubernetes Service (EKS). The project works on an existing web application and machine learning (ML) model and is divided into two phases. The first phase is to set up an MLOps pipeline, incorporating GitHub Actions, Continuous Machine Learning (CML), and DVC. This involves using DVC not only for data versioning but also for creating reproducible and efficient ML pipelines. This setup ensures consistent tracking of data changes, and model versioning, and facilitates automated retraining processes. This second phase of this project is to containerize the medical image analysis application and shift the deployment of the current system on to Kubernetes hosted on Amazon Elastic Kubernetes Service (EKS). This setup ensures improved scalability, availability, simplified deployment, and maintenance.