GithubHelp home page GithubHelp logo

nesl / robust-deep-learning-pipeline Goto Github PK

View Code? Open in Web Editor NEW
22.0 8.0 3.0 897.53 MB

Deep Convolutional Bidirectional LSTM for Complex Activity Recognition with Missing Data. Human Activity Recognition Challenge. Springer SIST (2020)

License: BSD 3-Clause "New" or "Revised" License

Jupyter Notebook 100.00%
complex-activity-recognition misaligned-data missing-data deep-learning machine-learning conv-lstm cnn lstm deep-neural-networks time-series

robust-deep-learning-pipeline's Introduction

Deep Convolutional Bidirectional LSTM for Complex Activity Recognition with Missing Data

This repo contains sample code for training deep learning pipelines on multimodal data containing missing and misaligned samples, noisy artifacts and data with variable sampling rates and timing errors, intended for complex event processing. We have benchmarked the pipeline on complex activity recognition using the Cooking Activity Recognition Dataset. [Paper] [Slides] [Presentation Video]

The proposed training pipeline stood 3rd in the Cooking Activity Recognition Challenge out of 78 teams and was awarded the 2020 IEEE Lance Stafford Larson Student Award by IEEE Computer Society.

Summary

Complex activity recognition using multiple on-body sensors is challenging due to missing samples, misaligned data times tamps across sensors, and variations in sampling rates. In this paper, we introduce a robust training pipeline that handles sampling rate variability, missing data, and misaligned data time stamps using intelligent data augmentation techniques. Specifically, we use controlled jitter in window length and add artificial misalignments in data timestamps between sensors, along with masking representations of missing data. We evaluate our pipeline on the Cooking Activity Dataset with Macro and Micro Activities, benchmarking the performance of deep convolutional bidirectional long short-term memory (DCBL) classifier. In our evaluations, DCBL achieves test accuracies of 88% and 72%, respectively, for macro- and micro-activity classifications, exceeding performance over state-of-the-art vanilla activity classifiers.

Device_Image

Data Details

For raw dataset usage guide for the data used for benchmarking, please visit the Cooking Activity Recognition Challenge website.

Code and Usage

  1. Requirements: The Jupyter notebooks used to train the models require Keras with Tensorflow backend and Scikit-learn. The notebook with training process are provided.
  2. Macro Classifier: The notebooks training macro classifiers are Macro_Activity_Masking_Classifier.ipynb and Macro_Activity_Without_Masking_Classifier.ipynb.
  3. Micro Classifier: The notebooks training micro classifiers are Micro_Activity_Masking_Classifier.ipynb and Micro_Activity_Without_Masking_Classifier.ipynb.
  4. Overall Pipelines: The overall pipeline fusing macro and micro classifiers using weighted decision fusion is available with the name Final_Pipeline.ipynb.
  5. Data and pre-trained checkpoints: The data and pre-trained checkpoints of classifiers are available in the repo. The path used in Final_Pipeline.ipynb for the classifier is directed to the trained checkpoints.

Citation

Please cite this as:

Saha S.S., Sandha S.S., Srivastava M. (2021) Deep Convolutional Bidirectional LSTM for Complex Activity Recognition with Missing Data. In: Ahad M.A.R., Lago P., Inoue S. (eds) Human Activity Recognition Challenge. Smart Innovation, Systems and Technologies, vol 199. Springer, Singapore. https://doi.org/10.1007/978-981-15-8269-1_4

@Inbook{Saha2021,
author="Saha, Swapnil Sayan
and Sandha, Sandeep Singh
and Srivastava, Mani",
editor="Ahad, Md Atiqur Rahman
and Lago, Paula
and Inoue, Sozo",
title="Deep Convolutional Bidirectional LSTM for Complex Activity Recognition with Missing Data",
bookTitle="Human Activity Recognition Challenge",
year="2021",
publisher="Springer Singapore",
address="Singapore",
pages="39--53",
isbn="978-981-15-8269-1",
doi="10.1007/978-981-15-8269-1_4",
url="https://doi.org/10.1007/978-981-15-8269-1_4"
}

robust-deep-learning-pipeline's People

Contributors

sandeep-iitr avatar swapnilsayansaha avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.