The project's objective is to investigate the feasibility of employing a Vector Database for health surveillance. We have conducted thorough testing across various datasets and developed a health condition monitoring system anchored by the Vector Database. Utilizing Pinecone for our database needs, we have also created a web application capable of analyzing and diagnosing ECG data derived from the Apple Watch, showcasing the potential for advanced health monitoring solutions.
- Slides: link
- Video Demo Link: Google Drive
The project contains two components, 1. ECG dataset testing and 2. Health monitoring web applications
- ECG dataset requires the following dependencies:
python
withjupyter
notebook
pip install -r requirements.txt
-
Setup api key for Pinecone by creating
datasets/pinecone.config.json
file{ "PINECONE_API_KEY": "xxxxxxxxxx", "PINECONE_ENVIRONMENT": "us-east4-gcp" }
- Health monitoring web application: also requires
nodejs
for website
(cd backend && yarn install)
(cd wearable-health-vector-app && yarn install)
-
Create
wearable-health-vector-app/.env.local
to connect frontend to the backend api### Backend location NEXT_PUBLIC_UPLOAD_URL=http://localhost:3011/upload
-
Check notebooks in datasets for detail
-
Start backend
cd backend mkdir -p uploads results nodemon app.js
-
Start frontend
cd wearable-health-vector-app npm run dev
The MIT-BIH Arrhythmia Dataset preprocessed and segmented, with each segment corresponding to a heartbeat
- Our notebook
- Data Source: Kaggle Dataset
- Classes: {"N": 0, "S": 1, "V": 2, "F": 3, "Q": 4}
The PTB Diagnostic ECG Database preprocessed and segmented, with each segment corresponding to a heartbeat
- Our notebook
- Data Source: Kaggle Dataset
- Number of Categories: 2
AF Classification from a Short Single Lead ECG Recording
- Our notebook
- Data Source: PhysioNet
- Classes: {"Normal": 0, "AF": 1, "Other rhythm": 2, "Noisy": 3}
Malinda Huang: linhui.huang@princeton.edu
Yucan Wu: yucan.wu@princeton.edu