Human Activity Recognition (HAR) has become a key research topic in monitored and assisted living either for medical or tracking reasons.
First attempts provided manual feature crafting, followed by analysis done either with deep neural networks or other approaches like Hidden Markov models. More recently instead, direct analysis on raw signals has been attempted. Here we continue this trend by exploring some possible approaches with convolutional and recurrent neural networks and look over automatic feature extraction techniques, such as autoencoders. Most of the datasets in this field are highly imbalanced and some classes lack of enough data. To face this, we propose two augmentation techniques for rebalancing. Finally, we introduce new ways and metrics to select the best learning epoch to address overfitting and get the best learning results overall.
Our tests confirm that augmenting the initial dataset is worth the effort, and we achieve performance that surpass what is declared for it. Moreover, we discovered that working with raw signals in the sensor reference frame is better than working with their transformation to the body frame. As for encoded data by means of autoencoders, we could not find any performance improvement: in some cases, worse results are obtained.
This is the final project for the course of Human Data Analytics, Spring 2019, Master's degree in ICT for Internet and multimedia, University of Padova, Italy.
Download the dataset into the dataset
directory (follow the readme).
Open the Jupyter notebooks to start the journey, from data preprocessing to the final results.
More complete information can be found in the full report.
Important: Colab notebooks opened from Github do not allow for mounting other directories, the dataset must be uploaded to Drive.
Copyright (C) 2019 Elia Bonetto and Filippo Rigotto.
Code released under GPL v3.0, report under CC BY-SA 4.0.