Audio Cochleogram with Analysis and Synthesis Banks Using 1D Convolutional Networks
Elias Nemer · 2021
Time-Frequency transformation and spectral representations of audio signals are commonly used in various machine learning applications. Training a network on features such as the Mel-Spectrogram or Cochleogram has been proven more effective than training on time samples. In practical realizations, these are generated on a separate processor or pre-computed and stored on disk, requiring additional efforts and making it difficult to experiment with different variants. In this paper, we provide a PyTorch framework for generating the Cochleogram as well as the time-domain complex filter-banks for analysis and re-synthesis using the built-in trainable conv1d() layer. This allows computing this spectral feature on the fly as part of a larger network and enables experimenting with varying parameters. The analysis / synthesis banks enable building a trainable network that operates on complex subbands, where resynthesizing the time samples is desirable. The convolutional kernels may be trained from random values, or may be initialized and frozen or initialized and continuously trained with the rest of any network they are part of.