上传需求文档
This commit is contained in:
11
doc/数据介绍.txt
Normal file
11
doc/数据介绍.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
CASIA文件夹
|
||||
汉语,4个人(2名男性,2名女性)的大约 1200个音频。
|
||||
表达了6种不同的情绪:neutral,happy,sad,angry,fearfil,surprised。
|
||||
SAVEE文件夹
|
||||
英文,4个人(男性)的大约 500 个音频:
|
||||
表达了6种不同的情绪(第一个字母表示情绪类别):a=anger,f=fear,h=happiness,n=neutral,
|
||||
sa=sadness,su=surprise。
|
||||
RAVDESS文件夹
|
||||
英文,24 个人(12 名男性,12名女性)的大约1500个音频。
|
||||
表达了6种不同的情绪(第三位数字表示情绪类别):01=neutral,03=happy,04=sad,05=angly.
|
||||
06=fearful,08=surprised.
|
||||
63
doc/数据读取与特征方法.txt
Normal file
63
doc/数据读取与特征方法.txt
Normal file
@@ -0,0 +1,63 @@
|
||||
数据读取
|
||||
Librosa是一个用于音频、音乐分析、处理的python第三方库。
|
||||
使用glob函数批量获取音频文件的路径。
|
||||
通过load函数可以对语音数据进行读取,load函数会返回两个数据:音频时间序列和采样率
|
||||
获取并保存语音的标签。
|
||||
使用matplotlib库和librosa库对读取的数据进行简单的可视化。
|
||||
特征工程
|
||||
librosa库的feature模块适用于语音数据的特征提取和操作
|
||||
音高、估计调谐偏差
|
||||
通过短时傅里叶变换获取数据频率的振幅
|
||||
设置最小最大基本频率,获取音高、幅度
|
||||
根据返回的音高计算估计调谐偏差(音高调谐)
|
||||
最后计算音高的均值、全局标准差、最大值和最小值
|
||||
频谱质心:幅度频谱图的每一帧都经过归一化并被视为频率箱上的分布,其平均值(质心)为 按帧提取。
|
||||
使用feature模块中的spectral centroid函数,计算频谱质心。
|
||||
对返回的频谱质心做简单的标准化。
|
||||
计算频谱质心的均值、全局标准差和最大值。
|
||||
光谱平坦度;光谱平坦度(或色调系数)是衡量量化声音有多少类似噪音,而不是 类似音调1.高光谱平
|
||||
坦度(接近1.0)表示频谱类似于白噪声。 它通常转换为分贝。
|
||||
使用feature模块中的spectral flatness函数,计算光谱平坦度
|
||||
计算光谱平坦度的均值。
|
||||
MFCC特征(梅尔频率倒谱系数):使用系数为50的MFCC特征
|
||||
使用feature模块中的chroma_stft函数,计算梅尔频率倒谱系数。
|
||||
计算梅尔频率倒谱系数的均值,
|
||||
梅尔频率:提供时间序列输入,首先计算其幅度频谱图,然后通过 映射到 mel刻度上。
|
||||
使用feature模块中的melspectrogram函数,计算梅尔频率:
|
||||
计算梅尔频率的均值。
|
||||
光谱对比度:频谱图的每一帧都分为子带。 对于每个子带,通过比较来估计能量对比度最高分位数(峰
|
||||
值能量)中的平均能量与底部分位数(谷能量)。通常对比度值较高对应于清晰的窄带信号,而低对比度
|
||||
值对应于宽带噪声。
|
||||
使用feature模块中的spectral contrast函数,计算光谱对比度
|
||||
计算光谱对比度的均值。
|
||||
过零率:计算音频时间序列的过零率。
|
||||
使用feature模块中的zero crossing rate函数,计算过零率
|
||||
计算过零率的均值。
|
||||
磁相:使用librosa库中的magphase函数,计算磁相。
|
||||
根据返回的量级,计算其均值、全局标准差和最大值。
|
||||
均方根能量:计算每个帧的均方根(RMS)值,从音频样本或来自频谱图。从音频样本计算RMS值更快,
|
||||
因为它不需要一个STFT计算。
|
||||
使用feature模块中的rms函数,计算均方根
|
||||
计算均方根的均值、全局标准差和最大值。
|
||||
色谱图:根据功率谱图计算色谱图
|
||||
使用librosa库中的chroma stft函数,计算色谱图
|
||||
计算其均值。
|
||||
特征工程
|
||||
特征数据的标准化
|
||||
二维数据转为三维数据
|
||||
标对签进行数值型编码
|
||||
划分训练集和验证集
|
||||
基于tensorflow框架,调用其keras接口,构建LSTM模型
|
||||
为抑制过拟合的现象,往LSTM网络结构中添加L2正则化
|
||||
模型编译:
|
||||
优化器:adam
|
||||
损失函数:交叉熵损失函数
|
||||
评估指标:准确率
|
||||
添加回调函数
|
||||
模型训练。
|
||||
可视化模型训练效果(使用系统字体)
|
||||
小结
|
||||
使用glob库批量获取语音数据的路径,再调用Iibrosa库中的load函数进行数据读取。
|
||||
使用Iibrosa库对语音数据进行特征提取。
|
||||
构建LSTM模型对语音数据进行情绪分析,为抑制过拟合现象的发生添加L2正则化。
|
||||
可对数据集、特征工程和LSTM模型进行优化。
|
||||
Reference in New Issue
Block a user