Giter VIP home page Giter VIP logo

ebme380's Introduction

Wearable Stress Measurement System Application

Application for the wearable stress measurement system for the 2020/2021 EBME senior design project of Team 4 at Case Western Reserve University. The deep-learning model is an implementation of the deep reconstruction-classification network [1]. This model was selected because it satisfies all user needs for a wearable stress measurement system designed for the ICU.

The following README provides a high level overview of the source code organization and what tasks remain after the first iteration of design.

Organization

All source code is contained within the wsma directory.

The app package contains app.py, which is the user interface application of the system. It implements the dashboard with the dash library by Plotly. While it is mostly completed, except for a couple errors, it runs. The connect.py module containers the data access class WearableDevice, which allows data transduced and processed by the wearable device to be received by the application device.

The model package contains the drcn.py module, which includes the DRCN class, and is the model used by the wearable stress measurement system to infer patient stress. Note that the multi-task learning convolutional neural network described in [1] is not currently implemented. The DRCN class, while not formally verified with unit testing, is completed and should not require modification, beyond (perhaps) refactoring to expose several parameters of the individual networks layers. Many of the parameter values hard-coded in the constructors are specified by [1].

The preprocess.py module contains functions used for preprocessing the datasets. Note that while [1] provides several source-target comparisons in their experiments, this library assumes the use of the Distracted Driving dataset (source) and the MIT Driver Stress dataset (target) specified in the paper since it scored the highest. The preprocessing of the MIT dataset is completed, but the Distracted Driving dataset is not. The complete dataset contains many other files, which are not necessary for this model. Be aware that the full dataset is about 2 TB, but it appears that much of that is from the irrelevant video files. It is suspected that once the irrelevant data files are removed, the dataset will become significantly more manageable, and may even be small enough to keep in memory while training, like the MIT dataset.

The train.ipynb references some online tutorials to help optimize training times with Google Colab. Please refer to those tutorials. This notebook is not complete. Once the preprocessing code has been implemented, the rest of the notebook can be written, which will simply entail making calls to drcn. py , preprocess.py, and train.py. Google Colab is highly encouraged for training since it offers GPU computing for free and is fairly simple learn.

Remaining Tasks

In summary, the following are what remain to be done:

  • Implement preprocessing for the Distracted Driving dataset
  • Finish implementing the train.py functions
  • Complete the Google Colab notebook
  • Train the model
  • Clean up and fix bugs with app.py (this runs, however)
  • Implement callbacks from the model in app.py
  • Implement real-time updating of the dashboard

References

[1] A. Saeed, T. Ozcelebi, J. Lukkien, J. B. F. van Erp and S. Trajanovski, "Model Adaptation and Personalization for Physiological Stress Detection," 2018 IEEE 5th International Conference on Data Science and Advanced Analytics (DSAA), 2018, pp. 209-216, doi: 10.1109/DSAA.2018.00031.

ebme380's People

Contributors

rtatton avatar

Watchers

 avatar

Forkers

simrit1

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.