Inspiration

Parkinson’s Disease is a progressive neurological disorder that affects movement, caused by the loss of dopamine-producing neurons in the brain. It cannot be cured, but treatments can help mitigate symptoms, allowing those afflicted to live a longer, more comfortable life. Exercise, physical therapy, and speech therapy have been shown to slow the progression of the disorder. This can be overwhelming and downright exhausting for one person to manage alone. Our goal is to make it easier for individuals with Parkinson’s Disease to manage their symptoms and therapy in order to improve their quality of life.

What it does

HealinMotion reads wearable sensor data in real time, detects freezing-of-gait (FOG) severity, and recommends the right activity for that moment. Activities include rest, seated exercise, gait training, balance practice, stretching, and medication check. A chatbot then explains the recommendation in plain language and answers any follow-up questions the patient has.

How we built it

We trained a bidirectional LSTM on the Parkinson’s Freezing of Gait dataset from Kaggle. The dataset had severely underrepresented activity classes, so we generated synthetic samples using Gaussian perturbation to balance the distribution. The model runs on an AMD MI300X GPU via ROCm for real-time inference. The backend is built with FastAPI and SQLModel, and the frontend is React Native with Expo. The chatbot is using the lightweight LLM MedGemma-4b on AMD hardware.

Challenges we ran into

\begin{enumerate} \item Debugging UI \item Complex model integration \item Finding, cleaning, and integrating a suitable dataset for our predictive model \item Finding an integrating a usable, lightweight LLM for our chatbots \end{enumerate}

Accomplishments that we’re proud of

Getting a full end-to-end pipeline working in a hackathon timeframe from live wearable sensor data to a conversational LLM response. We found, cleaned, and integrated a real clinical dataset for our predictive model, successfully integrating a lightweight LLM that runs on dedicated AMD GPU hardware, and getting the UI and model working together end-to-end after a lot of debugging. All of these components working together took a lot of precision and planning.

What we learned

Finding a real suitable dataset and cleaning it took a lot of effort. Class imbalance is a problem that can destroy model performance, so we are glad we caught it early. Integrating a complex LSTM model into a live backend was harder than we expected. Deploying LLMs on AMD ROCm hardware had a different setup than we were used to, so we have learned this on the fly. We learned a lot about debugging UI issues and integrating complex models into UIs.

What’s next for AI-driven Parkinson’s helper

\begin{enumerate} \item Adding voice prompting so patients don’t have to type \item Adding richer medical data integration \item Adding doctor inputs so care teams can be part of the loop \item Swapping our lightweight LLM for a heavier-weight model to enable more extensive, medically informed conversations with patients \item Integrating sleep and diet tracking features to improve prediction outputs and symptom mitigation \end{enumerate}

Built With

Share this project:

Updates