This repository contains related code to the paper below.
To use the code, you need a Python installation together with relevant libraries (librosa, numpy, pandas, flammkuchen, scikit-learn, tensorflow).
Data preprocessing can be found in neural_networks/src/dataloader.py
. Part of it is generating Mel-spectrograms from 1-D microphone-acoustic and mechano-acoustic data.
We provide code to train several deep neural network architectures (neural_networks
), e.g., ResNet, EfficientNet or RNNs. In analysis
, you find a Jupyter notebook for evaluating the trained models.
The file neural_neworks/params.json
offers the possibility to specify various hyperparameters, especially with regard to the preprocessing of the data.
Aditionally, the repository provides code for training an autoencoder architecture (neural_networks
) for converting from microphone-acoustic to mechano-acoustic Mel-spectrograms.
We provide code to run a genetic algorithm (neural_networks/GeneticAlgorithm
) to optimize and find a low-size, accurate deep neural network architecture.
In analysis
, you find two Jupyter notebooks for evaluating the Objective 2 model, which was determined using the Genetic Algorithm.
Used datasets:
- Lei et al., 2020 -
predict-new-dataset-mcgill.ipynb
- COUGHVID crowdsourcing dataset -
predict-cough-database.ipynb
In analysis
, you find Jupyter notebooks for visualizing the class activation maps and results from occlusion experiments.
Groh et al. "Efficient and Explainable Deep Neural Networks for Airway Symptom Detection in Support of Wearable Health Technology", 2021