语音识别-食物声音识别

声音识别和自然语言处理类似,声音和文本都是一种序列化的数据。自然语言处理要处理文本,首先要将文本表示成为计算机能够识别的数据,比如one-hot编码,词袋模型,或者训练成词向量嵌入到空间内。在声音领域内,声音可以通过librosa库进行特征处理,例如提取melspectrogram,mfcc特征。进而可以成为计算机可以识别,处理的数据。

本次做食物声音识别,共有20种咀嚼食物的声音,如咀嚼肉饼,卷心菜等。baseline采用的是CNN,最后一层接全连接层,激活函数采用softmax,做多种声音识别

提取特征后的数据要经过处理输入到Conv2D函数中,Conv2D处理的数据是四维数据,且Conv2D处理的数据格式为conv2d(in_channels,out_channels,kernel_size, stride=(1,1),padding=0,dilation=(1,1),groups=1)。

经过处理之后X-train格式为(750,16,8,1),X-test格式为(250,16,8,1),四维数据的物理意义为(batch_size, channel, height, width)

经过CNN网络,卷积,池化,flatten,最后经过softmax分类经过的网络结构如下图所示,总共的参数为1144596个

Layer (type) Output Shape Param #

conv2d (Conv2D) (None, 16, 8, 64) 640


max_pooling2d (MaxPooling2D) (None, 8, 4, 64) 0


conv2d_1 (Conv2D) (None, 8, 4, 128) 73856


max_pooling2d_1 (MaxPooling2 (None, 4, 2, 128) 0


dropout (Dropout) (None, 4, 2, 128) 0


flatten (Flatten) (None, 1024) 0


dense (Dense) (None, 1024) 1049600


dense_1 (Dense) (None, 20) 20500

Total params: 1,144,596
Trainable params: 1,144,596
Non-trainable params: 0

框架选用的是基于tensorflow的kears框架,最后将训练后的model应用到测试数据,即可预测测试声音的标签,结果并保存到submit.csv

Original: https://blog.csdn.net/qq_33588413/article/details/115666469
Author: qq_33588413
Title: 语音识别-食物声音识别

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/526878/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球