Skip to content

philipph77/TS-MoCo

Repository files navigation

TS-MoCo: Time-Series Momentum Contrast for Self-Supervised Physiological Representation Learning

Philipp Hallgarten $^{1,2}$, David Bethge $^{3}$, Ozan Özdenizci $^{4,5}$, Tobias Grosse-Puppendahl $^{1}$, Enkelejda Kasneci $^{2}$

$^{1}$ Dr. Ing. h.c. F. Porsche AG, Germany
$^{2}$ TU Munich, Germany
$^{3}$ LMU Munich, Germany
$^{4}$ Institute of Theoretical Computer Science, TU Graz, Austria
$^{5}$ TU Graz-SAL DES Lab, Silicon Austria Labs, Graz, Austria

This is the accompanying repository for the paper TS-MoCo: Time-Series Momentum Contrast for Self-Supervised Physiological Representation Learning, published in Proceedings of the 31st European Signal Processing Conference (EUSIPCO)



Implementation based on :

Abstract

Limited availability of labeled physiological data often prohibits the use of large and powerful supervised deep learning models in the biomedical machine intelligence domain. In this work we approach this problem and propose a novel encoding framework that relies on a self-supervised learning pipeline with momentum contrast, to learn representations from multivariate time-series of various physiological domains without the need for labels. Our model is based on a transformer architecture that can be adapted to classification problems by adding and training a single dense layer for the outputs. We experimentally evaluate our framework using two publicly available physiological datasets from different domains, i.e., human activity recognition from embedded inertial sensory, and emotion recognition from electroencephalography (EEG). We show that our self-supervised learning approach can indeed learn discriminative features which can be transferred to downstream classification tasks. Our work enables development of domain-agnostic intelligent systems that can effectively analyze multivariate time-series data from physiological domains.

Setup

We recommend to create a new environment if working with this repository. You can do so through
conda env create -n ENVNAME --file env.yml

This will also install all necessary dependencies.

Usage

To train TS-MoCo on a custom dataset, you will have to take the follwoing steps:
  1. Add a datamodule for your dataset in the datasets folder (see: lightning datamodule)
  2. Add the datamodule with the necessary information in the main.py file after line 91 e.g.,
        elif args.dataset=="DatasetName":
            run_name = "task_name"
            datamodule = DataModuleName(
                args,
                batch_size,
                num_workers
        )
    
  3. Add a call of main.py to run.sh with all the necessary hyperparameters
  4. Start the training by running run.sh

Citation

If you found this work useful, please cite:
@inproceedings{hallgarten2023tsmoco,
  title     = {TS-MoCo: Time-Series Momentum Contrast for Self-Supervised Physiological Representation Learning},
  author    = {Hallgarten, Philipp and Bethge, David and Özdenizci, Ozan and Grosse-Puppendahl, Tobias and Kasneci, Enkelejda},
  booktitle = {31st European Signal Processing Conference (EUSIPCO)},
  pages     = {tbd},
  year      = {2023},
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published