写点什么

美图海量短视频内容分析与检索(二)

  • 2019-11-30
  • 本文字数:977 字

    阅读完需:约 3 分钟

美图海量短视频内容分析与检索(二)

如何有效定义标签体系

我们有一个热门视频池,运营和产品会手动为一些视频打上标签。你可能会说,我们可以拿这部分标签做模型训练。如果我们将业务标签应用于算法会存在哪些问题呢?


一是业务的标签比较抽象,比如可能会制定像搞笑和幽默这样的一些标签。但一个视频是否算搞笑、幽默,无法仅从视觉或声音、语音等一些信息进行准确判定。


举个例子,一个 3 岁的小孩在哭,父母上传的可能会是一个搞笑的视频,如果是 20 多岁或者 50 多岁的人在哭,那就是一个悲伤的视频。


二是训练数据不均衡,上图是我们拿到的一部分业务标签对应的数据量,因为业务人员在定标签的时候不会考虑每个类别是什么样的,所以就会出现训练数据不均衡的问题,这个也会影响算法模型的训练。


另一个问题是类别区分度低。以上图为例,手指舞和自拍,从视觉角度来看没有任何区别,如果训练中强行将其分成两类,也会在训练过程中影响网络模型的学习,会引起一些噪声。


还有一个问题是标签的维度比较单一。通常一个视频,最多给四到五个维度的标签,再多的话,想全面衡量这个视频会变得非常复杂。


我们的解决方法是,以业务标签作为指引,拿我们的视频数据和文本数据(伴随视频的标题、评论相关信息)去提取视频特征、音频特征进行聚类,然后对聚类进行抽象定义,得出相应的视觉标签元素。这个标签元素就是我们用来训练的标签。最后训练标签输出的结果会反过来映射到业务标签,用这种方法定义的标签是多层级多维度的。


如下图所示,视频中是一个女生,视频中的姿态显示为全身,动作是在摇摆,检测到的音乐风格为摇滚,那么可以判断这个视频是一个美女在自拍,而且在跳舞,属于才艺展示,于是生成的标签就是“美女自拍”、“舞蹈”、“才艺”。这就完成一个算法标签到业务标签的映射。

如何提高线上算法模型的迭代更新效率

这里有三个核心问题:快速的数据标注、有效稳定的模型评估机制、算法运行的性能要有保障。


为了进行快速标注,我们也用了一个自动的算法标注,这个算法在无监督和半监督的深度学习的论文中被提到过。我们会预先拿一个通用的数据训练模型,对业务数据进行少量的标注,基于少量的标注数据再训练一个分类器。这个分类器会给其它未标注的进行标注。伴随标签输出会有一些置信度,会把高置信度的数据再拿去进行训练,低置信度的会继续下一次的迭代更新,这个过程会重复多次。这个过程也会根据任务的难度,加入人工的核验和标注。


2019-11-30 22:53954

评论

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

解析 HashMap 源码之基本操作 put

shengjk1

Java hashmap

航运区块链 抗疫危中有机

CECBC

区块链 航运

Elasticsearch学习

张明森

为什么考研,考研能给你带来什么?说说我的感受!

我是程序员小贱

Docker搭建PHP+Nginx+MySQL+Redis

书旅

Docker 镜像 lnmp

翻译: Effective Go (6)

申屠鹏会

翻译 Go 语言

1 学习性能优化的要点

我是程序员小贱

解析 hashMap 源码之基本操作 get

shengjk1

Java hashmap

Apache Mina和Netty的历史

dinstone

阿里、力扣、政采云的15位专家分享前端面试与招聘视角

三钻

面试 大前端

1 时间复杂度总结

我是程序员小贱

这样看mybatis,谁都会分析源码!

诸葛小猿

源码 mybatis mybatis源码

如何学习一个框架?

云起

学习技术先从学会使用搜索引擎开始

我是程序员小贱

troubleshoot之:使用JFR分析性能问题

程序那些事

Java 性能分析 jfr

你生日那天的宇宙什么样子知道?我全部给你吧!

我是程序员小贱

Spring如何选择类构造器

申屠鹏会

翻译 Go 语言

平均负载是什么?

我是程序员小贱

真正的异步API网关Agate

dinstone

Async API Gateway

MEDO 项目开发中遇到的问题汇总

陈皮

MySQL 基准测试

多选参数

MySQL

解析 HashMap 源码概括

shengjk1

Java hashmap

Rust特征与泛型区别点

编号94530

rust 泛型 封装、继承、多态

毕玄大佬的分享以及给我的感悟

白色蜗牛

Java 程序员 技术 职场 架构师

docker入个门

书旅

Docker 容器 Dockerfile

让你起飞的20个Linux命令骚操作

我是程序员小贱

敏捷到底是个什么鬼?

刘华Kenneth

程序员 敏捷 change

高效程序员的45个习惯:敏捷开发修炼之道(1)

石云升

读书笔记 敏捷开发

华为的“少年天才”攀登者,出发向智能存储的“奥林帕斯山”

脑极体

如何隐藏你的数据库密码

Rayjun

安全 服务器

翻译: Effective Go (7)

申屠鹏会

翻译 Go 语言

美图海量短视频内容分析与检索(二)_文化 & 方法_声网_InfoQ精选文章