SPMamba: State-space model is all you need in speech separation

Kai Li, Guo Chen, Runxuan Yang, Xiaolin Hu
4/2/2024
cs.SDcs.AIeess.AS

No official code found. Best implementation: JusperLee/SPMamba (227 stars, Apache-2.0, last commit 2024-12-05).

Abstract

Existing CNN-based speech separation models face local receptive field limitations and cannot effectively capture long time dependencies. Although LSTM and Transformer-based speech separation models can avoid this problem, their high complexity makes them face the challenge of computational resources and inference efficiency when dealing with long audio. To address this challenge, we introduce an innovative speech separation method called SPMamba. This model builds upon the robust TF-GridNet architecture, replacing its traditional BLSTM modules with bidirectional Mamba modules. These modules effectively model the spatiotemporal relationships between the time and frequency dimensions, allowing SPMamba to capture long-range dependencies with linear computational complexity. Specifically, the bidirectional processing within the Mamba modules enables the model to utilize both past and future contextual information, thereby enhancing separation performance. Extensive experiments conducted on public datasets, including WSJ0-2Mix, WHAM!, and Libri2Mix, as well as the newly constructed Echo2Mix dataset, demonstrated that SPMamba significantly outperformed existing state-of-the-art models, achieving superior results while also reducing computational complexity. These findings highlighted the effectiveness of SPMamba in tackling the intricate challenges of speech separation in complex environments.

View on arXivView PDF

Code Implementations(1)

JusperLee/SPMambaCommunity100%
Apache-2.0
22725HTML, PythonMar 18, 20241 years agoApache-2.0

Similar Papers

Cite this paper

@article{li2024spmamba,
  title  = {SPMamba: State-space model is all you need in speech separation},
  author = {Kai Li and Guo Chen and Runxuan Yang and Xiaolin Hu},
  year   = {2024},
  eprint = {2404.02063},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2404.02063v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2404.02063.svg)](https://codeofpaper.com/paper/2404.02063)

Discussion