In this part of the repo, we discuss the human activity recognition problem using deep learning algorithms and compare the results with standard machine learning algorithms that use engineered features.
The data can be downloaded from the UCI repository.
Also see G.Chevalier's repo and A. Saeed's blog where I have got lots of inspiration.
The utils
folder contains the code for reading and processing the data into a tensor form. The generated tensors
have the dimensions
(batch, seq_len, n_channels)
where batch
is the number of training examples in each batch, seq_len
is the number of steps in the time series (128) and
n_channels
is the number of channels where observations are made (9).
The aim is to clasify the activities correctly, which are
1 WALKING
2 WALKING_UPSTAIRS
3 WALKING_DOWNSTAIRS
4 SITTING
5 STANDING
6 LAYING
Below are the architectures used for training
Notebook | Description |
---|---|
explore_data | Data exploration |
HAR-LSTM | LSTM network |
HAR-CNN | Convolutional neural network(CNN) |
HAR-CNN-LSTM | CNN + LSTM hybrid |
HAR-CNN-Inception | CNN with inception module |
Method | Test accuracy |
---|---|
CNN | 93% |
LSTM | 88% |
CNN+LSTM | 88% |
CNN+Inception | 89% |
Xgboost | 96% |