使用机器学习方法来训练模型,使用训练得到的模型来预测语音数据,进而得到识别的结果文本,这是实现语音识别产品的一般思路。

本文着重介绍通用语音识别产品对于数据的诉求。

对数据的要求

训练集

相关要求,如下:

  • 地域,需要覆盖使用人群所在的地域,且数据的比例适中。
  • 口音,需要覆盖典型的口音。
  • 年龄,从18~60,覆盖各年龄段,且数据的比例适中。
    • 很多国家对未成年人有非常严格的保护措施,因此收集未成年人的数据比较困难。
    • 未成年男性的声音和青年女性的声音,从生理角度存在一定的相似度,这给质量控制增加了复杂度和相应的工作量。
  • 性别,男、女,比例适中。对于特定的语种,这个要求很难达成,比如某些严格执行教规的国家,很难采集到女性的声音。
  • 录音条件。
    • 一般要求静音,近场,10秒以内的短句,前、后静音不超出1秒。
    • 假如业务场景要求模型具备一定的搞噪能力,则需要增加对应场景的数据。
  • 母语人群提供的数据,其比例不低于某限定值。

测试集

相关要求,如下:

  • 数据的特征,接近应用场景。
  • 数据量适中,可以支撑功能和性能测试。

获取数据的方法

训练集

可行的方法有:

  • 采集开源训练数据集。这类数据通常用于研究,因此数据质量相对可控,唯一的问题在于数量较少,直白的说,用来写论文也许够用,但在工业强度下应用,则远远不满足要求。
  • 采购商业数据。数据公司可以通过如下方式收集数据:
    • 按照要求在指定的地域、寻找符合要求的人来录制语音数据。
    • 采用转包的方式,将任务包交给当地有资质的公司来收集数据。
    • 采用众包的方式,收集语音数据。
  • 自行采集数据。类似数据公司的操作方式,可以有如下方式:
    • 按照要求在指定的地域、寻找符合要求的人来录制语音数据。
    • 采用众包的方式,收集语音数据。

难点在于:

  • 交付周期长。收集数据的操作,从提出诉求到最终收到数据,中间耗时良久,进度基本不可控。
  • 质量不可控。语音数据没有比较好的手段可以实现自动化检查,因此需要花费相当的人力来整理、清洗数据,剔除质量差或者不满足要求的数据。

测试集

可行的方法有:

  • 客户提供带有标注的测试集。
  • 客户提供测试集的获取方法,交付团队按照要求采集数据用于测试。
  • 客户提供测试集的标准,交付团队按照要求自行准备数据。

注意:测试集用于验证模型的有效性,为保证公平性和有效性,测试集中的数据,绝对不允许作为训练集来使用。

参考资料

ASR项目实战-数据的更多相关文章

  1. Spark大型项目实战:电商用户行为分析大数据平台

    本项目主要讲解了一套应用于互联网电商企业中,使用Java.Spark等技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为.页面跳转行为.购物行为.广告点击行为等)进行复杂的分析.用统计分 ...

  2. 【Rsync项目实战】备份全网服务器数据

    [Rsync项目实战]备份全网服务器数据 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转 ...

  3. 【NFS项目实战二】NFS共享数据的时时同步推送备份

    [NFS项目实战二]NFS共享数据的时时同步推送备份 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品, ...

  4. Python Django CMDB项目实战之-2创建APP、建模(models.py)、数据库同步、高级URL、前端页面展示数据库中数据

    基于之前的项目代码来编写 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页index页文章页面 现在我们修改一个文章列表是从数据库中获取数据, 下面我们就需 ...

  5. webpack+vue项目实战(四,前端与后端的数据交互和前端展示数据)

    地址:https://segmentfault.com/a/1190000010063757 1.前言 今天要做的,就是在上一篇文章的基础上,进行功能页面的开发.简单点说呢,就是与后端的数据交互和怎么 ...

  6. python操作三大主流数据库(14)python操作redis之新闻项目实战②新闻数据的展示及修改、删除操作

    python操作三大主流数据库(14)python操作redis之新闻项目实战②新闻数据的展示及修改.删除操作 项目目录: ├── flask_redis_news.py ├── forms.py ├ ...

  7. 【Rsync项目实战一】备份全网服务器数据

    目录 [Rsync项目实战]备份全网服务器数据 [企业案例] 1.1 环境部署 1.2 开始部署backup服务器:Rsync服务端过程: 1.3 开始部署nfs01服务器:Rsync客户端过程: [ ...

  8. (转载)Android项目实战(二十七):数据交互(信息编辑)填写总结

    Android项目实战(二十七):数据交互(信息编辑)填写总结   前言: 项目中必定用到的数据填写需求.比如修改用户名的文字编辑对话框,修改生日的日期选择对话框等等.现总结一下,方便以后使用. 注: ...

  9. 【java】itoo项目实战之大数据查询之使用 new map 优化hibernate之级联查询

    在我的上一篇博客<[java]itoo项目实战之hibernate 懒载入优化性能>中,我曾提到过学生数据有2万条,查询数据十分的慢,这是让人非常受不了的事情.看着页面进度条一直转着圈圈, ...

  10. 一文彻底搞懂BP算法:原理推导+数据演示+项目实战(上篇)

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 反向传播算法(Backpropagation Algorithm, ...

随机推荐

  1. windows10 jdk下载及环境配置

     一.环境准备 windows10 系统 jdk 各种版本(配置大同小异) 二.下载并安装jdk 下载地址:http://www.oracle.com/technetwork/java/javase/ ...

  2. 【译】ASP.NET Core在 .NET Core 3.1 Preview 1中的更新

    .NET Core 3.1 Preview 1现在可用.此版本主要侧重于错误修复,但同时也包含一些新功能. 这是此版本的ASP.NET Core的新增功能: 对Razor components的部分类 ...

  3. oracle clob字段信息读取,不限字符长度

    在项目中,经常需要在plsql中查询clob的内容,提供以下两种方法: 第一种,oracle常规函数,限制文本在4000以内 select dbms_lob.substr(sql_text) from ...

  4. 第一次git上传的完整流程

    第一次git上传的完整流程 使用git简单命令上传代码push到远程仓库 + 简单介绍了一个.git文件结构. 代码上传到gitee和github流程一样的,不过你上传到github可能网不行失败,所 ...

  5. 爬虫系列——selenium

    文章目录 一 介绍 二 安装 三 基本使用 四 选择器 五 等待元素被加载 六 元素交互操作 七 其他 八 项目练习 一 介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决r ...

  6. About Info-ZIP

    LATEST RELEASES: Zip 3.00 was released on 7 July 2008. WiZ 5.03 was released on 11 March 2005. UnZip ...

  7. Nuxt.js 生成sitemap站点地图文件

    Nuxt.js 生成sitemap站点地图文件 背景介绍 ​ 使用nuxt框架生成静态文件支持SEO优化,打包之后需要生成一个 sitemap.xml 文件方便提交搜索引擎进行收录.官网有提供一个插件 ...

  8. CF1368B

    题目简化和分析: 因为要求长度最小,所以我们每个字符就应该发挥最大的价值,不会有没有作用的字符. 设有 \(x_1\) 个 \(c\) ,\(x_2\) 个 \(o\) ,\(x_3\) 个 \(d\ ...

  9. 【XXE漏洞】原理及实践演示

    一.原理 XML是用于传输和存储数据的一种格式,相当于一种信息传输工具,其中包含了XML声明,DTD文档类型定义.文档元素. XXE是xml外部实体注入漏洞,发生在应用程序解析XML输入时,没有禁止外 ...

  10. CMD和AMD理解

    #AMD <br>1.AMD就是Asynchronous Module Definition,中文名是异步模块定义的意思.<br>2.AMD解决两个问题:解决依赖.异步加载&l ...