引言:本文简述了语音识别的发展史,并对其进行了展望。
关键词:语音识别;自然语言;语境
你的智能手机正在学习更好地理解你的语音指令。图片来源Flickr/Kārlis Dambrāns, CC
在苹果近期举行的全球开发者大会上,其中一个“帐篷杆”支柱项目是在最新升级的移动操作系统iOS 9上纳入带有特定智能语音识别功能的个人助理应用Siri。
现在,不需要对Siri说“提醒我明天是凯文的生日”,你只需在浏览Facebook生日事件时告诉Siri“提醒我这件事”。它就能根据语境明白你意思。
同样的技术已经存在于谷歌设备中——感谢OK谷歌(在智能锁定设置中,用户可以说“OK Google”来快速解锁访问设备。)——让我们更加接近能进行语境感知的语音识别系统。
但它是如何运作的?为什么语境如此重要?它与语音识别又存在怎样的关系呢?
要回答这个问题,我们应该回头看看语音识别是怎样工作的,以及它与另一个重要的领域——自然语言的处理,又有何种联系。
语音识别简史
人们早已听说过语音识别,不用敲击键盘,只需要对电脑说出自然语言,它便能明白你说的一切,这岂不是很好?
自从20世纪60年代在老版本的星际迷航系列电影中Kirk船长与美国企业号航空母舰所载电脑对话(同时,在其之后的一部老版本系列电影中Scotty与20世纪的电脑对话尝试失败)之后,我们一直梦想着可以实现这个功能。
甚至在更近期的电影中也展现了人们希望拥有更好的语音识别功能的愿望。在1992年的一部对于高科技进行了大量描述的电影《通天神偷》(Sneakers)里,罗伯特·雷德福煞费苦心地去收集一位行政官员的声音片段,并在计算机中播放他们带回来的这些录音以获得进入系统的语音许可。
但简单的科幻描写掩盖了语音识别技术过程的复杂。在一台电脑可以明白你的意思之前,它必须了解你到底说了什么。
这涉及到一个复杂的过程,包括音频采样,特征提取,然后还涉及到实际的语音识别以辨别个人的声音,并将其转换为文本。
研究人员已经研究这种技术多年。他们已经开发出能如人类耳朵般提取声音特征的技术,这样的技术能将它们识别为人类语言的一部分——音素和声音。这包括对人工神经网络,隐马尔可夫模型和其他方法的运用,它们都是广泛的人工智能领域的一部分。
通过这些模型,语音识别率已经有所提高。谷歌报道的数据表明该技术今年出现的错误率小于8%。
但即使有了这些进步,听觉识别还只成功了一半。计算机执行完此过程时,它只能复制你所说文本。但你所要表达的意思可能包含任何内容。
下一步就是自然语言的处理。
你是否抓住了主旨?
一旦机器将你所说的转换成文本,接着它就需要明白你实际上说了什么。这个过程即被称为“自然语言的处理”。这无疑比语音识别过程更加困难,因为人类语言中充满了上下语境和语义,这就造就了自然语言识别的困难。
任何曾使用早期语音识别系统的人都可以证明,这一过程到底有多困难。早期的系统拥有非常有限的词汇量,并且你必须用正确的命令方式以确保电脑能听懂它们。
而不仅声音识别系统是如此,文本输入系统也一样,文字的顺序和某些其它词汇的使用会造成系统对该命令的处理产生极大的不同。这是由于早期的语言处理系统使用一些固定的规则和决策树来解析命令,所以这些命令的任何偏差都会引起问题。
然而,较新的系统使用类似在语音识别中用于构建一个词汇的隐马尔可夫模型的机器学习算法。这样的系统依然需要进一步编程,但它们可以基于对话语中个别词汇的权重做出更为灵活的决策。这就允许更加灵活的提问,话语当中可以变换所使用的文字,但问题的内容是保持不变的。
这就是为什么可以对Siri说:“将上午9点去取我的干洗衣物安排进日程”,或说:“把我要去取干洗衣物放入我上午9点的日程”,它都能识别出相同的意思。
但你如何处理不同的声音?
尽管已经取得这些进步,但这一领域依旧存在挑战。在语音识别领域,口音和发音依旧有可能造成问题。
由于系统的工作方式,音素的不同的发音可能会导致系统无法识别你在说什么。尤其是当对于外地人来说,一个词的音素与它的发音看起来无任何联系时,例如英国的城市“莱斯特”(Leicester)或“格拉斯哥”(Glasgow)。
甚至诸如“墨尔本”(Melbourne)这样的澳大利亚城市名也会难倒一些美国人。然而对澳大利亚人来说,墨尔本的正确发音却十分简单,美国人对音素的不同发音方式意味着他们经常发音错误(在当地人看来)。
如果你曾听见GPS系统错读Ipswich为“eyp-swich”,就会知道这个问题是双向的。解决这个问题的唯一办法就是训练系统在不同情况下单词的发音。但鉴于口音的复杂多变(以及相同口音中的不同发音),这将是一个相当庞大而复杂的过程。
在语言处理方面,语境是其主要问题之一。开头给出的例子提供了利用现有技术联系上下语境进行语言处理的例子。而你需要做的就是,花上几分钟中去了解为了能为机器提供更多语境,我们需要对自己的说话方式进行怎样的调整。
例如,你是否经常这样问别人:
你是否收到了我的邮件?
但实际上你的意思是:
你是否收到了我的邮件?如果你收到了,并且已经阅读了,可否请你在这个问题上给予我回复?
当你想与一个机器对话时事情会更加复杂,你需要在最初提出的问题后附上后续的问题,诸如“马丁的号码是多少?”接着是“打电话给他”或者是“发短信给他”。
当机器懂得语境的时候它们就会有所改进,但它们依旧还有很长的路要走!
自动翻译
所以,为了实现这一点我们已经在许多不同的领域取得了很大进步。但在语音识别领域仍然面临许多挑战,语言的引申义,谈话的语境。这意味着我们要拥有像星际迷航中一样能了解我们所说的一切的电脑仍需时日。
但请放心。微软的自动翻译最新取得的进步表明,我们正逐步向它靠近,如果我们成功,其结果将会非常令人欣喜。
谷歌近期公布了一项技术,它能利用图像与声音识别,自然语言处理和你智能手机上的摄像头去自动翻译标志及短的对话,将一种语言转换成另一种语言。它甚至会尝试匹配的字体,使其跟原标志看起来一样,但仅限于译为英语!
所以你不再需要对着意大利语的菜单发愁,或去纠结应该怎么对不懂英语的服务员点餐,谷歌可以帮你搞定一切。虽然这与美国企业号航空母舰并非完全一样,但绝对很接近了!
作者简介:Michael Cowling,中央昆士兰大学(Central Queensland University)移动计算和移动应用专业的高级讲师及学科负责人。
(翻译:曾梓浩 审校:海带丝)
原文链接:
https://theconversation.com/listen-to-me-machines-learn-to-understand-how-we-speak-42812
留言