基于Python的智能语音识别系统设计

引言

语言是人类最原始直接的一种交流方式,通俗易懂、便于理解。随着科技的发展,语言交流不再只存在于人与人之间,如何让机器“听懂”人类的语言并做出反应成为人工智能的重要课题,语音智能交互技术应运而生。作为其中重要一环的语音识别技术近年来不断发展,走出了实验室,随着人工智能进入人们的日常生活中。当今市场上语音识别技术相关的软件、商品涉及人类生活的方方面面,语音识别的实用性已经得到充分的印证。如今语音识别技术已经成为人类社会智能化的关键一步,能够极大提高人们生活的便捷度。

近年随着互联网的快速兴起和飞速发展,人们的生活也日新月异,高科技的进步伴随着种种问题同时也给人们和社会带来了切实的便捷与利处。各种各样随着计算机发展而贴近人们生活的好用软件出现,随着技术的发展进步,多种多样让人眼花缭乱的功能一一呈现在大众眼前。在这样一个时代,语音识别系统也在各种各样的领域中与人们相伴为人们服务,小到手机中的语音翻译功能,大到智能家居领域中的语音命令功能。在人工智能领域中,语音识别技术已经成为其中不可或缺的一部分,而且渐渐成为AI智能产品中非常重要的环节。

随着科学技术的进步,智能语音识别技术也在不断发展着。从20世纪50年代Audrey被开发出来,到70年代,隐马尔科夫模型(HMM)在语音识别技术中得到应用,但此后的语音识别技术发展并没有脱离HMM框架。而在2011年,国内的科大讯飞第一次将深度神经网络(DNN)技术运用到语音云平台中,与传统的HMM产生了碰撞。

通过在网络上查阅相关资料,阅读相关文献,进一步学习到了相关知识,对设计智能语音识别系统打好了牢固的地基,提供了科学系统的知识,从盲目毫无章法的进行到有规划有目标的进行。对HMM,DNN等技术参考相关的设计思路和实现方法进行了细致的研究。

关键词 智能语音识别;HMM;DNN

正文

早在计算机发明之前,自动语音识别的设想就已经被提上了议事日程,早期的声码器可被视作语音识别及合成的雏形。而1920年代生产的“Radio Rex”玩具狗可能是最早的语音识别器,当这只狗的名字被呼唤的时候,它就能够从底座上弹出来。最早的基于电子计算机的语音识别系统是由AT&T贝尔实验室开发的Audrey语音识别系统,它能够识别10个英文数字。其识别方法是跟踪语音中的共振峰。该系统得到了98%的正确率。到1950年代末,伦敦学院(Colledge of London)的Denes已经将语法概率加入语音识别中。

1960年代,人工神经网络被引入了语音识别。这一时代的两大突破是线性预测编码技术(LPC)及动态时间规整技术(DTW)。而语音识别技术的最重大突破是70 年代隐含马尔科夫模型(HMM)的应用。从Baum提出相关数学推理,经过Labiner等人的研究,卡内基梅隆大学的李开复最终实现了第一个基于隐马尔科夫模型的大词汇量语音识别系统Sphinx。此后HMM技术的应用一直占据语音识别系统的主流地位。

目前智能语音识别系统面临着环境中的噪声干扰问题、方言识别问题以及容错率问题的挑战。而DNN等新技术的应用是否能相对于传统的HMM框架的语音识别系统更加优秀则需要更多的探索与研究。

通过检索关键词“智能语音识别”查阅相关资料和老师沟通后,从由房爱东作为第一作者发表的《基于人工智能的语音识别系统及应用研究》中学习到了智能语音识别系统的设计思路与流程。从由孙可作为第一作者发表的《基于Python的深度学习语音识别》中学习到了语音识别系统的DNN技术。在对人工神经网络(ANN)的研究中,深度学习的概念被提出,计算机是否也能模拟人脑中的神经元进行学习,人工神经网络就成为模拟动物神经网络特征的数学模型,2006年深度学习教父Hinton等人提出深度置信网络(DBN)。在DNN运用于图片识别后并取得成功后,逐渐被研究人员运用于语音识别等领域。从杨毯毯发表的《基于HMM与改进的神经网络语音识别》中学习到了语音识别系统中的HMM技术,该技术是一个双重随机的数理统计处理过程,基本上无法观察其所处的具体状态,但是矢量序列却表征着其相关特征。每一观察矢量都借助于其相应的概率密度函数的分布状况来反映其各个状态,此外,每个观察矢量又是由相应概率密度分布的状态序列产生。与此同时,语音信号的特性恰巧与之相吻合,因此可以运用HMM来刻画语音信号的特征。

总结

根据上述文献的相关学习,了解到对智能语音识别系统性能和结构的研究一直是热点,该技术也不断成为人们生活的一部分。目前智能语音识别系统依然面临着环境中的噪声干扰问题、方言识别问题以及容错率问题的挑战。在智能语音识别系统的设计上,可以利用DNN技术对传统的HMM框架进行改进或建立更好的全新框架,能有效提高语音识别系统的效率和性能,以及改善其方言识别能力以及容错率的处理能力。语音识别系统的发展已经从GMM-HMM到DNN-HMM,再到其现在以CTC,RNN-T等技术为代表的端到端技术。语音识别中的特征提取是其中的重要步骤,通过与MFCC、FBank、LPC等特征提取技术结合以提升语音识别系统的性能,进一步解决语音识别系统中存在的问题。

参考文献

[1]范宝荣,薛金珍,张天航.语音识别技术综述[J].数码世界,2019(02):49.

[2]郝欧亚,吴璇,刘荣凯.智能语音识别技术的发展现状与应用前景[J].电声技术,2020,44(03):24-26.DOI:10.16311/j.audioe.2020.03.007.

[3]房爱东,张志伟,崔琳,谢士春.基于人工智能的语音识别系统及应用研究[J].宿州学院学报,2019,34(08):62-65.

[4]孙可,刘忠武,吴雨洽,郭东旭.基于Python的深度学习语音识别[J].沈阳师范大学学报(自然科学版),2019,37(03):274-277.

[5]李姝仪,李云洁,蒋昊轩,郭宗昱,吴可欣,刘博.语音识别实现方法[J].科技风,2021,No.475(35):69-71.DOI:10.19392/j.cnki.1671-7341.202135021.

[6]杨毯毯. 基于HMM与改进的神经网络语音识别[D].山东科技大学,2019.DOI:10.27275/d.cnki.gsdku.2019.001094.

[7]林坤辉,息晓静,周昌乐.基于HMM与神经网络的声学模型研究[J].厦门大学学报(自然科学版),2006(01):44-46.

[8]贾嘉敏,程振,潘文林,王欣.基于DNN-HMM的佤语语音声学建模[J].计算机时代,2022,No.362(08):61-64+68.DOI:10.16644/j.cnki.cn33-1094/tp.2022.08.014.

[9]林坤辉,息晓静,周昌乐.基于HMM与神经网络的声学模型研究[J].厦门大学学报(自然科学版),2006(01):44-46.

[10]王奇. 基于深度学习的中文语音识别系统的研究[D].沈阳工业大学,2022.DOI:10.27322/d.cnki.gsgyu.2022.000669.

[11]顾亚文.人工智能深度学习背景下语音识别方法研究[J].软件,2022,43(05):122-124.

[12]房敏.基于HMM的语音识别技术[J].计算机产品与流通,2018(03):91.

[13]Aldarmaki Hanan,Ullah Asad,Ram Sreepratha,Zaki Nazar. Unsupervised Automatic Speech Recognition: A review[J]. Speech Communication,2022(prepublish).

[14]Trabelsi Asma,Warichet Sébastien,Aajaoun Yassine,Soussilane Séverine. Evaluation of the efficiency of state-of-the-art Speech Recognition engines[J]. Procedia Computer Science,2022,207.

[15]Gupta Shrurti,Shabeeb Kashif,Singh Sonika,Sharma Sandeep. Adaptive HMM based Speech Recognition to Recognize Multi-lingual Sentence[J]. International Journal of Computer Applications,2015,115(7).

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/570621.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++ Qt QMainWindow实现无边框窗口自定义标题栏可拖拽移动拉伸改变窗口大小

本篇博客介绍C Qt QMainWindow实现无边框窗口,适用于win10/win11系统。 QMainWindow相对于QWidget多了dockedwidget功能,跟多人可能更喜欢用QMainWindow做主窗口,如果不需要dockedwidget功能,QMainWindow与QWidget做主窗口基本无…

一款新型的Linux服务器管理工具

最近发现了一款新型的Linux服务器管理工具,名称叫1Panel,本文跟大伙分享一下。 一. 产品介绍 1Panel 是一个开源的 Linux 服务器运维管理面板,具有丰富的功能,可对服务器和容器进行管理。 产品提供简洁直观的We图形界面&#x…

如何使用RRT模式进行交易,昂首资本实例讲解

在上篇文章中,昂首资本用一篇文章讲解了,如何使用RRT模式进行交易以及背后的原理。如果没有看到的各位投资者可以往前翻一下,当然了也有投资者提到了新的问题,那就如何使用,今天昂首资本就用下面有几个例子实例讲解&am…

【C++】---STL之list详解

【C】---STL之list详解 一、了解list的基本信息二、成员函数1、构造2、迭代器3、empty()4、size()5、front()6、back()7、push_front()8、pop_front()9、push_back()10、pop_back()11、insert()12、erase()13、swap()14、sort()15、reverse() 一、了解list的基本信息 1、库里面…

windows查看xxx的版本号

node -v python --version redis-server --version java -version go version mvn -version git --version

【python】随机模拟——赶火车问题、醉汉回家

问题描述 1.赶火车问题。2.模拟二维随机游动(醉汉回家) 1.赶火车问题。 一列列车从A站开往B站,某人每天赶往B站上车。他已经了解到火车从A站到B站的运行时间是服从均值为30min,标准差为2min的正态随机变量。火车大约下午13&#…

Linux 深入理解Linux文件系统与日志分析

在Linux系统中,文件名和文件数据是分开存储的 文件数据包含 元信息(即不包含文件名的文件属性) 和 实际数据 文件元信息存储在 inode(索引节点)里, 文件实际数据存储在 block(块)里; 文件名存储在目录块里 查看文件的元信息 stat 文件名 [ro…

曲线救国|基于函数计算FC3.0部署AI数字绘画stable-diffusion

曲线救国|基于函数计算FC3.0部署AI数字绘画stable-diffusion 基于函数计算FC2.0部署AI数字绘画stable-diffusion基于函数计算FC3.0部署AI数字绘画stable-diffusion总结 在经过了上一次曲线救国失败经历之后,失败经历参考博文:https://developer.aliyun.c…

C++ —— 继承

什么是继承? 继承是指一种代码可以被复用的机制,在一个类的基础上进行扩展,产生的新类叫做派生类,被继承的类叫基类。(也可称为子类和父类) 继承的写法: class B : 继承方式 A (…

MCU功耗测量

功耗测量 一、相关概念二、功耗的需求三、测量仪器仪表测量连接SMU功能SMU性能指标 四、功耗测量注意点板子部分存在功耗MCU方面,可能存在干扰项仪器仪表方面 一、相关概念 静态功耗和动态功耗:动态功耗为运行功耗,功耗测量注重每MHz下的功耗…

智能调度|AIRIOT智能车队管理解决方案

客运、货运、汽车租赁、出租运营等行业对车辆管理、车队管理以及司乘人员的管理方式,逐渐向数字化和智能化转型。传统的依赖人工调度、记录和跟踪的管理模式已经难以满足业务发展需要,存在如下痛点: 实时监控与定位功能弱:无法实时…

实验4 数字频率计

实验目的: 1、使用铆孔U7输出一个脉冲,频率不定。 2、使用铆孔V7测量脉冲频率,并在数码管上显示。 实验内容及步骤: 设计原理 测量频率的方法有很多,按照其工作原理分为无源测量法、比较法、示波器法和计数法等。…

restful请求风格的增删改查-----修改and删除

一、修改&#xff08;和添加类似&#xff09; 前端&#xff1a; <script type"text/javascript">function update(){//创建user对象var user {id:$("#id").val(),username:$("#username").val(),password:$("#password").val…

aweraweg

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

​「Python绘图」绘制小猪佩奇

python 绘制小猪佩奇 一、预期结果 二、核心代码 import turtle print("开始绘制小猪佩奇") pen turtle.Turtle() pen.pensize(4) #pen.hideturtle()pen.speed(1000)pen.color("#ff9bc0","pink") pen.setheading(-30) pen.pu() pen.goto(-100,…

34. BI - 美国大学生足球队的 GCN 案例

本文为 「茶桁的 AI 秘籍 - BI 篇 第 34 篇」 文章目录 美国大学生足球队 Embedding&#xff08;GCN&#xff09; Hi&#xff0c;你好。我是茶桁。 在上一节课中&#xff0c;因为需要&#xff0c;我们先是回顾了一下 Graph Embedding&#xff0c;然后跟大家讲解了 GCN 以及其算…

代码随想录——双指针/滑动窗口(二)

一.最长连续递增序列 go语言 func max(a,b int) int{if a>b{return a}return b }func findLengthOfLCIS(nums []int) int {n:len(nums)maxlen:0for l:0;l<n;l{r:l1for r<n&&nums[r]>nums[r-1]{r}maxlenmax(r-l,maxlen)}return maxlen }cpp int findLengt…

为什么大模型训练需要GPU,以及适合训练大模型的GPU介绍

文章目录 前言 1、为什么大模型训练需要GPU&#xff0c;而非CPU 2、现在都有哪些合适的GPU适合训练&#xff0c;价格如何 前言 今天偶然看到一篇关于介绍GPU的推文&#xff0c;我们在复现代码以及模型训练过程中&#xff0c;GPU的使用是必不可少的&#xff0c;那么大模型训练需…

软件测试(Web自动化测试)

一.自动化测试简介 1.自动化测试是一种把人工驱动的测试行为转化为机器执行的测试过程。 2.使用自动化测试需要满足的3个条件&#xff1a; &#xff08;1&#xff09;项目需求变动不频繁 &#xff08;2&#xff09;项目进度压力不大&#xff0c;时间不紧迫 &#xff08;3&…

python struct模块 处理字节流

首先看一下&#xff0c;struct 的字节顺序格式。 其次是struct的格式对照表。 下面是案例&#xff1a; 单项数据编解码 >>>struct.pack(i,379978) bJ\xcc\x05\x00 >>>struct.pack(>i,379978) b\x00\x05\xccJ解析&#xff1a; >>>struct.unpa…
最新文章