【玩转华为云】手把手教你利用ModelArts识别偶像的声音
本篇推文共计2000个字,阅读时间约3分钟。
华为云—华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器、云数据库、云安全等云计算服务,软件开发服务,面向企业的大数据和人工智能服务,以及场景化的解决方案。
华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。
华为云官方网站
ModelArts是华为云产品中面向开发者的一站式AI开发平台,为机器学习与深度学习提供海量数据预处理及半自动化标注、大规模分布式Training、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。
华为云官方网站
手把手教你利用ModelArts识别偶像的声音
基于ModelArts实现歌手声音识别模型的开发。本实验将基于ModelArts自动学习功能,零编码训练得到一个歌手声音识别模型。并且将训练得到的模型部署成在线服务,用户使用该在线服务对输入的声音进行预测以达到自动识别上传声音是哪位歌手的目的。
手把手教你利用ModelArts识别偶像的声音
实现流程
1.实验前的准备工作(环境,OBS)
2.准备数据(五月天,张杰歌声数据)
3.创建声音识别项目
4.数据集标注
5.自动训练,生成模型
6.将模型部署上线为在线服务
7.发起检测
1
1.1密钥准备
首先需要进入华为云官方网站
https://www.huaweicloud.com/
点击页面的“控制台”切换至控制台界面,在账号名称的下拉菜单中点击“我的凭证”,进入创建管理访问密钥(AK/SK)的界面。位置如下图所示:
什么是访问密钥?
访问密钥即AK/SK(Access Key ID/Secret Access Key),是您通过开发工具(API、CLI、SDK)访问华为云时的身份凭证,不能登录控制台。系统通过AK识别访问用户的身份,通过SK进行签名验证,通过加密签名验证可以确保请求的机密性、完整性和请求者身份的正确性。
选择“访问密钥”,点击“新增访问密钥”
妥善保存系统自动下载的“credentials.csv”文件中的AK(Access Key Id)和SK(Secret Access Key)以备后续步骤使用。
1.2创建OBS桶和目录
进入方式,“控制台”->“服务列表”->“存储”->“对象存储服务”,页面右上角点击“创建桶”按钮进入创建页面。
什么是OBS?
对象存储服务(Object Storage Service,OBS)是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力,包括:创建、修改、删除桶,上传、下载、删除对象等。
1.3 OBS桶设置
OBS桶设置参数如下:
区域:华北-北京四
桶名称:自定义(注意:此名称会在后续步骤使用)
根据自己的命名习惯,我将此处的桶名称取为
obs-train-music
存储类别:标准存储
桶策略:私有
归档数据直读:关闭
单AZ:开启
点击"立即创建",完成创建
1.4创建文件夹
点击刚刚创建的桶,进入详情页:
左侧栏选择“对象”,点击“新建文件夹”,在弹出的新建窗口中:
文件夹名称:自定义(此名称会在后续步骤中使用)
根据自己的命名习惯,我将此处的文件夹名称取为music-data
点击“确定”完成添加:
1.5服务授权
由于本实验项目需要使用数据管理功能,在开始使用前,需为数据管理模块获取访问OBS权限。
在ModelArts管理控制台,进入“数据管理->数据集”页面,单击“服务授权”
由具备授权的账号“同意授权”后,即可正常使用:
1.6下载安装并登录OBS Browser+
由于OBS Browser快下线了,所以本次实验关于对象存储服务操作中我们用到的新工具是OBS Browser的升级版OBS Browser+
OBS Browser+是一款用于访问和管理对象存储服务(Object Storage Service,OBS)的图形化工具,支持完善的桶管理和对象管理操作。OBS Browser+的图形化界面可以非常方便地让用户在本地对OBS进行管理,例如:创建桶、上传下载文件、浏览文件等。
该工具在华为云主页“开发者->资源工具->开发工具”处:
双击点进去后是下面的页面:
在开发工具的业务工具处,根据自己电脑配置下载OBS Browser+:
此为下载完成打开后的OBS Browser+工具界面:
填入步骤1.1下载得到的Access Key Id和Secret Access Key密钥
即可登录刚刚在华为云云端创建的OBS桶:
此时可以借助OBS Browser+从云端创建的OBS桶中上传和下载文件:
2
2.1准备数据
关于歌手声音识别的数据集,这里我是自己制作的数据集,在网上下载歌曲后处理得到的歌曲片段。
五月天-《不为谁而作的歌》歌曲声音片段10段:
张杰-《爱人啊》歌曲声音片段10段:
所有音频文件的格式必须一致,应为WAV,质量为16kbit/s 并且建议每个声音数据的时长不超过10秒。
关于声音的处理可以在格式工厂软件中进行编辑:
声音文件格式处理一致后将其保存为如下形式:
train文件下是两首歌:
五月天-《不为谁而作的歌》
张杰-《爱人啊》
歌曲声音片段
test文件夹中放入几段用于最后模型检测的歌曲片段声音测试文件:
后台回复“偶像”可获得我处理好的这部分声音数据集文件:
2.2数据上传
点击打开刚刚下载安装好的OBS Browser+工具进行对象存储服务:
进入步骤1创建好的OBS桶music-data文件夹中:
点击“上传”,按“添加文件夹”选择存放刚才处理好的test文件夹和train文件夹,点击“确定”即可完成上传。
利用OBS Browser+工具将数据上传至华为云云端的速度很快,在华为云云端很快就可以看见刚刚上传的本地电脑的声音数据集:
3
3.1创建声音分类项目
进入ModelArts管理控制台主页,单击左侧导航栏“自动学习”
添加步骤1保存的访问密钥文件中的密钥:
在“声音分类”方框中单击“创建项目”
在“创建声音分类项目”页面中,
填写“项目名称”“数据集名称”
选择“数据集输入位置”
声音分类数据集OBS路径为
“/obs-train-music/music-data/train/”
“数据集输出位置”选择一个空目录如
“/obs-train-music/music-data/output/”
填写完信息后,认真比对一遍自己信息,是否有错误,无错之后点击“创建项目”即可创建声音分类项目:
如果此时未标注中没有显示数据,点击图中“同步数据源”即可导入OBS桶中数据文件。
4
4.1数据标注
数据标注,针对声音分类项目,即在已有数据集中,标注出不同类别声音,并为其打上标签。标注好的数据用于模型训练。
声音分类数据集中,未数据标注的有20个,用户需要选择未标注数据进行手动标注。
此处声音数据集里面的声音数据有这几种类别:
1.五月天-不为谁而作的歌
2.张杰-爱人啊
分别为五月天和张杰的歌,因此我们可以用“五月天的歌”和“张杰的歌”来做数据标签
以“五月天的歌”数据标注为例子,本文我们将操作一遍“五月天的歌”数据标注的过程:
在未标注区域中找到所有五月天的歌的声音数据,并勾选图片左上的小勾√
勾选完之后在右侧标签名处,输入“五月天的歌”点击确定。
即可实现一次标注。
我们用这样的方法,依次把未标注数据中
1.五月天的歌
2.张杰的歌
等类别声音数据全部标注出来。
待未标注数据全部标注之后,在已标注处就是这样的页面:
右侧共2个标签,左侧的20个声音数据均已标注。
5
5.1自动训练,生成模型
本次实验共标注了20个声音数据,标注完成后,点击右侧的“开始训练”
点击开始训练,设置训练参数,此处默认即可:
单击“确定”开始模型的自动训练。深度学习训练时间相对较长,建议用户耐心等待。如果关闭或退出此页面,系统仍然在执行训练操作。
训练完成后,用户可以在界面中查看训练详情,如 “准确率”“召回率”“精确率”“F1值”等
召回率:被用户标注为某个分类的所有样本中,模型正确预测为该分类的样本比率,反映模型对正样本的识别能力。
精确率:被模型预测为某个分类的所有样本中,模型正确预测的样本比率,反映模型对负样本的区分能力。
准确率:所有样本中,模型正确预测的样本比率,反映模型对样本整体的识别能力。
F1值:F1值是模型精确率和召回率的加权调和平均,用于评价模型的好坏,当F1较高时说明模型效果较好。
6
6.1将模型部署上线为在线服务
在“模型训练”页签中,待训练状态变为“已完成”,单击“版本管理”区域中的“部署”。
在弹出的部署设置对话框中,选择“计算节点规格”,设置“自动停止”功能,单击“确定”开始将物体检测模型部署上线为在线服务。
如果选择免费规格,则不需要设置“自动停止”功能,1小时之后自动停止。
启动部署上线后,系统自动跳转至部署上线页面。此页面将呈现模型部署上线的进度和状态。
部署上线将耗费较多时间,请您耐心等待。
部署完成后,版本管理区域的状态将变更为
“运行中”
7
7.1发起检测
模型部署完成后,用户可添加声音数据进行检测,在“部署上线”界面,选择状态为“运行中”的服务版本,在“服务测试”区域单击“上传”检测图片进行检测。
下面我们就来看看训练出来的模型,是否可以准确识别“五月天的歌”和“张杰的歌”
在箭头指的地方即可看见检测结果,可以说利用ModelArts平台训练出来的模型检测效果是很棒的。
测试1
测试2
测试3
我们试试用另外两首“五月天”和“张杰”的歌,测试一下声音模型是否还能准确识别:
五月天-《玫瑰少年》
测试4
张杰-《星星》
测试5
从检测结果来看,可以说利用ModelArts平台训练出来的模型检测效果是很棒的。
即使换了偶像的另外一首歌,模型也能准确识别出是哪个偶像的声音。
至此实验全部完成。
最后大家使用的云端资源记得全部删除或停用,如对象存储服务创建的OBS桶,文件夹;ModelArts创建的数据集,部署的模型等都需要删除或停用,并停用访问密钥,以免造成不必要的花费。
[华为云ModelArts]带给我的记忆不止是人性化,智能化,普众化。更有很多吸引人的AI技术。
如您对本系列实验感兴趣,可点击下方[阅读全文]活动链接,参加即将于5月18日开始的
《2020|华为云AI实战营》
课程主要内容包括图像分类、物体检测、图像分割、人脸识别、OCR、视频分析、自然语言处理和语音识别这八大热门AI领域的基础知识、经典数据集和经典算法的介绍,每章课程都是实战案例,模型训练、测试、评估全流程覆盖,配合代码讲解和课后作业,帮助您掌握八大热门AI领域的模型开发能力。
与华为云技术专家和全国华为云AI爱好者们一起领略华为云AI魅力,让你轻松Get AI技能。更有大量华为周边奖品等待着您。
风里雨里,华为与我,在等你!
华为,中国骄傲!中华有为!
往期回顾
【玩转华为云】这个夏日,我与华为云青年班AI实战营的遇见
武汉加油,中国加油!
欢迎各位读者在下方进行提问留言
☆ END ☆
你与世界
只差一个
公众号
扫描上方二维码,获取千元“编程学习资料”大礼包
【玩转华为云】手把手教你利用ModelArts识别偶像的声音相关推荐
- 【玩转华为云】手把手教你利用ModelArts实现人脸年龄预测
本篇推文共计2000个字,阅读时间约3分钟. 华为云-华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器.云数据库.云安全等云计算服务,软件开发服务, ...
- 【玩转华为云】手把手教你利用ModelArts实现垃圾自动分类
本篇推文共计2000个字,阅读时间约3分钟. 华为云-华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器.云数据库.云安全等云计算服务,软件开发服务, ...
- 【玩转华为云】手把手教你利用ModelArts实现数据集的图像标注
本篇推文共计2000个字,阅读时间约3分钟. 华为云-华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器.云数据库.云安全等云计算服务,软件开发服务, ...
- 华为表哥手把手教你利用Jenkins持续集成iOS项目,教不会我花式拉翔!!!
手把手教你利用Jenkins持续集成iOS项目: 前言 众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段.用户们都是很挑剔的.如果一个公司的推广团队好不容易砸了重金推广了一个APP ...
- 【玩转华为云】手把手教你用Modelarts实现猫狗数据集的智能标注
本篇推文共计2000个字,阅读时间约3分钟. 华为云-华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器.云数据库.云安全等云计算服务,软件开发服务, ...
- 手把手教你利用 python 爬虫分析基金、股票
手把手教你利用 python 爬虫分析基金.股票 文章目录 手把手教你利用 python 爬虫分析基金.股票 第一步:基金数据爬取 第二步:股票增持计算 第三步:好股基金选取 桌面程序 exe 从前大 ...
- jade怎么查计算机用户名,干货 | 黄继武老师手把手教你利用Jade进行物相检索
原标题:干货 | 黄继武老师手把手教你利用Jade进行物相检索 前言 Jade是一个32位Windows程序,用于处理X射线衍射数据.除基本的如显示图谱.打印图谱.数据平滑等功能外,主要功能有物相检索 ...
- 华为云计算机玩游戏,华为云电脑到底能不能玩游戏?体验一下绝地求生游戏效果...
华为云电脑到底能不能玩游戏?华为云电脑说白了其实就是一个整合了云桌面服务系统的APP应用.可以下载在手机和平板上使用.可以兼容windows系统生态下的所有应用软件,使用基本和Windows系统一样. ...
- 华为云计算机玩游戏,华为云电脑玩游戏怎么样?华为云电脑玩游戏卡吗?
华为云电脑本质上就是一台个人电脑,当然可以玩游戏啊.我玩一些小型的在线游戏,QQ斗地主,四川麻将,体验还不错. 但是大型游戏,3D游戏等,需要GPU显卡的支持,2018年的时候华为云电脑还没配置GPU ...
最新文章
- 9000亿投资浪费在数字化转型,罪魁祸首在DevOps?
- 面向Java应用的快速Web服务支持工具 - Netrifex
- C++万能头文件#include“bits/stdc++.h”
- HALCON示例程序classify_image_class_knn.hdev使用KNN分类器对多通道图像进行分割
- 鸿蒙系统的全面开源,华为:打造全球的操作系统,鸿蒙今日全面开源!
- 图像识别:利用KNN实现手写数字识别(mnist数据集)
- mysql系列之6--------使用第三方工具-percona来备份mysql和恢复
- 3 天开发物联网应用!腾讯云 IoT 超级小程序来了
- Python数据的精度
- 怎么查看文件的MD5码
- 【C++】黑白矩阵(美团)
- 手把手教你用FineBI做数据可视化
- HTTP GET 请求在请求体中带参数的问题
- 最便捷的港股/A股/美股实时行情API【免费-免费-免费滴,已应用到策略中】
- widget安卓桌面插件初步使用
- 网上订餐系统java论文_网上订餐系统的毕业设计
- Android10的GPU呈现模式分析在哪?
- 计算网络节点的平均度
- 微信小程序全栈开发实践 第二章 微信小程序组件介绍及使用 -- 2.9 页面链接组件,如何自定义一个导航栏?
- 原子性、可见性、有序性解决方案