专栏首页媒矿工厂机器学习创建个性化、快餐式媒体内容

机器学习创建个性化、快餐式媒体内容

摘要:

付费电视服务在与运营商之外的第三方通过互联网提供(Over-The-Top,OTT)的视频点播(Video-on-Demand,VoD)服务的竞争中逐渐处于劣势,尽管电视服务运营商拥有海量的媒体内容,但是后者利用短视频和刷剧(binge-watching)的功能可以更好地迎合如今观众的需求。为了解决这个问题,一些电视服务运营商通过人工将线性的视频内容剪成视频点播的形式向用户提供简短的内容,但这通常不可行也不可扩展。而且研究表明,用户尽力去发现的新内容总是令人失望的。近些年来,机器学习算法尤其是深度学习因其在目标识别和语音识别任务中可以匹敌甚至超过专业人士的表现得到了极大的普及。

本文主要根据Evangelos Stromatias等人IBC2018文章 “ Using Machine Learning To Create Personalised Snackable Content” 来介绍荷兰Media Distillery机构搭建的一个平台,其利用最先进的机器学习算法来实时分析电视和视频点播中数千小时的多语种多媒体内容,进而获取丰富的元数据,然后根据用户的喜好来推送个性化的快餐式内容。

引言

在过去十年里,消费者的观影习惯发生了翻天覆地的变化。电视运营商和广播公司尽管能够生产大量的原创内容,但在市场竞争中正逐渐让位于互联网视频点播服务的第三方供应商,尤其是后者能够提供短视频和刷剧(binge-watching)的服务。而且数据表明年轻一代花费了一半的时间消费视频点播内容,从2010年到2017年增长超过100%。为了与OTT VoD 服务供应商竞争,电视服务运营商尝试人工将视频内容剪成短片推荐给用户,但这是个昂贵又耗时的过程。

很有趣的是,尽管电视服务运营商和OTT VoD服务运营商有许多差异,但他们都面临着相同的问题:观众发现内容的搜索仍旧面临着巨大的挑战。最近的报告显示观众在内容搜索上每天平均要花费一小时,而且花费的时间预计会随着我们可以不断获取越来越多的视频内容而不断增加。大约70%的观众更喜欢点播和刷剧(binge-watching)的服务而不是线性的电视内容。同时,研究表明提供搜索服务和推荐功能会提高观众的参与度。这些调查研究说明内容的分割和推荐必须以自动化的方式来运行以保证能够应对可以获取的大量视频内容并满足消费者的需求。

深度学习在人工智能领域作为机器学习的一个分支,已经可以成功的用来解决以前认为只能由专业人士来完成的认知任务,因此在过去十年里获得了极大的推广。荷兰Media Distillery建立的多媒体内容分析平台,利用机器学习算法实时分析数千小时的视频和音频内容。作者使用了一部分算法来完成将语音转化为文字,识别人脸,鉴别目标种类,检测文本和商标的工作,通过这些算法可以在视频和音频内容中理解和搜索相关信息并生成丰富的元数据。

在文章中,作者描述了在元数据提取方面的发展以及研究新的基于详细视频理解的媒体应用,例如相关内容搜索,内容为主的推荐系统和快餐式内容。此外,作者详细介绍了三个利用所述平台的使用案例。

相关工作

科技巨头例如Google、Amazon、IBM和Microsoft 拥有他们自己的云平台来提供随时可以调用的机器学习方法,例如:人脸识别、语音识别和机器翻译。但是这些现成的机器学习方法有几个缺点使得它们无法适用于特定的任务,包括内容理解。其中几个缺点包括:(a)通信开销;(b)费用昂贵;(c)无法处理一些特定形式(如:隔行扫描)的数据;(d)很难根据用户需求定制。由于这些问题,许多公司针对个性化内容推荐系统发展自己内部的解决方案。

YouTube 在2009年介绍了他们针对自动视频描述(video captioning)推出的自动语音识别(ASR)系统。这些自动生成的字幕使得YouTube能够在视频中搜索并向用户推荐特定片段,这种片段被称为“snippets“。YouTube现在的个性化推荐引擎由一系列机器学习算法组成,数据显示用户在YouTube上观看视频时间的70%是由于他们的个性化推荐引擎的关系。

Spotify 在为用户推荐音乐内容上使用多种机器学习算法。这些算法包含了从使用了15亿用户生成的播放列表的协同过滤算法到在有关艺术家的博客和新闻中应用自然语言处理(NLP)的算法。而且,Spotify试用了利用深度学习(DL)模型的基于内容的音乐推荐系统,这个推荐系统利用的是歌曲自身的原始音频信号而不是提供的歌曲元数据。

Netflix 的内容推荐流程包含了多种机器学习算法,而且他们也利用机器学习以个性化的方式来为用户推送内容。他们报道称80%的内容消费来自自身的推荐系统而且剩下20%来源于他们的搜索服务。据他们估计每年由于个性化和推荐系统的综合影响可以节省超过10亿美元。这些发现证明了个性化内容推荐的重要性。

个性化的快餐式内容

Media Distillery的目标是以从完整的音视频内容提取的简短片断(我们称之为快餐式内容)形式来创建和提供少量的内容,以此来迎合一些拥有几分钟的空闲时间而且已经知道自己想查看哪些内容的用户,或者那些想要花费最少时间寻找相关内容的观众。而且Media Distillery主要想利用的资源是广播公司和电视运营商拥有的大量的完整音视频广播内容。

有许多方法可以用来从完整的媒体内容中生成快餐式内容。快餐内容根据用户案例和视频类型也许有着不同的含义。例如,一个消费广播新闻的人也许认为快餐内容就是不同热议的新闻故事;而对于一家关心自家的品牌在一则无线广播中被提到了多少次的机构,快餐内容可能就是整个无线广播中所有提到他们品牌的片段。所以生成快餐式内容的一个重要因素就是定义生成快餐的标准,这就要求提取丰富的元数据。

从广播内容中提取元数据

用来生成元数据的方法众多,作者介绍几种代表性的方法并且与目前最先进的算法作了对比。文章中主要关注的算法是那些由于过于复杂或者计算密集在以前是无法在实际操作中应用的算法。文章中分享了作者研究中的一些初步发现。

人脸识别

人脸识别算法能够通过给定数字图像或者视频帧中的人脸鉴定一个人的身份。学术研究中最先进的模型主要侧重于人脸认证(face verification)和人脸身份鉴别(face identification),通过利用LFW测试集上标注的人脸来评估性能。人脸认证(face verification)主要用来判断给定的两张人脸照片是否属于同一个人,而人脸身份鉴别(face identification)是将待查询的人脸与数据库已有人脸作比较来确定被查询人脸的身份。然而对于文中的使用案例,人脸模型应该能够同时检测被查询的人是否是未知的(不属于希望检测到的人脸数据集)并且能够为每个被检测的人脸提供身份标签。

图1展示了文中的人脸识别流程,包含的子系统有:人脸检测,人脸坐标点提取和人脸对齐,一个可以生成被查询人脸描述符(特征向量)的深度卷积神经网络,最后是我们专有的人脸分类器。其中最重要的组成部分是深度神经网络。

图1 人脸识别流程

对于人脸认证(face verification)和人脸身份鉴别(face identification),图1中face embedding是用来检测两个人脸是否属于同一个人,通过距离度量方法(如欧式距离或者余弦相似度)来对比两张人脸的face embedding的距离计算相似程度。

文章中采用的深度神经网络虽然是基于FaceNet,但并没有使用原来文章采用的Triplet Loss,而是采用了Centre Loss,通过Centre Loss 可以为每一类学习一个类中心同时约束同一类人脸深层特征到类中心的距离。文章人脸模型的训练利用了MS-Celeb-1M数据集,这是目前最大的标注人脸的公开数据集,包含了10万个人总共1000万张人脸图片。在训练过程中,作者采用了诸如随机旋转和翻转的多种数据增强方法。训练得到的模型在LFW测试集上达到了99.2%的准确率,而目前最好的模型是在2.6亿张人脸的数据集上训练得到的,准确率达到99.63%。测试结果参见表1:

表1 人脸模型性能对比

尽管在准确率上文章中的模型与最好的人脸模型还有一定差距,但是作者发现那些准确率更高的模型在广播数据中并不一定表现得更好。

由于作者在人脸识别中感兴趣得并不是人脸认证(face verification)和人脸身份鉴别(face identification),所以他们利用想要检测的人的face embedding训练了自己专有的分类器。通过检测不同的个体,用户能够搜索具体人物,而且平台还会提供那个人在视频中出现的片段。

除了人脸识别因照片因素(姿态,光照,遮挡等)所面临的挑战外,由于所采用的数据(广播视频)的自身性质在当前使用案例下还面临着诸如运动模糊和隔行扫描的挑战。在这个问题上作者计划在将来采用数据增广的方法来应对。此外,人脸识别系统只能在未知的视频中识别训练集中出现的人。而开放式的人脸识别可以先判断这个人脸是否是已知的,如果已知然后再去识别具体身份,但目前在这方面的研究还很少。最后,由于可以获得大量的没有标注的视频数据,作者计划采用例如非监督人脸聚类的方式。

自然环境下的文本

这一部分主要解决视觉内容中的文本定位和识别问题。其中的输入图片可以是一个场景(如风景照中标志和广告牌上的文本)或者视频画面上的字幕(如来自电视广播)。这些信息可能对识别视频中发生的事件很有帮助。

文章中文本定位和识别流程由一个文本检测器和文本识别器组成(见图2)。文章中采用的方法参考了Faster-RCNN,采用了在ImageNet上训练的VGG-16网络结构,这是一种非常流行的用来做自然场景下目标分类的卷积神经网络(CNN)。由于作者只是利用这个网络做特征提取,所以去掉了所有的全连接层。VGG-16得到的卷积特征送到一个文本框推荐(text proposal)网络中,这个网络由两个全连接层组成,通过全连接层在特征图上的滑窗为每个特征图滑窗位置上的所有预定义的锚点框(anchor box)输出一系列文本得分(textness scores)和回归得分(regression scores)。

图2 文本定位和识别整体流程

根据文本得分将所有文本推荐框排序,然后将得分最高的n个文本推荐框送到文本检测网络。文本检测网络是一个多层感知器(MLP),用来判断推荐区域是否是文本。最后将所有的单词推荐从原图中裁剪出来送入文本识别网络预测单词图片中所描述字符最可能的序列。文章中采用的文本识别网络是一个编码-解码(encoder-decoder)模型,采用了带有软注意力机制的Gated Recurrent Units (GRU)。

由于大部分用来做文本定位和识别的数据集都很小,而深度学习模型需要大量的数据来避免过拟合,所以最近研究人员建立了两个合成数据集。Synth90k数据集包含900万张合成的单词图片,其中720万张用来做训练集,90万张用来做验证,剩余90万张用来做测试。Synth800k包含80万训练样本。

文章采用Synth800k数据集训练文本检测器并在Street View Text (SVT) 数据集和ICDAR03训练集上微调。对于文本识别网络,作者结合Synth90k和Synth800k总共1200万张图片进行训练。模型总共训练了2个epoch。

为了评估文本检测器,作者计算了SVT 和ICDAR上所有单词的召回率。此外,作者采用从ICDAR03 , ICDAR11, IIIT5K 和SVT裁剪的单词图片来评估文中的文本识别网络。测试结果见表2和表3。对比目前最好的文本检测方法,本文提出的方法用了非常少的建议框(proposals)就达到了可以与之相比的召回率。在SVT数据集上,文中文本检测方法利用400个建议框召回率就达到了93%而M. Jaderberg等人的方法采用了超过1万个建议框才使得召回率达到了97%。在文本识别方面,文中采用的文本识别方法在识别准确率上与目前最好的方法非常接近,但是只需要训练不到1个epoch。而且作者还在迭代更多的epoch来继续训练他们的模型并在广播电视数据上进行微调。

表2 文本检测方法性能评估

表3 文本识别方法性能评估

商标识别

商标识别是指当视频流中出现品牌的商标时能够检测和识别出来。文中的商标识别器能够同时检测和识别商标。这对企业品牌去监控自家的商标在视频中出现了多少次是很有价值的,因为这些信息能帮助他们衡量自己品牌的影响力并改善他们在广告上的投入。文章中商标识别模型是基于在ImageNet数据集上预训练的Faster-RCNN结构,然后将其在他们专有的商标数据集上微调,这个数据集包含六个品牌类和一个背景类(负样本)。模型的平均精度达到98%,平均召回率达到86%。对于文中的使用案例,主要关注的是如何减少假正例(False Positive)的数量,所以要求更高的精度而不是召回率。由于文中采用的数据集因法律原因无法公开,所以无法与现在最好的算法作对比。

快餐生成

前面的章节描述了许多用来生成快餐式内容的技术,这些技术让我们能够从音视频信号中提取大量的元数据。接下来,我们需要从长视频中生成视频片段,而且这些片段应该是连贯的。例如,我们不能在视频中的人物话说到一半的地方把它剪断。为了保证视频片段的连贯,作者使用了视频镜头转换检测器和场景转换检测器。镜头是由单个摄像机捕捉到的一系列没有被打断的相邻帧。场景是一个更高层次很短的片段,对应视频中故事化的部分,是由将检测到的镜头组合成语意连贯的很短的视频片段形成的。这样就可以得到镜头/场景的边界和视频中提取的元数据。假设用户想要看一个名人在视频流中出现的所有片段,通过人脸识别的输出我们可以知道特定人物出现的地方,通过剪切这个人出现地方的最近的镜头/场景的边界,我们可以得到一个片段。这是一个具有挑战性的任务,因为尽管镜头有清晰的定义但如何定义一个场景却具有高度主观性。此外,只使用视频流还有其它的局限性,因为会存在这样的情况,视觉上的事物已经改变但是在音频通道人物依旧在谈论同一个话题。在以后的工作中,作者准备探索如何结合基于音频的分割与视觉上的分割来解决这个问题。

内容推荐

为了个性化地向用户推荐音视频内容,经常用到推荐引擎。许多电视服务供应商使用现成的基于内容的推荐系统,这种推荐系统非常依赖元数据,因为这是它们仅有的关于内容的信息来源。在多数情况下,从这种元数据不足以得到正确的推荐因为它要么完全丢失要么没有详细描述内容,这使得一些运营商必须得有为推荐系统服务的编辑团队。通过使用文中的内容理解技术,既可以自动生成广泛且一致的元数据,也可以生成快餐程度的内容。

文中推荐内容快餐的方法除了使用常规的特定形式的元数据还利用提取到的元数据。推荐引擎能够根据通过学习用户在关注群体,兴趣,品牌和事件等方面得到的标签,结合检测到的主题,人脸,商标和目标来推荐快餐内容。

过去、现在和未来的使用案例

快餐式内容(Snackable Content)下的技术能够以各种方式创造媒体应用程序。当自动地生成片段并且理解其中内容成为可能的时候,许多新的使用案例将变得可行,因为它们不再依赖手工劳动。文中作者列举了三个使用案例。

Filmstrip

Filmstrip在向用户推荐内容得时候将视频的视觉特性考虑在内。大部分视频服务只会为每部视频展示一张单一的缩略图,而且在不同剧集中通常都是用的同一张图片。单张缩略图很难为用户提供即将观看的视频内容的线索。Filmstrip旨在通过挑选每个镜头里具有描述性的关键帧来为整个视频生成一个视觉摘要。这些关键帧根据镜头的长度被剪出来然后拼成一张非常大的图片(效果见图3)。用户能够通过来回滑动与Filmstrip交互,从而可以让用户在视频中搜索感兴趣的内容。

Filmstrip的一个初始版本是由TNO和荷兰新闻广播公司NOS联合开发和评估的。这个概念应用到NOS网站的新闻公告上。参与测试的用户受邀参加了一项调查,这项调查总共调查了91个受访者。64%的用户表示他们很喜欢这个概念而且想要继续使用它来观看NOS的刊物内容。60%的用户认为这个概念产品对观看其他内容也是有帮助的。

图3 Filmstrip视觉图

个性化播放列表

Spotify的Daily Mix和YouTube的Autoplay在保持用户对他们服务的喜爱方面一直都做的很好。他们分别创建个性化的音乐和视频播放列表,为用户提供舒适轻松的使用体验。几乎不需要任何交互来保持消费的内容。快餐式内容可以让电视服务供应商和广播公司在他们所服务的内容上创造相同的用户体验。

到目前为止,Media Distillery已经贡献了建立在这种使用案例下的两个概念验证:Smart Radio和NewsGenius。Smart Radio是最近同荷兰的一家新闻广播电台一起开发的。目标是自动生成涵盖用户感兴趣主题的个性化播客和新闻数据流。里面的内容是从常规的新闻广播和播客中生成,而且基本上只包含音频。Smart Radio旨在将用户线性的收听体验转变为个性化的点播体验。

NewsGenius意在提供相似的用户体验但是基于的是视频。它根据预先定义的时长(5到30分钟)自动生成一个新闻报道,只包括用户感兴趣的主题。主题的确定通过自主的应用在语音转化成的文本上的主题检测器来完成。关于用户关注主题的偏好是从消费内容中学习得到并且不断地进行调整。为了提供流畅的观看体验,主题顺序以及主题间变化的缓冲内容都是经过仔细选择。

内容发现

电视服务供应商通常在他们的剧集首播,重播和视频点播目录里都拥有大量有价值的内容,但是找出你所要寻找的内容是一项巨大的挑战。爱立信最近发布的报告显示人们每天在搜索相关内容上需要花费51分钟。满足用户的期望需要大量的元数据,尤其随着语音搜索(voice search)不断普及。一个语音命令例如“show me a video of Max Verstappen overtaking Lewis Hamilton”要求深入的内容理解来返回相关结果。如果你现在在大多数电视供应商的平台中搜索“Max Verstappen”,你会得到“0 results found”。

另一种流行的方式去发现内容是通过视频轮播(carousels),是一些在某种程度上相关的推荐内容的(水平)列表。通过使用遥控器或者来回滑动来浏览这些项目既简单又方便。在Netflix上常见的关于视频轮播的例子是“Now popular”, “Recently added” and “Action Thrillers”。通过更好地理解内容,可以生成更具体和可能个性化的视频轮播,涵盖用户关注的主题、人物和其他兴趣点。

结论与未来工作

文章中介绍的服务和基础技术仍然处于早期的发展阶段。Media Distillery计划在以下方面拓展和提高自己的服务。

首先,通过半监督和无监督学习方式加强算法的训练。通过半监督训练方法,只需要关注算法的建议,而无监督学习可以通过结合多种形式(如人脸和文本识别)来实现。

此外,Media Distillery计划改进自动内容分割算法,并且还将其在纯音频训练集上训练来处理音频内容分割。最近还使用了镜头边界(shot boundaries)的特征,这在音频内容中是无法获得的。关于如何得到音频中边界特征的一个初步方法是将音频按语音、静音和音乐(speech/silence/music classification)分割开来。

最后,作者介绍了收集用户反馈信息来全面评估这些服务的重要性。因为Media Distillery 是B2B经营模式,客户主要是电视服务、广播电台的运营商和其他的媒体公司,由于无法直接获取这些公司的内容消费情况,这对衡量算法在这些公司产品上的影响带来一定困难。相反地,例如像Netflix和Spotify这样的公司,当他们想要评估一个新的机器学习模型时,可以随机地在他们的部分用户里作对照实验(A/B testing显著性实验)来判断新的功能是否提高了产品内容的消费,如果证明有效果那么他们就能将新的功能应用到他们的产品上。目前,文章中描述的大部分使用案例只在实验室环境里由公正的技术人员完成测试。而作者的计划不仅是要为具有技术背景的人群提供服务,而且想要改变所有用户发现企业经营内容的方式并提高用户的使用体验。

参考文献

[1] X. Naturel and S. A. Berrani, "Content-Based TV Stream Analysis Techniques toward Building a Catch-Up TV Service," 2009 IEEE ISM.

[2] V. D. Oord et al. “Deep content-based music recommendation” 2013 NIPS.

[3] Carlos A. Gomez-Uribe and Neil Hunt. 2015. The Netflix Recommender System: Algorithms, Business Value, and Innovation. ACM Trans. Manage. Inf. Syst. 2015.

[4] F. Schroff, D. Kalenichenko and J. Philbin, “FaceNet: A Unified Embedding for Face Recognition and Clustering”, 2015 IEEE CVPR.

[5] Wen et al. “A Discriminative Feature Learning Approach for Deep Face Recognition”, 2016 ECCV.

[6] S. Ren et al. “Faster R-CNN: Towards Real-time Object Detection with Region Proposal Networks”, 2015 NIPS.

[7] M. Jaderberg et al. “Reading text in the wild with convolutional neural networks”. 2014, arXiv:1412.5903.

[8] L. Gomez and D. Karatzas, “Textproposals: a text-specific selective search algorithm for word spotting in the wild”. Pattern Recognition, 2017.

[9] Prins M. and Wit J. “Scanning News Videos With An Interactive Filmstrip”. In Adjunct Publication of the 2017 ACM TVX.

本文分享自微信公众号 - 媒矿工厂(media_tech),作者:张恒胜

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-10-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 基于深度神经网络的帧重建以优化视频编码

    本文是来自AOMedia Symposium 2019的演讲,讲者是来自于杭州师范大学的Dandan Ding。本次演讲以AV1为例,主要讲述了使用神经网络做环...

    用户1324186
  • 超高清论坛(UHD Forum)技术指南V2.0

    本文将对UHD-Forum Guidelines v2.0的主要内容做一个综述,在文末会附上文档的目录,具体的文件细节,可以参见上方的链接。

    用户1324186
  • 一些新旧视频质量评价指标

    本文是来自SF VideoTechnology的演讲,演讲作者是 Elecard Group 创始人兼总裁Andrey Pozdnyakov。演讲主要介绍了一些...

    用户1324186
  • 【追求极致】我是如何把easy级别的算法题做成hard级别的。

    2、如果你懂某些算法思想,这道题很简单,如果不懂,那么这道题顿时很难,例如有些需要dp来处理的。

    帅地
  • 最小的k个数

    OPice
  • 冒泡排序、选择排序、插入排序

    冒泡排序:每次遍历后选出最大的元素,每当选出一个下次遍历就排除之前已选的最大元素,因为每次遍历都能定位一个最大元素。

    用户6055494
  • 框架设计(一)

    天天_哥
  • 数据结构Queue

    ​ 栈和队列其实是相同的,只是名字不一样 入栈换成了入队(enqueue),出栈换成了出队(dequeue)。语义 是不同的。入队操作向队尾添加元素,而出...

    lwen
  • 怎样为H5网站创建具有可读性的内容?

    烟台H5网站建设内容的设计不仅仅只是在视觉上给人一种好看的感觉,更应具备可读性的内容。

    畅玩科技
  • [图解] 快速排序

    经典快速排序总是指定数组或者某部分的最后一个元素作为基准值,随机快速排序指定数组或者某一部分中的随机值作为基准值。

    CoderJed

扫码关注云+社区

领取腾讯云代金券