大佬代码在这
我也是个垃圾,初学者练习这个项目,我认为第一步是熟悉这个平台的使用,这种云编程不同于pycharm,初学者可能会感觉十分别扭(比如垃圾的我),所以我在这个笔记里尽可能详细的说一下如何让大佬代码在自己的notebook里跑一边,只有知道了总体流程,才能写出属于自己的东西。
强调一下,代码是大佬的,我们只是借鉴一下,所以想要有所进步,还需要自己的努力。
零基础入门语音识别——食物声音识别
打开我给的连接,会是这个样子

该注册的注册,该登录的登录。
然后报名参赛。
以后就可以在自己的个人中心找到了

进入比赛,点击论坛,新建notebook(建议用这种方式新建,因为这样你的notebook会自动挂载比赛所需要的数据集,当然,今天跑的代码不需要)

然后会是这样的,可以在左下角新建,这时,你的代码是无法修改的,记住带点击右上角的编辑,进入notebook,

进入以后把这些没用的删了,用小剪刀这个工具,

然后点击+号,新建cell,把这篇文章开头的链接的大佬的代码复制过去,不要漏,然后从上往下,依次运行(单个三角形),注意一定要确定当前这个框里的代码全部跑完再运行下一行。

这个*号代表正在运行,

空的代表没有运行,

数字代表的是成功运行的,注意数字的顺序,一定要的按顺序的,如果出现12324这种,代表你分步运行时出错了,
当然,你也可以点击双三角
直接运行所有,但是我觉得初学者还是一步一步的看到代码运行的状态,对学习帮助更好一些(因人而异把)
特别强调,对于基本没有接触过深度学习的小白来说,代码运行时间绝对会是一个难忘的经历,我运行了
运行成功了
好了,现在开始进行解释:
!wget http://tianchi-competition.oss-cn-hangzhou.aliyuncs.com/531887/train_sample.zip
!wget你可以理解为netebook用来下载数据的命令
!unzip -qq train_sample.zip
!\rm train_sample.zip
使用unzip函数解压缩,通过\rm将压缩包删除
所以,对于训练集和测试集,我们先下载好压缩包,解压后删除原本压缩包。
# 基本库
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report
from sklearn.model_selection import GridSearchCV
from sklearn.preprocessing import MinMaxScaler
1、train_test_split返回切分的数据集train/test。
将训练集划分为训练集和测试集,这点和机器学习相同。
随机划分样本数据为训练集和测试集的,当然也可以人为的切片划分。
2、
sklearn.metrics里面会有很多的评价指标,即用于检验机器学习模型效果的定量指标。
sklearn中的classification_report函数用于显示主要分类指标的文本报告.在报告中显示每个类的精确度,召回率,F1值等信息。
3、GridSearchCV,它存在的意义就是自动调参,只要把参数输进去,就能给出最优化的结果和参数。
(GridSearchCV的名字其实可以拆分为两部分,GridSearch和CV,即网格搜索和交叉验证。这两个名字都非常好理解。网格搜索,搜索的是参数,即在指定的参数范围内,按步长依次调整参数,利用调整的参数训练学习器,从所有的参数中找到在验证集上精度最高的参数,这其实是一个训练和比较的过程。)
4、MinMaxScaler的功能是将每个元素(特征,feature)转换成给定范围的值。
(对数据进行预处理的,主要功能可以概括成标准化和归一化。MinMaxScaler是一个归一化的函数,可以将范围所放在指定的范围区间内)
# 加载深度学习框架(搭建分类模型所需要的库)
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, Flatten, Dense, MaxPool2D, Dropout
from tensorflow.keras.utils import to_categorical
from sklearn.ensemble import RandomForestClassifier
from sklearn.svm import SVC
#加载音频处理库
pip install librosa --user
# 其他库
import os
import librosa
import librosa.display
import glob
加载深度学习框架(搭建分类模型所需要的库)
keras系列︱Sequential与Model模型、keras基本结构功能(一)
sklearn.ensemble库,支持众多集成学习算法和模型。
RandomForestClassifier是非常具有代表性的Bagging集成算法,它的所有基评估器都是决策树,分类树组成的森林就叫做随机森林分类器,回归树所集成的森林就叫做随机森林回归器。
sklearn.svm库支持向量机,主要用于分类,回归和异常检测。SVC全称是C-Support Vector Classification,是一种基于libsvm的支持向量机,由于其时间复杂度为O(n^2),所以当样本数量超过两万时难以实现。
keras网络结构(关于keras先了解一下,我学习后再做笔记)

#加载音频处理库
pip install librosa --user
下面的感兴趣仔细看一下,不想看的话就跳过吧,反正知道这个库时用来处理声音数据的就行了,大佬的代码里用到的东西,我还会再仔细说明的。
原文在这里

其他:
os 是python环境下对文件,文件夹执行操作的一个模块。
librosa.display模块并不默认包含在librosa中,使用时要单独引入,是用来做音频特征的显示。
glob是UNIX程序,用来匹配路径文件名
好了,现在我们已经把数据集下载好了,并且把要用到的库也导入了,该进行数据集的处理了
#特征提取及数据集的创建
feature = []
label

本文详细介绍了初学者如何在云平台上进行语音识别项目的实践,包括注册登录、数据集下载、库的导入、音频处理、特征提取、数据集划分、模型构建、训练与预测。通过使用librosa库处理音频,提取梅尔频谱作为特征,利用Keras搭建CNN模型进行食物声音分类。最后,对测试集进行预测并生成提交文件。
最低0.47元/天 解锁文章
217





