快好知 kuaihz

如何让机器像人一样听声音?

通过对人体系统进行建模,人工智能技术已经取得了重大突破。尽管人工神经网络是数学模型,仅能粗糙地模拟人类神经元的实际运作方式,但它们在解决复杂而模糊的现实问题中的应用却是深远的。此外,在神经网络中模拟建模人脑的结构深度,为学习到数据背后更有意义的内涵开辟了广泛的可能性。

在图片识别和处理中,来自视觉系统卷积神经网络(CNNs)中的复杂且空间不变的神经元的灵感,也对我们的技术产生了很大的改进。如果您对将图片识别技术应用于音频频谱图感兴趣,请查看我的文章“用于音频处理的卷积神经网络(CNNs)和频谱图有什么问题?”

只要人类的感知能力超过机器,我们就可以通过理解人类系统的原理来学习获益。在感知任务方面,人类非常熟练,且在机器听觉领域,人类的理解能力和当前的AI技术之间的对比尤为明显。考虑到在视觉处理领域中受到人类系统启发所带来的好处,我建议我们可以通过神经网络应用于视觉领域相似的过程,运用在机器听觉领域一定会获益。

本文的流程框架

在本系列文章中,我将详细介绍使用AI进行实时音频信号处理的一个框架,该框架是Aarhus大学和智能扬声器制造商Dynaudio A/S合作开发的。它的灵感主要来自于认知科学, 认知科学试图将生物学、神经科学、心理学和哲学的观点结合起来,以更好地理解我们的认知能力。

认知声音属性

也许关于声音最抽象方式,在于我们作为人类如何理解它。虽然信号处理问题的解决方案必须在强度、频谱和时间这些低级别属性参数的范围内进行处理,但最终目标通常是可认知的:以我们对声音包含的意义认知方式转换信号。

例如,如果希望以编程方式改变一段语音说话者的性别,则必须在定义其较低级别特征之前,以更有意义的术语来描述该问题。说话者的性别可以被认为是由多种因素构成的认知属性:语音的音高和音色、发音的差异、单词和语言选择的差异,以及对这些属性如何与性别联系起来的理解。

这些参数可以用较低级别的特征来描述,例如强度、频谱和时间这些属性,但只有在更复杂的组合中,它们才能形成高级别的意义表示。这形成了音频特征的层次结构,从中可以推断出声音的“含义”。人类声音的认知属性可以认为由声音的强度、频谱和统计特性的时间序列的组合模式来表示。

可用于从数字音频中获得含义的功能层次。

神经网络(NNs)非常擅长提取抽象的数据表示,因此非常适合检测声音中的认知属性。为了构建一个基于此目的的系统,让我们先来研究声音在人类听觉器官中的表现方式,我们可以用它来激发通过神经网络来处理声音意义的表示。

耳蜗表示

人类听觉始于外耳,外耳首先由耳郭组成。耳郭充当声音频谱预处理的一种形式,其中输入声音根据其相对于收听者的方向而被修改。然后声音通过耳郭中的开口进入耳道,随后通过共振这种放大频率(范围为~1-6kHz)的方式,来改变输入声音的频谱特性[1]。

 人类听觉系统的图解

当声波到达耳道末端时,它们会激发耳膜,耳膜上附着了听小骨(人体中的最小骨头)。这些骨头将压力从耳道传递到内耳充满液体的耳蜗内[1]。耳蜗对为神经网络(NNs)引导声音的意义表示起很大作用,因为这是负责将声振动转换成人类神经活动的器官。

它是一个盘管,沿其长度上被两个薄膜分开,即赖斯纳氏膜和基底膜。沿着耳蜗的长度上, 有一排约3500个内毛细胞[1]。当压力进入耳蜗时,它的两个膜被压下。基底膜的底部较窄且较硬,但在其顶点处较宽且松散,这使得沿其长度的每个位置在特定频率下的相应更强烈。

简单来说,基底膜可以被认为是一组连续的、和薄膜一样长度的带通滤波器,作用是把声音分离到他们的谱分量。

人类耳蜗的图解

这是人类将声压转变为神经活动的最基本的机制。因此,我们有理由假设,在用人工智能建立声音感知模型的时候,声音的谱表示比较有利。因为基底膜上的频率反应是以指数形式变化的,对数化的频率表示可能是最有效的。一个这样的频率表示可以用gammatone滤波器组产生。这些滤波器被普遍应用于听觉系统的谱滤波建模中,因为他们能够估计产生自听觉神经纤维的人类听觉滤波器的脉冲响应,这是对一种叫做“revcor”函数的白噪声的回应。

简化的人类谱转导和数字化谱转导的对比

耳蜗有大约3500个内毛细胞,且人类能够检测到长度在2-5ms的声音中的空隙,因此使用3500个分为2ms的窗口的gammatone滤波器进行谱分解看起来是用机器实现类人谱表示的最好的参数。然而,在实际场景中,我认为更少的谱分解也能在大多数分析和处理任务中达到理想的效果,同时在计算角度更为可行。

一些听觉分析的软件库在线可用。一个重要的例子就是Gammatone Filterbank Toolkit by Jason Heeris.它不仅提供了可调节的滤波器,也提供了用gammatone滤波器进行声音信号类谱分析的工具。

神经编码

在神经活动从耳蜗移动到听觉神经和上升听觉通路的同时,一些工序在它到达听觉皮层之前在脑干核执行。

这些工序建立了一个表示刺激和感知之间相互作用的神经编码。更多的关于这些细胞核内具体的工作的知识仍然是基于猜测或未知的,所以我将在他们如何发挥作用的高层次来介绍。

图:简化的上升听觉通路(一只耳朵)和设想功能的图解

人类内在连接着的每只耳朵都有一套这样的核,但是简单起见,我只阐述一只耳朵中的流程。耳蜗核是为从听觉神经到来的神经信号编码的第一步。它包含许多有着不同特性,能够完成声音特征的初处理的神经元。这些神经元中,一部分指向和声源定位相关的上橄榄体,另一部分指向外侧丘系核和下丘,通常与更高级的特征相关。

J.J.Eggermont 在“Between sound and perception: reviewing the search for a neural code” 中如下详细地阐述了从耳蜗核开始的信息流动过程:“腹侧耳蜗核(VCN)提取并增强了在听觉神经纤维的放电模式中多路复用的频率和时间信息,并且通过两种主要的通路来发送结果:声源定位路径和声纹鉴别路径。VCN的前部(AVCN)主要在声源定位方面发挥作用,而且它的两种bushy 细胞为上橄榄核(SOC)提供了输入。在上橄榄核中耳间时间差(ITDs)和耳间水平差(ILDs)对于每种频率分别映射。

声纹鉴别路径携带的信息是像元音一样的复谱的一种表示。这种表示主要在腹侧耳蜗核中由特殊种类的单元创造,这些单元也被叫做”chopper”神经元。听觉编码的细节很难被详细说明,但是他们告诉我们,到来的频谱的“编码”形式可以提高对低层次声音特性的理解,同时使在神经网络中处理声音的代价更小。

声音嵌入

我们可以应用非监督自动编码器神经网络结构作为学习和复杂谱相关的普遍特性的一种尝试。像词嵌入一样,在表示选中特征(或一种更严格浓缩的含义)频谱中发现共性是可能的。

一个自动编码器经训练能够将输入编码为一种压缩的表示法,这种表示法能重建回和输入有高相似度的形式。这意味着一个自动编码器的目标输出就是输入本身。如果一个输入能够在被重建的同时没有很大的损失,神经网络就会学习在这种包含足够多有意义的信息的压缩内在表示法下编码它。这种内在表示法也就是我们所说的嵌入。自动编码器的编码部分可以从解码器解耦,来为其他应用生成嵌入。

声音嵌入的自动编码器结构图解

嵌入还有一个优点,就是他们通常比原始数据有着更低的维度。举个例子,一个自动编码器可以把有着3500个值的频谱压缩为一个长度为500的向量。简单地说,这样的向量的每一个值都可以描述像元音、声震粗糙度或调和性的高层次的谱特征——它们仅仅是例子,事实上一个自动编码器生成的统计上的共同特征的含义通常很难在原始语言中标记。

在下一个文章中,我们会拓展这个想法,采用新增内存来为声音频谱的时间产物生成嵌入。

这是我“用人工智能进行声音处理”的系列文章的第一部分。接下来,我们会讨论声音中的感觉记忆和时序依赖的核心概念。

参考文献:

[1] C. J. Plack, The Sense of Hearing, 2nd ed. Psychology Press, 2014.

[2] S. J. Elliott and C. A. Shera, “The cochlea as a smart structure,” Smart Mater. Struct., vol. 21, no. 6, p. 64001, Jun. 2012.

[3] A.M. Darling, “Properties and implementation of the gammatone filter: A tutorial”, Speech hearing and language, University College London, 1991.

[4] J. J. Eggermont, “Between sound and perception: reviewing the search for a neural code.,” Hear. Res., vol. 157, no. 1–2, pp. 1–42, Jul. 2001.

[5] T. P. Lillicrap et al., Learning Deep Architectures for AI, vol. 2, no. 1. 2015.

 

本文为 AI 研习社编译的技术博客,原标题 :Human-Like Machine Hearing With AI (1/3)

作者:Daniel Rothmann

翻译:悟空空、Glimmer

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:如何让机器像人一样听声音?  声音  声音词条  机器  机器词条  一样  一样词条  如何  如何词条