Skip to content

GitZH-Chen/LieBN

Repository files navigation

A Lie Group Approach to Riemannian Batch Normalization

This is the official code for our ICLR 2024 publication: A Lie Group Approach to Riemannian Batch Normalization. [OpenReview].

If you find this project helpful, please consider citing us as follows:

@inproceedings{chen2024liebn,
title={A Lie Group Approach to Riemannian Batch Normalization},
author={Ziheng Chen and Yue Song and Yunmei Liu and Nicu Sebe},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=okYdj8Ysru}
}

In case you have any problem, do not hesitate to contact me ziheng_ch@163.com.

Requirements

Install necessary dependencies by conda:

conda env create --file environment.yaml

Note that the hydra package is used to manage configuration files.

Experiments on the SPDNet

The code of experiments on SPDNet, SPDNetBN, and SPDNetLieBN is enclosed in the folder ./LieBN_SPDNet

The implementation is based on the official code of Riemannian batch normalization for SPD neural networks [Neurips 2019] [code].

Dataset

The synthetic Radar dataset is released by SPDNetBN. We further release our preprocessed HDM05 dataset.

Please download the datasets and put them in your personal folder and change the path accordingly in ./LieBN_SPDNet/conf/dataset/RADAR.yaml and ./LieBN_SPDNet/conf/dataset/HDM05.yaml

Running experiments

To run all the experiments on the Radar and HDM05 datasets, go to the folder LieBN_SPDNet and run this command:

bash run_experiments.sh

This script contains the experiments on the Radar and HDM05 datasets shown in Tab. 4

Experiments on the TSMNet

The code of experiments on TSMNet, TSMNet + SPDDSMBN, and TSMNet + DSMLieBN is enclosed in the folder ./LieBN_TSMNet

The implementation is based on the official code of SPD domain-specific batch normalization to crack interpretable unsupervised domain adaptation in EEG [Neurips 2022] [code].

Dataset

The Hinss2021 dataset is publicly available. The moabb and mne packages are used to download and preprocess these datasets. There is no need to manually download and preprocess the datasets. This is done automatically. If necessary, change the data_dir in ./LieBN_TSMNet/conf/LieBN.yaml to your personal folder.

Running experiments

To run all the experiments on the Radar and HDM05 datasets, go to the folder LieBN_TSMNet and run this command:

bash run_experiments.sh

This script contains the experiments on the Hinss2021 datasets shown in Tab. 5

Note: You also can change the data_dir in run_experiments.sh, which will override the hydra config.

About

This is the official code for our ICLR 2024 publication: A Lie Group Approach to Riemannian Batch Normalization.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published