chester-w-xie / DPL_FCAC

This repository provide official implementation of the DPL method.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Official PyTorch implementation of DPL, from the following paper:

Few-shot class-incremental audio classification via discriminative prototype learning. Expert Systems with Applications 2023.
Wei Xie, Yanxiong Li, Qianhua He and Wenchang Cao
School of Electronic & Information Engineering, South China University of Technology


The problem of Few-shot class-incremental audio classification

The method of discriminative prototype learning

0. Requirements

Conda should be installed on the system.

  • Install Anaconda.

  • Run the install dependencies script:

conda env create -f environment.yml

This creates conda environment FCAC with all the dependencies.

1. Datasets

Please follow the instructions here to prepare the NSynth-100 and FSC-89 datasets.

Please execute the following commands in your server terminal to perform dataset loading verification. This process will automatically extract the normalization statistics for each dataset. Ensure that the paths to the datasets are correctly configured:

python DatasetsManager_Nsynth100.py --metapath /SATA01/datasets/The_NSynth_Dataset \
--audiopath path to the The_NSynth_Dataset folder --num_class 100 --base_class 55

python DatasetsManager_FSC89.py --metapath /SATA01/datasets/FSD-MIX-CLIPS-for_FSCIL/FSD_MIX_CLIPS.annotations_revised/FSC-89-meta \
--datapath path to the FSD-MIX-CLIPS_data folder --data_type audio --setup mini

2. Usage

For the experiments involving the DPL method on the Nsynth-100 dataset, please update the dataset path in the 'exp_Nsynth.sh' file before executing it:

sh exp_Nsynth.sh

For the experiments involving the DPL method on the FSC-89 dataset, please update the dataset path in the 'exp_FSC89.sh' file before executing it:

sh exp_FSC89.sh

3. Main results

The scripts is configured to conduct 100 trials by default, with the final results being aggregated for statistical analysis.

You should obtain results similar to the following, which may vary based on your software and hardware configuration.

4. Acknowledgement

Our project references the codes in the following repos.

License

This project is released under the MIT license. Please see the LICENSE file for more information.

Citation

If you find this repository helpful, please consider citing:

@article{XIE2023120044,
title = {Few-shot class-incremental audio classification via discriminative prototype learning},
journal = {Expert Systems with Applications},
pages = {120044},
year = {2023},
issn = {0957-4174},
doi = {https://doi.org/10.1016/j.eswa.2023.120044},
url = {https://www.sciencedirect.com/science/article/pii/S0957417423005468},
author = {Wei Xie and Yanxiong Li and Qianhua He and Wenchang Cao},
}

About

This repository provide official implementation of the DPL method.

License:MIT License


Languages

Language:Python 100.0%