50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

音频内容理解的关键技术

  • 2019-05-31
  • 本文字数:2623 字

    阅读完需:约 9 分钟

音频内容理解的关键技术

为什么要使用机器来理解音频内容呢?一个重要的出发点就是在大量数据存在的情况下,由人来完成音频内容的理解是一件较为困难的事情,在图片和文本处理方面,快速理解尚有一定实现的可能,古代有一个形容人记忆力很好的成语叫做走马观碑,描述一个人骑着快马路过一个石碑,看到石碑上密密麻麻的小字一瞬间就能够全部记下来。但是对于音频与视频这种内容,即使在加速的情况下也需要一定的时间来听完、看完音频和视频内容才能够进一步理解它。如果采取人力处理这些问题会遇到困难,我们就可以借助于机器辅助人来进行处理。


机器在理解音频的过程中需要理解哪些内容呢?就需要我们来分析场景问题。



1. 内容安全: 在 18 年的时候,红极一时的一名主播因为在直播过程中发表一些不当的言论而遭到封杀。同样的案例还有因主播在直播过程中发表涉政相关的言论而被封杀。今年是建国 70 周年,很多境外的反动组织为了扩散他们的言论在某些直播平台或者社交平台散播宣传音频或者视频。他们通常用录音机等播放设备将提前录制好的音频和视频连续不断的进行播放,这是一个典型的社交问题。此外,直播中还存在较多的色情问题,包括视频、图像方面的色情,也包括音频方面的色情。有时也会有广告导流行为,所谓广告导流就是在某一个直播平台上,大家在音视频交流过程中有人发类似于我们私下加个微信聊吧,这样这个平台的流量就会被导走。我们的工作就是要在音频中识别出这些行为,为这些行为打上标签,让运营平台知道这些音频中存在这样或者那样的问题。以上所分析的问题完全属于截流问题。


2. 内容运营: 内容理解的优势在于可以进行内容推荐,一个典型的例子就是在交友的社交平台上,如果通过声音识别出是一位大叔,就可以给他推荐一位萝莉,如果声音识别是一位御姐,就可以推荐给她一个正太,这样就有希望延长他们之间的交流时间。



内容理解核心的解释就是将非结构化的内容结构化,其中重要的途径是标签,通过各种手段为音频或者视频打上各种标签,方便后面去做各种处理。比如拦截和推荐。


3. 解决方案: 对于上述问题,我们的解决方案主要包括四个步骤:


  • 音频切分:在得到原始音频之后首先对音频进行切分,将长语音切分为多个短语音

  • 音转文:将语音转换成文字

  • 识别:对文字和音频分别打标签

  • 合成:汇总片段结果,并给出最终的整条语句或者整个视频。



内容理解的过程中存在一定的困难,比如远场识别,对于直播来说识别过程中最大的困难是混响和噪声。主播在直播过程中为了吸引更多的人观看通常会唱歌,唱歌一般都会加混响来使歌声听起来有绕梁三日的感觉。但是这种情况就会对语音识别产生较大的影响。此外,我们在使用语音搜索和语音输入法的过程中为了获得更加正确的结果会故意放慢说话速度,表达相对更加清晰。而直播过程中为了获得良好的互动,说话都会比较随意。唱歌也是一个比较难解决的问题,在语音识别建模的过程中,很多情况下都是使用带音调的音素来进行建模,但是在唱歌的过程中语音的声调会发生变化。这样也会引起识别不准确的问题。目前已经有很多有效的方法来解决这些问题。



下面介绍下解决上述问题的相关工作,首先是音频切割(VAD),这种技术是比较主流的一种方法,先通过深度学习 DNN 来预测出一段音频是静音还是非静音。然后通过加窗得到最终的结果。



在语音转写文字的过程中,采用 DNN+LSTM,然后使用 lattice-free MMI 方法训练现有模型,我们使用的语言模型是 ngram 方式。这是一个相对比较主流的框架。目前 ASR 主要解决的是把音频中的文字提取出来。



前面我们提到还有一部分语音识别不能通过转文字获得。比如是否有音乐,播放音乐的名称,是否存在色情声音等等。我们采用声音分类的框架来解决这个问题。首先需要对音频进行数据增强,因为在音频分类条件下数据的 label 并不均衡,特别是存在一些小众的声音,非常稀少,所以需要对这些数据进行增强。我们使用 TDNN+bi-GRU+Attention 框架。



上述第一步将音频转换成文字,第二步将分类信息标签集,第三步需要对转换出来的文字进行文字识别,文字识别主要包括文字的分类:基于一段文字判断它所属的类别,比如这段文字是不是属于色情话题或者是带有辱骂性等。模型不能完全解决这方面的问题,还需要有关键词类比。我们给出的框架通过 fasttext 模型或者一些传统的机器学习算法来进行模型分类,同时联合关键词信息进行处理。在使用模型训练之前首先对文本进行预处理,比如分词、归一化等。



最后一步是行为识别,例如境外反动组织要去散播反动言论会在平台上开很多账号,对于每个账号不会雇佣不同的人去宣传言论,而是使用录制好的音频来播放相同的言论内容,这样他的行为就会有一定的聚集性,在这种设备或者 IP 上的具体行为可以通过一个逻辑回归模型来打分。通过分数判断这个行为是不是存在问题。行为识别也可以检测出一些有问题的内容。



下图是我们整个框架的架构图,将上述我们分析的各个模块整合在一起。在模型层面包括 ASR 模型、文字相关模型、声音相关模型、行为相关模型、名单库等。通过引擎层输出各种各样的分数,最后我们有一套规则,规则引擎会对所有模型层面和画像层面输出的结果进行汇总,最终得到结论。



下面是我们真实的一个价值体现,某直播平台同时采用用户举报、人工抽审、数美智能审核三种方案监测平台直播内容。用户举报平均每天抓出 1 个违规音频,人工抽审平均每天抓出 20 个违规音频(审核团队 30 人),数美智能审核系统平均每天抓出 160 个违规音频,同时数美智能审核系统反馈音频转文字结果、自动记录违规音频位置、发生时间等信息。


作者介绍

齐路,数美科技资深 AI 专家,南开大学硕士毕业,在人工智能领域有 10 年一线实战和团队管理经验。先后就职于百度、360,现任数美科技语音 & 文本产品负责人。

关于数美科技

数美科技成立于 2015 年 6 月,是全球领先的人工智能反欺诈解决方案服务商,被国家认定为高新技术企业。基于人工智能技术,聚焦反欺诈,独创“全栈式实时反欺诈”解决方案,全场景“一站式内容安全“解决方案,通过领先的 AI 内容识别、AI 反欺诈技术,在众多场景帮助企业规避业务风险,为企业数字化业务发展保驾护航。


目前已覆盖中国、北美、东南亚、中东等 50 多个国家及地区,每日反欺诈访问量 100 亿,为金融、零售、电商、视频、直播、音频、社交、媒体、航旅、出行、教育、地产等众多行业提供服务,与中国银联、OPPO、金山云、百度视频、滴滴出行等数千家知名企业达成合作。


本文来自 DataFun 社区


原文链接


https://mp.weixin.qq.com/s/U6cv8JuBHEhYiv8zmvGx0A


2019-05-31 08:009586

评论

发布
暂无评论
发现更多内容

Go: g0, 特殊的goroutine

陈思敏捷

原理 Go 语言

k8s上运行我们的springboot服务之——cloud gateway

柠檬

k8s Spring Cloud

你是个伪工作者么?

池建强

个人成长 伪工作者

谈谈控制感(8):元控制感

史方远

职场 心理 成长

区块链2.0--以太坊概述

皮卡丘的猫

《零基础学 Java》 FAQ 之 11-为什么构造方法中调用重载的构造方法必须得是在第一行

臧萌

Go: 应该使用指针还是结构体副本?

陈思敏捷

struct 原理 pointer Go 语言

利与弊-传统框架要不要部署在Serverless架构上

刘宇

Serverless Web

《零基础学 Java》 FAQ 之 12-理解引用

臧萌

Java

工作=投资=创业?

二鱼先生

个人成长 工作思路 工作方式 创业心态 创业者

圆圈正义 - 读后感

石云升

读书笔记 法律 公平 现实

Mysql增量更新-ON DUPLICATE KEY UPDATE

BerryMew

MySQL 增量更新 ON DUPLICATE KEY UPDATE

Go: Trace包探秘

陈思敏捷

原理 Go 语言

prometheus中honor_labels配置项的源码分析

陈思敏捷

Prometheus Go 语言

Tekton 的工作原理

张晓辉

Kubernetes cicd 云原生

《零基础学 Java》 FAQ 之 10-Scanner里nextInt的小坑

臧萌

Java

游戏夜读 | 怎么让游戏跑起来?

game1night

我的编程之路 -5(停滞)

顿晓

网络编程 操作系统 编程之路 停滞 三年

我是如何拿下PMP认证和系统架构设计师考试的?

Nick

JUC整理笔记一之细说Unsafe

JFound

Java

Flask-SQLAlchemy 多表对单模型

Leetao

Python flask 编程语言 flask-sqlalchemy

new() 和 make的区别

陈思敏捷

源码 源码分析 Go 语言

除了直接看余额,谁更有钱还能怎么比(一)

石君

零知识证明 多方计算 同态加密

RocketMQ - 什么是RocketMQ

Java收录阁

RocketMQ

Java环境搭建

编号94530

Java java8 Java环境 环境安装 jdk安装

python实现·十大排序算法之快速排序(Quick Sort)

南风以南

Python 排序算法 快速排序

2020 年 5 月 23 日 Java 集合专题

瑞克与莫迪

Java

云直播平台的选型与使用

音视频专家-李超

python实现·十大排序算法之插入排序(Insertion Sort)

南风以南

Python 排序算法 插入排序

看完这篇 Session、Cookie、Token,和面试官扯皮就没问题了

苹果看辽宁体育

https

其实你就是我羡慕的别人

小天同学

个人成长 感悟 日常思考

音频内容理解的关键技术_安全_DataFunTalk_InfoQ精选文章