Scalable Neural Vocoder from Range-Null Space Decomposition
Organizations: the Key Laboratory of Noise and Vibration Research, Institute of Acoustics, Chinese Academy of Sciences, Beijing, 100190, China, and also with University of Chinese Academy of Sciences, Beijing, 100049, China. · Tencent AI Lab. · School of Communications and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065, China.
Abstract
Although deep neural networks have facilitated significant progress of neural vocoders in recent years, they usually suffer from intrinsic challenges like opaque modeling, inflexible retraining under different input configurations, and parameter-performance trade-off. These inherent hurdles can heavily impede the development of this field. To resolve these problems, in this paper, we propose a novel neural vocoder in the time-frequency (T-F) domain. Specifically, we bridge the connection between the classical range-null decomposition (RND) theory and the vocoder task, where the reconstruction of the target spectrogram is formulated into the superimposition between range-space and null-space. The former aims to project the representation in the original mel-domain into the target linear-scale domain, and the latter can be instantiated via neural networks to further infill the spectral details. To fully leverage the spectrum prior, an elaborate dual-path framework is devised, where the spectrum is hierarchically encoded and decoded, and the cross- and narrow-band modules are leveraged for effectively modeling along sub-band and time dimensions. To enable inference under various configurations, we propose a simple yet effective strategy, which transforms the multi-condition adaption in the inference stage into the data augmentation in the training stage. Comprehensive experiments are conducted on various benchmarks. Quantitative and qualitative results show that while enjoying lightweight network structure and scalable inference paradigm, the proposed framework achieves state-ofthe-art performance among existing advanced methods. Code is available at https://github.com/Andong-Li-speech/RNDVoC.
Figures & tables
| Category | Signal-Level | Spectral-Level (Vocoder) |
| Compression Matrix | Mel-Filter | |
| Observation | Input Mel-Spectrogram , Eq. | |
| Target Signal | Linear-Scale Spectrum | |
| Range-Space | Range-Space Spectrum , Eq. | |
| Null-Space | Null-Space Spectrum , Eq. | |
| Estimation | Superimposed Spectrum , Eq. |
| Methods | Type | Publish | Domain | Code Link |
| HiFiGAN-V1 [ 33 ] | GAN | NeurIPS 2020 | T | https://github.com/jik876/hifi-gan |
| iSTFTNet-V1 [ 34 ] | GAN | ICASSP 2022 | Hybrid | https://github.com/deepvk/istftnet |
| PriorGrad [ 30 ] | DDPM | ICLR 2022 | T | https://github.com/microsoft/NeuralSpeech/tree/master/PriorGrad-vocoder |
| Avocodo [ 74 ] | GAN | AAAI 2023 | T | https://github.com/ncsoft/avocodo |
| HiFTNet [ 75 ] | GAN | Arxiv 2023 | Hybrid | https://github.com/yl4579/HiFTNet |
| BigVGAN [ 39 ] | GAN | ICLR 2023 | T | https://github.com/NVIDIA/BigVGAN |
| Settings | P | #Param. | #MACs | Inference Speed | PESQ | MCD | Periodicity | V/UV | Pitch | ||
| (M) | (Giga/5s) | CPU | GPU | RMSE | F1 | RMSE | |||||
| (1) | Remove Narrow-Band module | - | 7.88 | 8.36 | 0.0419(23.88 ) | 0.0048(210 ) | 1.697 | 4.890 | 0.291 | 0.866 | 89.166 |
| (2) | Remove Cross-Band module | 2 | 8.98 | 19.81 | 0.0527(18.98 ) | 0.0050(199 ) | 3.157 | 3.428 | 0.130 | 0.953 | 32.555 |
| (3) | Replace the proposed module with RNN | 2 | 21.59 | 150.81 | 0.2098(4.77 ) | 0.0211(47 ) | 3.781 | 2.402 | 0.098 | 0.966 | 22.451 |
| (4) | Increase the number of ConvNext v2 blocks | 1 | 8.68 | 16.67 | 0.0581(17.22 ) | 0.0061(164 ) | 3.651 | 2.462 | 0.104 | 0.963 | 24.652 |
| (5) | 2 | 9.48 | 24.98 | 0.0770(12.98 ) | 0.0063(158 ) | 3.763 | 2.394 | 0.099 | 0.966 | 23.419 | |
| Models | #Param. | #MACs | Inference Speed | M-STFT | PESQ | MCD | Periodicity | V/UV | Pitch | UTMOS | VISQOL | |
| (M) | (Giga/5s) | CPU | GPU | RMSE | F1 | RMSE | ||||||
| HiFiGAN-V1 | 13.94 | 152.90 | 0.1669(5.99 ) | 0.0069(145 ) | 1.167 | 3.574 | 3.671 | 0.134 | 0.947 | 33.687 | 4.218 | 4.771 |
| iSTFTNet-V1 | 13.26 | 107.76 | 0.0949(10.54 ) | 0.0038(266 ) | 1.188 | 3.535 | 3.625 | 0.135 | 0.947 | 35.106 | 4.236 | 4.756 |
| Avocodo | 13.94 | 152.95 | 0.1611(6.21 ) | 0.0063(158 ) | 1.165 | 3.604 | 3.657 | 0.139 | 0.946 | 32.989 | 4.152 | 4.771 |
| HiFTNet | 22.43 | 163.05 | 0.1559(6.41 ) | 0.0085(117 ) | 0.923 | 3.992 | 2.039 | 0.092 | 0.966 | 20.780 | 4.343 | 4.849 |
| BigVGAN-base | 13.94 | 152.90 | 0.3856(2.59 ) | 0.0368(27 ) | 0.978 | 3.603 | 2.331 | 0.120 | 0.956 | 30.277 | 4.208 | 4.822 |
| Models | #Param. | #MACs | M-STFT | PESQ | MCD | Periodicity | V/UV | Pitch | UTMOS | VISQOL |
| (M) | (Giga/5s) | RMSE | F1 | RMSE | ||||||
| HiFiGAN-V1 | 14.01 | 166.41 | 1.104 | 3.056 | 4.284 | 0.167 | 0.921 | 52.529 | 3.511 | 4.721 |
| iSTFTNet-V1 | 13.33 | 117.30 | 1.157 | 2.880 | 4.480 | 0.167 | 0.918 | 53.072 | 3.464 | 4.655 |
| Avocodo | 14.01 | 166.47 | 1.113 | 3.217 | 4.314 | 0.161 | 0.913 | 51.600 | 3.358 | 4.762 |
| BigVGAN-base (1M steps) | 14.01 | 166.41 | 0.879 | 3.519 | - | 0.129 | 0.946 | - | - | - |
| BigVGAN (1M steps) | 112.39 | 454.08 | 0.800 | 4.027 | - | 0.102 | 0.960 | - | - | - |
| Models | GT | HiFiGAN-V1 | Avocodo | BigVGAN-base | BigVGAN | APNet2 | Vocos | RNDVoC-nonshared | RNDVoC-shared |
| MUSHRA | 89.45 0.45 | 69.99 1.15 | 68.16 1.26 | 74.27 1.12 | 79.33 0.92 | 54.95 1.11 | 73.18 1.15 | 78.76 0.94 | **80.74 0.99 |
| Note: , | |||||||||
| Models | EARS (English Corpus with Diverse Emotions) | VCTK (English Corpus with Unseen Speakers) | ||||||||||||
| PESQ | Periodicity | V/UV F1 | Pitch | UTMOS | VISQOL | MUSHRA | PESQ | Periodicity | V/UV F1 | Pitch | UTMOS | VISQOL | MUSHRA | |
| GT | - | - | - | - | 3.300 | - | 89.06 0.48 | - | - | - | - | 4.117 | - | 89.52 0.45 |
| HiFiGAN-V1 | 2.907 | 0.149 | 0.876 | 48.417 | 2.835 | 4.570 | 70.82 1.12 | 3.090 | 0.115 | 0.943 | 33.289 | 3.952 | 4.723 | 78.49 1.10 |
| Avocodo | 3.065 | 0.149 | 0.866 | 48.494 | 2.809 | 4.641 | 69.15 1.29 | 3.337 | 0.114 | 0.943 | 33.041 | 3.905 | 4.758 | 73.14 1.13 |
| BigVGAN-base | 3.797 | 0.087 | 0.946 | 26.050 | 3.040 | 4.871 | 78.19 0.95 | 3.859 | 0.079 | 0.965 | 28.847 | 3.970 | 4.893 | 79.73 0.86 |
| BigVGAN | 4.236 | 0.064 | 0.963 | 17.655 | 3.190 | 4.946 | 80.80 0.84 | 4.282 | 0.062 | 0.972 | 20.316 | 4.034 | 4.959 | 80.59 0.84 |
| Models | Bass | Drums | Mixture | Other | Vocals | Mean |
| HiFiGAN-V1 | 4.068 | 4.452 | 4.349 | 4.346 | 4.631 | 4.3691 |
| Avocodo | 4.491 | 4.568 | 4.479 | 4.480 | 4.685 | 4.5406 |
| BigVGAN-base | 4.674 | 4.792 | 4.742 | 4.727 | 4.851 | 4.757 |
| BigVGAN | 4.825 | 4.885 | 4.874 | 4.853 | 4.924 | 4.872 |
| APNet2 | 4.274 | 4.230 | 4.122 | 4.246 | 4.539 | 4.282 |
| Vocos | 4.7035 | 4.785 | 4.684 | 4.677 | 4.835 | 4.737 |
| Models | NFE | #Param. | #MACs | LJSpeech | LibriTTS | EARS | VCTK | ||||||||
| (M) | (Giga/5s) | PESQ | UTMOS | VISQOL | PESQ | UTMOS | VISQOL | PESQ | UTMOS | VISQOL | PESQ | UTMOS | VISQOL | ||
| FreGrad | 50 | 1.82 | 1589 | 3.775 | 3.934 | 4.574 | 3.793 | 3.217 | 4.699 | 3.495 | 2.753 | 4.526 | 3.803 | 3.670 | 4.579 |
| PriorGrad | 50 | 2.70 | 8364 | 3.955 | 4.006 | 4.659 | 4.017 | 3.329 | 4.737 | 3.847 | 2.863 | 4.636 | 4.030 | 3.740 | 4.685 |
| WaveFM | 6 | 19.50 | 1188 | - | - | - | 3.954 | 3.191 | 4.943 | 3.856 | 2.709 | 4.926 | 3.960 | 3.631 | 4.928 |
| PeriodWave | 16 | 29.81 | 4986.56 | 4.235 | 4.374 | 4.722 | 4.240 | 3.652 | 4.749 | 4.238 | 3.218 | 4.686 | 4.248 | 4.082 | 4.671 |
| RNDVoC-nonshared | 1 | 9.48 | 28.29 | 3.892 | 4.138 | 4.812 | 4.085 | 3.607 | 4.873 | 3.856 | 3.078 | 4.821 | 4.022 | 3.937 | 4.863 |
| Subband | w/i Even | #Pram. | #MACs (Giga/5s) | M-STFT | PESQ | MCD | V/UV | Periodicity | UTMOS | VISQOL | ||
| Number | (M) | BAEM | LKCAM | BAMM+BAPM | F1 | RMSE | ||||||
| 1 | - | 200.89 | 4.30 | 73.74 | 15.97 | 0.912 | 3.490 | 3.220 | 0.947 | 0.117 | 3.423 | 4.810 |
| 6 | 3.88 | 0.37 | 5.91 | 41.23 | 0.891 | 3.680 | 3.025 | 0.949 | 0.116 | 3.398 | 4.860 | |
| 12 | 3.38 | 0.37 | 11.82 | 21.73 | 0.836 | 3.939 | 2.500 | 0.958 | 0.097 | 3.552 | 4.904 | |
| 24 | 3.14 | 0.37 | 23.61 | 13.09 | 0.746 | 4.226 | 1.913 | 0.970 | 0.074 | 3.657 | 4.915 | |
| 24 | ✓ | 3.09 | 0.37 | 23.64 | 10.58 | 0.830 | 4.018 | 2.319 | 0.959 | 0.090 | 3.623 | 4.904 |
| Sets | range | range (Hz) | (Hz) | |
| MCDA-1 | - | 100 | ||
| MCDA-2 | 16 | 100 | ||
| MCDA-3 | 1 | 50 |
| Models | #Parm. | Sets | Inference Speed | PESQ | VISQOL | |
| (M) | CPU | GPU | ||||
| HiFiGAN-V2 | 0.92 | LJSpeech | 0.0257(38.71 ) | 0.0014(725 ) | 2.848 | 4.542 |
| LibriTTS | 0.0288(34.72 ) | 0.0014(704 ) | 2.195 | 4.370 | ||
| RNDVoC-Lite | 0.71 | LJSpeech | 0.0267(37.43 ) | 0.0019(531 ) | 3.769 | 4.782 |
| LibriTTS | 0.0261(38.33 ) | 0.0020(502 ) | 3.834 | 4.874 | ||
| RNDVoC-UltraLite | 0.08 | LJSpeech | 0.0251(39.04 ) | 0.0018(557 ) | 3.264 | 4.701 |
Appendix figures & tables23 assets
Supplementary material from the paper’s appendix.
Appendix
| Scheme | Non-shared Scheme | Shared Scheme | ||||
| Channels | #Param.(M) | #MACs(G) | Time(s) | #Param.(M) | #MACs(G) | Time(s) |
| 64 | 0.67 | 0.06 | 24.61 | 0.11 | 0.52 | 12.23 |
| 128 | 2.12 | 0.19 | 39.30 | 0.32 | 1.11 | 13.30 |
| 256 | 7.38 | 0.64 | 59.06 | 0.93 | 2.50 | 18.04 |
| 384 | 15.79 | 1.38 | 62.53 | 2.15 | 4.16 | 21.53 |
| Model Type | M-STFT | PESQ | MCD | UTMOS |
| RNDVoC-Cascaded | 0.827 | 3.949 | 2.623 | 3.437 |
| Ref. (Main Text) | 0.746 | 4.226 | 1.913 | 3.657 |
| Setting | P | #Param. | #MACs | Inference Speed | PESQ | MCD | Periodicity | V/UV | Pitch | ||
| (M) | (Giga/5s) | CPU | GPU | RMSE | F1 | RMSE | |||||
| (1) | RNDVoC-Mag | 2 | 9.48 | 24.98 | 0.0770(12.98 ) | 0.0063(158 ) | 3.763 | 2.394 | 0.099 | 0.966 | 23.419 |
| (2) | RNDVoC-Com | 2 | 11.07 | 26.39 | 0.0988(10.12 ) | 0.0076(131 ) | 3.335 | 2.814 | 0.120 | 0.958 | 27.867 |
| Type | (Hz) | (kHz) | M-STFT | PESQ | MCD | UTMOS | |
| w/o MCDA | 72 | 0 | 12 | 1.505 | 2.393 | 4.118 | 2.477 |
| 80 | 0 | 12 | 1.315 | 2.951 | 3.420 | 3.109 | |
| 88 | 0 | 12 | 1.226 | 3.266 | 3.062 | 3.204 | |
| 96 | 0 | 12 | 1.087 | 3.350 | 3.093 | 3.246 | |
| 100 | 0 | 12 | 0.780 | 4.085 | 2.082 | 3.552 | |
| 104 | 0 | 12 | 1.023 | 3.570 | 2.430 | 3.434 |
| Type | (Hz) | (kHz) | M-STFT | PESQ | MCD | UTMOS | |
| w/o MCDA | 100 | 0 | 8 | 2.549 | 3.557 | 4.676 | 3.403 |
| 100 | 0 | 9 | 2.220 | 3.613 | 3.687 | 3.433 | |
| 100 | 0 | 10 | 1.897 | 3.654 | 2.631 | 3.440 | |
| 100 | 0 | 11 | 1.502 | 3.523 | 2.464 | 3.422 | |
| 100 | 0 | 11.5 | 1.343 | 3.479 | 2.496 | 3.424 | |
| 100 | 0 | 12 | 0.798 | 4.085 | 2.250 | 3.552 |
| layer name | input size | hyper-parameters | output size | |
| RSM | - | |||
| BAEM | ||||
| Cross | reshape_1 | - | ||
| gconv1d_1 | ||||
| pconv1d_1 | ||||
| band_mixer |
| Test sets | Sound Effect from [ 101 ] | AISHELL3 (Mandarin) | ||||||||
| Models | M-STFT | MCD | VISQOL | M-STFT | PESQ | MCD | V/UV | Period. | UTMOS | VISQOL |
| F1 | RMSE | |||||||||
| GT | - | - | - | - | - | - | - | - | 2.700 | - |
| HiFiGAN-V1 | 1.462 | 6.971 | 4.291 | 1.059 | 2.823 | 2.827 | 0.934 | 0.163 | 2.432 | 4.651 |
| iSTFTNet-V1 | 1.540 | 7.352 | 4.150 | 1.132 | 2.595 | 3.061 | 0.932 | 0.164 | 2.351 | 4.486 |
| Avocodo | 1.488 | 6.795 | 4.426 | 1.040 | 3.003 | 2.864 | 0.937 | 0.154 | 2.126 | 4.731 |
| Split-Type | Total Subbands | Range (Hz) | Width (Hz) | Sub-band number | Kernel Size | Stride Size |
| Uneven | 6 | 0-3375 | 1125 | 3 | (48, 3) | (48, 1) |
| 3375-7875 | 2250 | 2 | (96, 3) | (96, 1) | ||
| 7875-12000 | 4125 | 1 | (176, 3) | (176, 1) | ||
| 12 | 0-3375 | 562.5 | 6 | (24, 3) | (24, 3) | |
| 3375-7825 | 1125 | 4 | (48, 3) | (48, 1) | ||
| 7825-12000 | 2062.5 | 2 | (88, 3) | (88, 1) |
| SE Models | Discriminative | Generative | ||||||
| Vocoders | PESQ ( ) | eSTOI (in %) | P808-DNSMOS | VISQOL | PESQ | eSTOI (in %) | P808-DNSMOS | VISQOL |
| Mixture | 1.163 | 57.48 | 2.580 | 2.512 | 1.163 | 27.48 | 2.580 | 2.512 |
| HiFiGAN-V1 | 1.903 | 75.89 | 3.268 | 3.601 | 1.739 | 71.78 | 3.440 | 3.318 |
| iSTFTNet-V1 | 1.818 | 74.76 | 3.275 | 3.551 | 1.677 | 70.87 | 3.416 | 3.268 |
| Avocodo | 1.892 | 75.47 | 3.212 | 3.613 | 1.720 | 71.48 | 3.389 | 3.311 |
| BigVGAN-base | 2.051 | 76.62 | 3.252 | 3.698 | 1.839 | 72.77 | 3.422 | 3.375 |