Heart Rate Variability (HRV) is a way to measure the variation in time between each heartbeat. This variation is a measure of how the heart reacts to physical exercise, mental stress, and heart diseases, directly linked to an increased risk of mortality.

It has its origin in neurons from the parasympathetic, sympathetic nervous system, and vagus nerve. Evidence suggests that HRV is impacted by stress, specifically due to higher levels of stress resulting in a lower HRV.

While stress (and its causes and effects) is a known research topic, it’s also more accessible due to the widespread usage of wearables that allow the collection of HRV data. The combination of the possibility of stress analysis from HRV and easy access to data makes this the main focus of the present report, determining whether machine learning techniques can help minimalizing generalization errors.

This report is structured into three main parts: data analysis, supervised, and unsupervised learning. All three parts revolve around predicting and/or clustering HRV values.


Download full report (41 pages)


  1. Data Preparation + Principal Component Analysis
  2. Supervised learning - classification (baseline, logistic regression, neural network)
  3. Supervised learning - regression (linear regression, neural network)
  4. Unsupervised learning - Agglomerated Hierarquical Clustering, Gaussian Mixture Model, Anomaly Detection, Aprior Association