AI人工智能 构建语音识别器
在本章中,我们将学习如何使用 Python 和人工智能进行语音识别。
语音是成年人最基本的交流方式。语音处理的基本目标是实现人与机器之间的交互。
语音处理系统主要有三个任务:
- 第一,语音识别,让机器能够捕捉我们所说的单词、短语和句子
- 第二,自然语言处理,让机器能够理解我们所说的内容
- 第三,语音合成,让机器能够说话
本章重点介绍语音识别,即理解人类所说单词的过程。请记住,语音信号是通过麦克风捕获的,然后需要被系统理解。
构建语音识别器
语音识别或自动语音识别(ASR)是机器人等人工智能项目的核心。没有 ASR,就无法想象认知机器人与人类进行交互。然而,构建语音识别器并非易事。
开发语音识别系统的困难
开发高质量的语音识别系统确实是一个难题。语音识别技术的难度可以从以下几个方面来大致描述:
- 词汇量大小:词汇量大小会影响开发 ASR 的难易程度。为了更好地理解,考虑以下不同大小的词汇量:
- 小词汇量包含 2-100 个单词,例如语音菜单系统
- 中等词汇量包含几百到几千个单词,例如数据库检索任务
- 大词汇量包含几万个单词,例如通用听写任务
- 请注意,词汇量越大,识别难度就越高。
- 通道特性:通道质量也是一个重要因素。例如,人类语音包含高带宽和全频率范围,而电话语音则包含低带宽和有限的频率范围。请注意,后者更难识别。
- 说话模式:开发 ASR 的难易程度还取决于说话模式,即语音是孤立单词模式、连接单词模式还是连续语音模式。请注意,连续语音更难识别。
- 说话风格:朗读的语音可能是正式风格,也可能是自发、随意的对话风格。后者更难识别。
- 说话者依赖性:语音可以是说话者相关、说话者自适应或说话者无关的。说话者无关的语音识别最难构建。
- 噪声类型:在开发 ASR 时,还需要考虑噪声因素。信噪比可能在不同范围内,这取决于声学环境中的背景噪声多少:
- 如果信噪比大于 30dB,则被认为是高范围
- 如果信噪比在 30dB 到 10dB 之间,则被认为是中等信噪比
- 如果信噪小于 10dB,则被认为是低范围
- 例如,背景噪声的类型,如平稳噪声、非人类噪声、背景语音和其他说话者的串扰,也会增加问题的难度。
- 麦克风特性:麦克风的质量可能是好的、一般的或较差的。此外,嘴与麦克风之间的距离也可能不同。这些因素也应该在识别系统中考虑。
尽管存在这些困难,研究人员仍然在语音的各个方面进行了大量工作,例如理解语音信号、说话者和识别口音。