语音交互是什么?
语音交互是指人类通过自然语言与计算机发生交互的过程;纵观人类与机器的交互历史:
人——>机器指令——>机器
人——>计算机高级语言——>机器
人——>GUI——>机器
人——>CUI——>机器
随着技术进步,人类通过越来越抽象的技术黑箱实现技术的普及应用,在这个过程中,人需要的学习成本越来越少,每一次进步都会解放人的生产效率;这样来看语音必然会是下个交互时代的主流。
语音交互过程
语音识别(ASR):将语音转化为语言文本的过程
技术实现
1、输入:输入需要识别的语音
2、编码:将语音提取为特征向量
3、解码:将特征向量通过声学模型转化为无逻辑的字母/汉字,再将其通过语言模型转化为正确的文本
4、输出:将文本结果输出
商业应用
语音激活
语音识别不可能时时刻刻在听着周围的声音,判断哪些声音要去识别;通常有两种场景 1、近场:通过点击按钮开始说话,松开按钮结束;这种情况下按钮就起到了激活作用 2、远场:有一定距离,不会通过手动来进行输入;由于环境影响,我们需要语音激活系统识别出有效语音,屏蔽无效语音;
远场识别
唤醒词:远场环境中,由于环境中本身就存在人与人的对话,所以我们需要一个识别词来让机器参与对话,不然突然出现的机器声会显得很智障。比如:嘿,siri;一个好的唤醒词有助于机器识别的准确性;
打断:总会有用户要结束对话的场景;机器不停的说着你不想要的东西还是很尴尬的
嘈杂环境的识别:环境噪音对语音识别的限制很大,在信噪比比较低的环境,让机器正常识别是一个重要的指标;通常采用麦克风阵列结合算法将语音提炼出来;
语音纠错
有时识别出的语音难免会有错误,谐音字、语义模糊等;都要通过场景和用户数据进行纠错
自然语言处理(NLP)
是人工智能和语言学领域的分支学科;目的是为了让计算机理解并且生成人类的语言;(有点复杂,以后学习)
语音合成(TTS):将文本用人声说出来出来
过程
文本处理:文本转化成音素序列,并标出每个音素的起止时间、频率变化等信息;比如拼写相同但读音不同的词的区分、缩写的处理、停顿位置的确定,等等
语音合成:以语音库为基础,根据音素序列(以及标注好的起止时间、频率变化等信息)生成语音;大致分为参数法、拼接法、声道模拟法
商业应用
从应用上来讲属于惊喜类需求;市场上大多数助手类语音都是冷冰冰的机器声;听着很怪;其实,为什么我们不愿意在公共场合用语音有一部分原因就是你听到的声音很怪(另外就是机器理解效率了),心里会觉着不是和人在说话;人就会感到尴尬,而相应的大街上人们打电话却并不会觉着尴尬