《自然语言处理技术》——实训17 单句语音内容识别.docx
《《自然语言处理技术》——实训17 单句语音内容识别.docx》由会员分享,可在线阅读,更多相关《《自然语言处理技术》——实训17 单句语音内容识别.docx(8页珍藏版)》请在三一文库上搜索。
1、项目6熟悉常见语音处理技术单句语音内容识别1实训目标(1) 熟练掌握通过python_speech_features库的mfcc函数进行MFCC特征提取。(2) 能够通过hmmlearn库中HMM模块实现HMM语音识别模型的构建。(3) 熟练掌握HMM模型的训练和测试。2实训环境环境版本说明Windows1064电脑操作系统Python3.8.5Python语言版本pandas1.3.0主要用于数据读取、清洗等操作NumPy1.21.6主要用于Python中的数值计算jieba0.42.1主要用于文本分词Gensim4.2.0主要用于检索文本、计算文本相似度、训练词向量、建模主题等Matplo
2、tlib3.3.0主要用于数据可视化PaddlePaddle2.4.2是一个深度学习框架,提供了高效的计算框架和优化算法PaddleSpeech1.2.0主要用于语音和音频中的各种关键任务的开发scikit-learn1.0.2广泛地用于统计分析和机器学习建模等数据科学领域Librosa0.8.1主要用于分析一般的音频信号,是一个非常强大的Python语音信号处理的第三方库NETK3.5是一个常用的自然语言处理工具包,可用于文本处理、语义分析、词性标注等SciPy1.7.3是一个科学计算工具包,可用于数学、科学、工程学等领域pyttsx32.9.0主要用于将文本转换成语音3实训说明单句语音内容
3、识别是一种语音识别任务,它的目标是从一个语音信号中识别出一个短语、句子或命令等特定的文本内容,通常应用于语音交互式系统、语音控制系统、语音助手等领域。基于HMM模型的单句语音内容识别是一种经典的语音识别方法。其基本思路是将语音信号转换成一系列状态,然后通过对状态序列的统计建模,将其与文本序列进行匹配,从而实现语音到文本的转换,通用流程图如图3-1所示。4实训步骤4.1 数据读取及特征提取在单句语音识别中,数据读取和特征提取是两个非常关键的步骤。它们对于整个语音识别系统的性能和准确度具有重要影响。对于语音识别任务来说,首先需要获取原始的音频数据。数据读取是将原始音频文件转换成计算机可以处理的数字
4、信号的过程。特征提取是从原始音频信号中提取对语音识别任务有用的特征的过程。训练集使用一共100个音频数据,中文发音从1-10的单音节数据,数据格式为wav文件,部分数据如图4-1所示。OOOOO0OOOOO00O1_1.wav1_2,wav1_3.wavl_4.wav1_5.wav1_6.wav1_7.wav1_8,wav1_9.wav1_10.wav2_1.wav2_2,wav2_3.wav2_4,wavO0O0OOOO0OOOOO2_5.wav2_6.wav2_7.wav2_8.wav2_9.wav210.wav3_1.wav3_2.wav33.wav3_4.wav3_5.wav3_6.w
5、av3_7.wav3_8WaVOOOOOOOO0OOOOO3-9.wav3J0.wav4_1.wav4_2.wav4_3.wav4.4.wav4_5.wav46.wav4_7.wav4_8.wav4_9.wav4J0.wav5J.wavSZwavOOOO0OO00O0OOO5_3.wav5_4.wav5_5,wav5_6,wav5_7.wav5_8.wav5_9,wav5_10.wav6_1.wav6_2.wav6_3.wav6_4,wav6_5,wav6_6,wavO000OOOO0OOOOO6_7.wav6_8.wav6_9.wav610.wav7_1.wav7_2.wav73.wav7_
6、4,wav7_5.wav7_6.wav77WaV7_8.wav7_9.wav710.wavOOOOOOOOO0OOOO8_1.wav8_2.wav8_3.wav8_4.wav8_5.wav8_6.wav8_7.wav8_8.wav89.wav8_10.wav9Jwav9_2,wav9_3.wav94.wavO0O00OOO0OOO0O9_5.wav9_6.wav9_7,wav9_8.wav9_9.wav9_10.wav10_1.wav10_2.wav10_3.wav10_4.wav10_5.wav10_6.wav10_7.wav10_8.wav图4-1音频数据在数据准备阶段,生成字典存储路径信
7、息和存储标签信息,这是在构建训练集和测试集中必须的准备步骤,如代码4-1所示。代码4-1生成字典存储路径信息和存储标签信息frompython_speech_featuresimportmfccfromscipy.ioimportwavfilefromhmmlearnimporthmmimportjoblibimportnumpyasnpimportosimportwarningswarnings.filterwarnings(ignore)defgen_wavlist(wavpath):#定义一个空字典,用于存储.wav文件的路径信息,key为文件名,ValUe为文件的完整路径wavdict
8、二#定义一个空字典,用于存储标签信息,key为文件名,VaIUe为该文件的标签Iabeldict=for(dirpath,dirnames,filenames)inos.walk(wavpath):#遍历所有的文件forfilenameinfilenames:#若文件扩展名为wav,则执行以下操作iffilename.endswith(.wav):# 生成文件的完整路径filepath=os.sep.join(dirpath,filename)# 获取文件名作为字典的keyfileid=filename.StripC.wav)# 将文件的完整路径存储到字典中,以文件名为keywavdictfi
9、leid=filepath# 将文件的标签信息存储到字典中,以文件名为keylabel=fileid.split(J)llabeldictfileid=label#返回存储了.wav文件路径信息和标签信息的两个字典returnwavdict,Iabeldict#准备训练所需数据CATEGORY=,2,3,4,5,6,7,8,9,10wavdict,Iabeldict=gen_wavlist(trainmg_data)PrintC路径字典:W,wavdict)PrintC标签字典:nIabeldict)运行代码4-1,得到的部分结果如下。路径字典:4_4:,training-data4-4.wa
10、v,7_3:trainmg_data/7_3.wav,7_6:training_data/7_6.wav,6_4:training_data/6_4.wav,7_5:training_data/7_5.wav,5_5:training_data/5_5.wav,trainingdata/2Lwav,37/trainingdata/3LWaV,54:trainingdata/54.wav,trainmg_data/5_10.wav林签字典:4_4:4,7_3:3,7_6:6,6_4:4,7_5:5,5_5:5,5_4:4,3_6:6,10_9:9,4,1_6:6,9_9:9,6_9:9,5_7:
11、7,8_2:2,9_6:6,6_8:8,7_4:4,4_5:5,3_2:2,2_3:3,10.4:4,2_2:2,2_6:6,10J:,7,3J0:10,5_10:10,在Python中,除了可以通过项目5介绍到的IibroSa库实现MFCC特征提取之外,还可以利用python_speech_features库实现。python_speech_features库主要关注基本语音特征提取,相对简单且计算速度较快,而Iibrosa库提供了更广泛的音频处理功能和参数选项,具有更高的易用性和适应不同应用场景的能力。本任务主要通过python_speech_features库的mfcc函数进行MFCC特
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自然语言处理技术 自然语言处理技术实训17 单句语音内容识别 自然语言 处理 技术 实训 17 单句 语音 内容 识别
