你听到的是一种声音,但电脑听到的是另一种声音。 这是怎么回事?
加州大学伯克利分校的两名研究人员利用计算机解码人类语音的技术,将信息隐藏在音频片段中。当通过诸如 Mozilla 的 DeepSpeech 之类的语音识别程序进行翻译时,计算机最终会转录隐藏的信息,而不是我们听到的声音。
你听到了我听到的声音吗?
该方法基本上涉及将您实际想要转录的音频的安静样本隐藏在音频的不同部分中。“秘密信息”对人类来说仅仅是背景噪音,但由于计算机处理音频的方式,它们可以清晰地拾取隐藏的音频。在发表在预印本服务器 arXiv 上的论文中,研究人员描述了他们如何能够操纵 DeepSpeech,每次他们将消息隐藏在音频样本中。
这与机器学习算法如何识别语音有关。考虑到每个音频样本可能包含的全部字母组合的可能性非常困难,因此算法会计算出一个有根据的猜测。一种算法会将它采样的每个音频位映射到可能的字母和字符的概率分布,并选择最可能的。在许多不同的音频样本上训练该算法可以使其擅长猜测正确的样本。
电脑 vs. 人类
研究人员通过创建音频来利用这种有根据的猜测系统,该音频使计算机的决策倾向于他们想要转录的单词,而不是隐藏在其中的消息。并且,在类似于算法训练方式的策略中,研究人员的程序会尝试同一音频样本的许多不同变体,以使他们的消息在声音上与我们听到的内容相匹配,即使单词完全不同。
研究人员在来自 Mozilla 的 Common Voice 数据集 的 100 个音频片段上测试了他们的工作,他们说每次都有效。他们甚至能够在没有语音的音频中隐藏文本,例如,一段古典音乐。并且由于 DeepSpeech 每秒多次采样音频,因此隐藏文本可以比实际听到的文本长得多,每秒音频最多 50 个字符。
隐藏的音频可用于将消息偷偷地传递给人类听众,或者欺骗计算机转录程序。 但是,破解语音识别程序可能并不容易。 因为他们使用了代码公开可用的 DeepSpeech,所以研究人员使用了所谓的“白盒”方法,这意味着他们了解有关该程序工作原理的所有信息。 使用具有未知机制的语音识别程序将使其更难破解。 此外,这些示例专门针对 DeepSpeech,因此不同的语音识别程序不会拾取隐藏的音频。














