Inspiration

Cardiovascular diseases (CVDs) are the leading cause of death not only in the US but also globally. In the US alone, CVDs kill about 659,000 people, accounting for one-fourth of all deaths. This means that 1 person dies every 36 seconds in the United States alone. Globally, CVD accounts for 17.9 million deaths in 2019, which is around 32% of all global deaths. According to the World Health Organization WHO, these deaths can be prevented by lifestyle changes such as having a good diet, being at a healthy weight, increasing physical activity, and abstention from tobacco use. The WHO says that detection of CVD is extremely important to both save lives and medical resources. Low to middle-income countries account for three-fourths of all deaths from CVDs. This is due to the inequitable distribution of resources and the lack of access to early detection.

After seeing these statistics, we were inspired to create UniHeart, a web app focused on the prevention and prediction of CVD. UniHeart aims to make early predictions more accessible, especially to underprivileged countries, and make medical resources more sustainable.

What it does

UniHacks employs a Random Forest machine learning algorithm that can use either environmental (gender, height, weight) or laboratory (resting ECG, fasting blood sugar, cholesterol) variables to calculate the risk of heart disease. We also provide resources that provide users with knowledge about high-risk activities and also prevention methods that can reduce the risk of heart disease.

How we built it

We started by going over a number of datasets relating to heart disease and deciding which one would yield the best results for our use case. Then we developed a custom random forest (and underlying decision tree) machine-learning algorithm to accurately predict whether certain people are at risk for heart disease depending on a number of attributes. Then, we developed the web app and gathered content to educate users on how to prevent heart disease. Lastly, we incorporated the Machine Learning model and the educational content into the web app.

Challenges we ran into

We coded the Random Forest machine learning algorithm from scratch instead of using a premade algorithm from a library, and it was a challenge to implement an accurate and performant Random Forest (and the underlying decision tree) algorithm.

Accomplishments that we're proud of

Coding a machine-learning algorithm from scratch is a major accomplishment for us and something that we are extremely proud of. We are also proud of completing such a big project in such a short period of time.

What we learned

More than half of our team members have never participated in a hackathon before, and Unihacks was the first time they experienced it. They learned a lot about the operations, logistics, and structure of a hackathon, and also a lot about developing relatively complex code under strict time constraints. Furthermore, the team as a whole learned a lot about CVD, and factors that correlate with a risk of CVD such as resting blood pressure, ECG, angina, oldpeak ST, and ST slope.

What's next for UniHeart

UniHeart wants to expand by continuing to gather better data and iteratively improve the ML algorithm. We would also like to further expand our resources section to include more tools and information to prevent heart disease. Lastly, we also want to develop a mobile app to improve the experience for mobile users.

Built With

Share this project:

Updates