原文:https://arxiv.org/pdf/2107.03312.pdf
音频编解码器
音频编解码器可分为两大类:波形编解码器和参数编解码器。
波形编码器是主要是通过一些可逆的变换,编码时对音频进行量化,解码时希望能尽可能地重构波形。它不做太多的先验假设,在中高比特率时效果很好,但是低比特率容易出现一些瑕疵。
而参数编码器通常会有比较强的先验假设,通过估计参数,来重构听感上相似的音频。
这些传统的方法通常需要依赖一些心理声学和语音合成领域的知识来精心设计一个方案。
nn可以通过音频超分辨率,即扩展频率带宽,通过音频降噪,即去除有损编码伪影,或通过数据包丢失隐藏,来将它们用作后处理步骤以提高现有编解码器的质量。还有一些nn的vocoder,比如wavenet,lpcnet,wavernn已经应用在了语音合成领域。
参考:
LPCNet: Realtime Neural Vocoder - 知乎
【论文翻译】SoundStream: An End-to-End Neural Audio Codec - 知乎
下图表明了soundstream相比其他的编解码方式,达到了sota的效果,在中低比特率下,也能重建出高音质的音频。
模型结构
理解Residual Vector Quantizer
Vector Quantization:
利亚德空间计算(Lloyd's algorithm),是一种常用的空间数据聚类算法,被广泛应用于数据挖掘、图像处理等领域。也是我们通常所用说的K-means算法最常见的实现方式。可以通过广义Lloyd算法 (GLA) 扩展到高维空间。参考:K-Means 聚类算法_慕课手记
vector quantization做的是将高维空间的一个点,映射为一组离散的编码。
在传统编码方式中,向量量化已经得到了广泛应用。比如说CELP。全称为Code Excited Linear Prediction,即码激励线性预测编码。
参考: