CN112203122B - 基于人工智能的相似视频处理方法、装置及电子设备 - Google Patents
基于人工智能的相似视频处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN112203122B CN112203122B CN202011080112.4A CN202011080112A CN112203122B CN 112203122 B CN112203122 B CN 112203122B CN 202011080112 A CN202011080112 A CN 202011080112A CN 112203122 B CN112203122 B CN 112203122B
- Authority
- CN
- China
- Prior art keywords
- video
- vector
- processing
- image
- videos
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 45
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 239000013598 vector Substances 0.000 claims abstract description 463
- 238000012545 processing Methods 0.000 claims abstract description 194
- 238000000605 extraction Methods 0.000 claims abstract description 139
- 238000000034 method Methods 0.000 claims abstract description 67
- 238000007499 fusion processing Methods 0.000 claims abstract description 36
- 238000003860 storage Methods 0.000 claims abstract description 32
- 230000015654 memory Effects 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 21
- 230000004927 fusion Effects 0.000 claims description 17
- 238000012935 Averaging Methods 0.000 claims description 14
- 238000012216 screening Methods 0.000 claims description 9
- 239000000523 sample Substances 0.000 claims 1
- 239000000758 substrate Substances 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 29
- 241000282414 Homo sapiens Species 0.000 description 14
- 230000000007 visual effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000013145 classification model Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 6
- 230000002411 adverse Effects 0.000 description 5
- 239000000872 buffer Substances 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000012015 optical character recognition Methods 0.000 description 4
- 238000000926 separation method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 241000282472 Canis lupus familiaris Species 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000002354 daily effect Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/251—Learning process for intelligent management, e.g. learning user preferences for recommending movies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4668—Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Graphics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种基于人工智能的相似视频处理方法、装置、电子设备及计算机可读存储介质;涉及云技术领域的大数据技术;方法包括:对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到所述图像的图像向量;对所述视频中的音频进行特征提取处理,得到音频向量;对所述视频中的文本进行特征提取处理,得到文本向量;对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量;将任意两个视频的视频表示向量之间的向量相似度,作为所述两个视频之间的视频相似度;根据所述视频相似度,对所述两个视频进行处理。通过本申请,能够提升视频处理的精度。
Description
技术领域
本申请涉及人工智能和大数据技术,尤其涉及一种基于人工智能的相似视频处理方法、装置、电子设备及计算机可读存储介质。
背景技术
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。计算机视觉技术(Computer Vision,CV)是人工智能的一个重要分支,主要研究如何建立能够从图像或者多维数据中获取信息的人工智能***。
对于视频业务的提供商来说,通常需要借助计算机视觉技术以及涉及云技术的大数据处理技术,来判断两个视频之间是否相似,以保证视频业务的运营生态。在相关技术提供的方案中,通常是通过pHash算法或dHash算法来计算视频中图像的哈希值,并将两个视频中图像的哈希值之间的相似度,作为两个视频之间的视频相似度。但是,该种方式对于图像本身发生裁剪、平移或者拍摄视角角度有少量变化的情况非常敏感,局限性过高,得到的视频相似度的精度低。
发明内容
本申请实施例提供一种基于人工智能的相似视频处理方法、装置、电子设备及计算机可读存储介质,能够提升相似视频识别的精度。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种基于人工智能的相似视频处理方法,包括:
对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到所述图像的图像向量;
对所述视频中的音频进行特征提取处理,得到音频向量;
对所述视频中的文本进行特征提取处理,得到文本向量;
对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量;
将任意两个视频的视频表示向量之间的向量相似度,作为所述两个视频之间的视频相似度;
根据所述视频相似度,对所述两个视频进行处理。
在上述方案中,还包括:
获取针对历史用户的多条历史推荐记录;所述历史推荐记录包括所述历史用户的用户特征、已推荐视频的视频表示向量、以及所述历史用户对所述已推荐视频的触发结果;
根据所述多条历史推荐记录,对推荐模型的推荐参数进行更新;
将待推荐用户的用户特征与多个候选视频的视频表示向量分别进行组合处理,得到多个预测样本;
通过更新后的所述推荐模型,对所述预测样本进行预测处理,得到所述预测样本对应的候选视频的预测触发结果;
根据所述预测触发结果从所述多个候选视频中筛选出待推荐的视频,并执行针对所述待推荐的视频的推荐操作。
本申请实施例提供一种基于人工智能的相似视频处理装置,包括:
第一特征提取模块,用于对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到所述图像的图像向量;
第二特征提取模块,用于对所述视频中的音频进行特征提取处理,得到音频向量;
第三特征提取模块,用于对所述视频中的文本进行特征提取处理,得到文本向量;
融合模块,用于对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量;
相似度确定模块,用于将任意两个视频的视频表示向量之间的向量相似度,作为所述两个视频之间的视频相似度;
处理模块,用于根据所述视频相似度,对所述两个视频进行处理。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的基于人工智能的相似视频处理方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的基于人工智能的相似视频处理方法。
本申请实施例具有以下有益效果:
通过对视频中的图像进行多个维度的特征提取处理,融合图像中多个维度的信息得到图像向量,再将图像向量、音频向量和文本向量进行融合,得到视频的视频表示向量,如此,使得视频表示向量能够更加准确地表示视频的含义,提升了根据视频表示向量得到的视频相似度的准确性,从而在根据视频相似度对视频进行处理时,能够提升处理精度,有助于优化视频业务的运营生态。
附图说明
图1是本申请实施例提供的基于人工智能的相似视频处理***的一个架构示意图;
图2是本申请实施例提供的终端设备的一个架构示意图;
图3A是本申请实施例提供的基于人工智能的相似视频处理方法的一个流程示意图;
图3B是本申请实施例提供的基于人工智能的相似视频处理方法的一个流程示意图;
图3C是本申请实施例提供的基于人工智能的相似视频处理方法的一个流程示意图;
图3D是本申请实施例提供的建立索引并识别非原创视频的一个流程示意图;
图4是本申请实施例提供的生成视频表示向量的一个示意图;
图5是本申请实施例提供的生成视频表示向量的一个示意图;
图6是本申请实施例提供的索引库管理框架的一个示意图;
图7是本申请实施例提供的基于人工智能的相似视频处理***的一个示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。在以下的描述中,所涉及的术语“多个”是指至少两个。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)特征提取:将特定的数据(如图像、音频或文本)通过一系列处理映射到一个向量空间,从而得到该数据的向量形式的表示,便于计算机进行处理。
2)融合处理:融合多个向量的方式,在本申请实施例中,融合处理包括但不限于直接拼接、乘积(包括内积和外积)、平均处理、加权处理(如加权平均和加权求和),可以根据实际应用场景确定采用的方式。
3)数据库(Database):类似于电子化的文件柜,即存储电子文件的处所,用户可以对文件中的数据执行新增、查询、更新及删除等操作。数据库也可以理解为以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
4)索引(Index):为了加速对数据库中数据的检索而创建的一种分散的存储结构,索引用于指向数据库中的一个或多个数据,在数据库存储的数据量十分庞大时,索引可以大大加快查询的速度。在本申请实施例中,可以在专门的索引库中存储视频表示向量以及视频表示向量的索引。
5)机器学习(Machine Learning,ML):人工智能的核心,主要研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。基于机器学习原理可以构建机器学习模型,如神经网络模型等。
在视频业务(如视频网站)中,内容创作者为了提升自己的收益,可能会上传(发布)大量类似的视频,例如对某一视频的标题、封面或水印进行简单的编辑修改,在视频中加入广告的片头和片尾,修改视频中的音频等,甚至还可能直接拷贝抄袭其他创作者已上传的视频。这些内容会挤占大量的流量,不利于整个内容生态的健康发展。
在相关技术提供的方案中,通常是通过pHash算法或dHash算法来计算视频中图像的哈希值,将两个视频中图像的哈希值之间的相似度,作为两个视频之间的视频相似度。但是,这种方式对于图像本身发生裁剪,平移或者拍摄视角角度有少量变化的情况非常敏感,相似识别的效果很差,局限性过高。若应用相关技术提供的方案,内容创作者很容易绕过限制(例如对图像进行一些简单的裁剪,或者改变图像的视角等),成功上传类似的视频。
本申请实施例提供一种基于人工智能的相似视频处理方法、装置、电子设备及计算机可读存储介质,能够提升相似视频识别的精度。下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为各种类型的终端设备,也可以实施为服务器。
参见图1,图1是本申请实施例提供的基于人工智能的相似视频处理***100的一个架构示意图,终端设备400通过网络300连接服务器200,服务器200连接数据库500,其中,网络300可以是广域网或者局域网,又或者是二者的组合。
在一些实施例中,以电子设备是终端设备为例,本申请实施例提供的基于人工智能的相似视频处理方法可以由终端设备实现。例如,终端设备400本地存储有多个视频,针对每个视频,提取出图像向量、音频向量及文本向量,并融合得到视频表示向量。然后,对多个视频进行穷举式的两两组合处理,得到多个视频组,将视频组中两个视频的视频表示向量之间的向量相似度,作为这两个视频之间的视频相似度,若视频相似度大于设定的相似度阈值,则确定这两个视频相似。最终,终端设备400可以在人机交互界面中显示相似的多个视频,以供用户删除其中的部分视频,从而实现视频去重,节省终端设备400本地的存储资源,或者,终端设备400可以直接在相似的多个视频中,保留视频参数(如帧率、清晰度或分辨率)最高的视频,并删除其他视频。
在一些实施例中,以电子设备是服务器为例,本申请实施例提供的基于人工智能的相似视频处理方法也可以由服务器实现。例如,服务器200可以是提供视频业务的服务器(如视频网站的后台服务器),服务器200在获取到终端设备400通过客户端410(如视频客户端)上传的视频时,确定该视频与数据库500中存储的多个视频之间的视频相似度(同样通过确定视频表示向量之间的向量相似度的方式)。若确定出终端设备400上传的视频与数据库500中的某个视频之间的视频相似度大于设定的相似度阈值,则服务器200将终端设备400上传的视频确定为非原创视频,并向终端设备400发送重新上传的提示(还可以包括与终端设备400上传的视频相似的视频),从而提升了视频业务的运营生态,避免非原创视频占用视频业务的推荐流量。作为示例,在图1的客户端410的界面中示出了终端设备400向服务器200发送的视频A,以及数据库500中与视频A之间的视频相似度大于相似度阈值的视频B,还示出了重新上传的提示。当然,上述场景并不构成对本申请实施例的限定,例如服务器200还可以对数据库500中的视频计算视频相似度,并进行视频去重,从而减轻数据库500的存储压力。
在一些实施例中,终端设备400或服务器200可以通过运行计算机程序来实现本申请实施例提供的基于人工智能的相似视频处理方法,例如,计算机程序可以是操作***中的原生程序或软件模块;可以是本地(Native)应用程序(APP,Application),即需要在操作***中安装才能运行的程序,如客户端410;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意APP中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,其中,云服务可以是相似视频识别服务,供终端设备400进行调用。终端设备400可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
以本申请实施例提供的电子设备是终端设备为例说明,可以理解的,对于电子设备是服务器的情况,图2中示出的结构中的部分(例如用户接口、呈现模块和输入处理模块)可以缺省。参见图2,图2是本申请实施例提供的终端设备400的结构示意图,图2所示的终端设备400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端设备400中的各个组件通过总线***440耦合在一起。可理解,总线***440用于实现这些组件之间的连接通信。总线***440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线***440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***451,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作***设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器450中的基于人工智能的相似视频处理装置455,其可以是程序和插件等形式的软件,包括以下软件模块:第一特征提取模块4551、第二特征提取模块4552、第三特征提取模块4553、融合模块4554、相似度确定模块4555及处理模块4556,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
将结合本申请实施例提供的电子设备的示例性应用和实施,说明本申请实施例提供的基于人工智能的相似视频处理方法。
参见图3A,图3A是本申请实施例提供的基于人工智能的相似视频处理方法的一个流程示意图,将结合图3A示出的步骤进行说明。
在步骤101中,对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到图像的图像向量。
视频中的图像包括有人类能够感知到的视觉信息,而视觉信息是判断两个图像是否相似的重要元素,因此,对视频中的图像进行特征提取处理,例如通过图像分类模型进行特征提取处理,其中,对图像分类模型的类型不做限定,例如可以是视觉几何组(VisualGeometry Group,VGG)模型、Inception模型或ResNet模型等。
在实际应用场景中,不同视频中图像的主题可能不同,例如可能是人脸、猫、狗、汽车或风景等,若通过单一的图像分类模型进行特征提取处理,可能会导致提取出的特征向量无法充分地表达图像的语义。因此,在本申请实施例中,可以通过执行不同分类任务的图像分类模型,对视频中的图像进行多个维度的特征提取处理,即每一个图像分类模型用于提取一个维度的特征向量。然后,再将提取得到的多个维度的特征向量进行融合处理,如进行加权求和,得到图像的图像向量。
在步骤102中,对视频中的音频进行特征提取处理,得到音频向量。
音频同样也是视频中能够被人类感官感知到的元素,故可以通过音频特征提取模型对视频中的音频进行特征提取处理,得到音频向量,本申请实施例对音频特征提取模型的类型不做限定,例如可以是VG Gish模型。
在步骤103中,对视频中的文本进行特征提取处理,得到文本向量。
除了图像和音频外,还通过文本特征提取模型对视频中的文本进行特征提取处理,得到文本向量,本申请实施例对文本特征提取模型的类型不做限定,例如可以是Transformer的双向编码器表示(Bidirectional Encoder Representation fromTransformers,BERT)模型。值得说明的是,这里所指的视频中的文本,可以是视频的图像中的文本,也可以是用户在上传视频时,为视频添加的文本,如标题文本。其中,可以对图像进行光学字符识别(Optical Character Recognition,OCR),得到图像中的文本。
另外,上文的图像分类模型、音频特征提取模型及文本特征提取模型在使用之前,可以进行训练,例如通过度量学习的方式进行训练,训练集可以包括多个正样本(每个正样本包括标注为相似的两个视频)和多个负样本(每个负样本包括标注为不相似的两个视频)。
在步骤104中,对图像向量、音频向量及文本向量进行融合处理,得到视频的视频表示向量。
针对一个视频来说,将通过特征提取处理得到的图像向量、音频向量及文本向量进行融合,得到该视频的视频表示向量,该视频表示向量能够全面、充分地表示该视频的实际语义。
在一些实施例中,可以通过这样的方式来实现上述的对图像向量、音频向量及文本向量进行融合处理,得到视频的视频表示向量:对图像向量、音频向量及文本向量进行拼接处理、平均处理、乘积处理及加权处理中的至少一种处理,以得到视频的视频表示向量。
在本申请实施例中,融合处理的方式包括但不限于拼接处理、平均处理、乘积处理及加权处理,这四种方式可以任选其一执行,也可以组合起来执行,例如对图像向量、音频向量及文本向量分别进行平均处理和加权处理,再将平均处理的结果和加权处理的结果进行平均处理,得到视频的视频表示向量。其中,乘积处理可以是内积或外积,加权处理可以是加权平均或加权求和。通过上述方式,能够提升融合处理的灵活性,可以根据实际的相似视频识别场景中对效率和精度的要求,来选用具体的方式,例如对精度要求较高,则可以选择直接拼接的方式,得到长度较长的视频表示向量;对效率要求较高,则可以选择加权平均的方式,得到长度较短的视频表示向量,以减少后续的计算量。
在步骤105中,将任意两个视频的视频表示向量之间的向量相似度,作为两个视频之间的视频相似度。
在进行相似视频识别时,可以将任意两个视频的视频表示向量之间的向量相似度,作为两个视频之间的视频相似度。本申请实施例对向量相似度的类型不做限定,例如可以是余弦相似度等。
在步骤106中,根据视频相似度,对两个视频进行处理。
在得到任意两个视频之间的视频相似度后,根据视频相似度对这两个视频进行处理。本申请实施例对具体的处理方式不做限定,例如可以对电子设备中存储的多个视频进行穷举式的两两组合处理,得到多个视频组。然后,确定每个视频组中的两个视频之间的视频相似度,若该视频相似度大于设定的相似度阈值,则删除这两个视频中视频参数更低的视频,通过视频去重的方式节省电子设备的存储资源,其中,视频参数为视频的发布账号的等级(适用于电子设备是视频业务如视频网站的后台服务器的场景)、视频的帧率、清晰度及分辨率中的任意一种。
在一些实施例中,步骤104之后,还包括:获取针对历史用户的多条历史推荐记录;历史推荐记录包括历史用户的用户特征、已推荐视频的视频表示向量、以及历史用户对已推荐视频的触发结果;根据多条历史推荐记录,对推荐模型的推荐参数进行更新;将待推荐用户的用户特征与多个候选视频的视频表示向量分别进行组合处理,得到多个预测样本;通过更新后的推荐模型,对预测样本进行预测处理,得到预测样本对应的候选视频的预测触发结果;根据预测触发结果从多个候选视频中筛选出待推荐的视频,并执行针对待推荐的视频的推荐操作。
在本申请实施例中,视频表示向量除了用于相似视频识别之外,还可以作为视频本身的特征,参与到视频推荐的召回阶段和排序阶段中。例如,获取针对历史用户(可以是同一个用户,也可以是多个用户)的多条历史推荐记录,每条历史推荐记录包括历史用户的用户特征、已推荐视频的视频表示向量、以及历史用户对已推荐视频的触发结果,其中,用户特征可根据实际应用场景进行设定,如包括年龄、性别及居住城市等,触发结果包括触发(触发如点击)和未触发两种情况。
通过多条历史推荐记录对推荐模型的推荐参数进行更新,其中,推荐参数即为推荐模型的权重参数。例如,针对每条历史推荐记录,通过推荐模型的推荐参数对历史推荐记录中的用户特征和视频表示向量进行预测处理,得到待对比的预测触发结果,根据该历史推荐记录中的触发结果与待对比的预测触发结果之间的差异(即损失值,可通过推荐模型的损失函数计算得到),在推荐模型中进行反向传播,在反向传播的过程中,沿梯度下降方向更新推荐模型的推荐参数。
完成对推荐参数的更新后,即可根据推荐模型进行视频推荐。例如,将待推荐用户的用户特征与多个候选视频的视频表示向量分别进行组合处理,得到多个预测样本,其中,多个候选视频可以是数据库中存储的所有视频,也可以是通过设定规则,从数据库存储的所有视频中筛选出的一些视频,例如最近7天上传的视频;每个预测样本包括待推荐用户的用户特征及一个候选视频的视频表示向量。然后,通过更新后的推荐模型的推荐参数,对预测样本进行预测处理,得到预测样本对应的候选视频的预测触发结果,从多个候选视频中筛选出预测触发结果为触发的视频,作为待推荐视频。最终,执行将待推荐视频推荐至待推荐用户的操作。由于视频表示向量能够充分表示视频的实际语义,故通过上述方式,能够提升视频推荐的精度,优化用户体验。
在一些实施例中,可以通过这样的方式实现上述的根据视频相似度,对两个视频进行处理:对待推荐的多个视频进行两两组合处理,得到多个视频组;当视频组中两个视频之间的视频相似度大于第二相似度阈值、且两个视频对应的视频参数不同时,筛选出两个视频中视频参数更高的视频;当视频组中两个视频之间的视频相似度大于第二相似度阈值、且两个视频对应的视频参数相同时,将两个视频中的任意一个视频作为筛选出的视频;执行针对筛选出的视频的推荐操作;其中,视频参数为视频的发布账号的等级、视频的帧率、清晰度及分辨率中的任意一种。
在本申请实施例中,还可以在视频推荐的环节,对待推荐的多个视频进行穷举式的两两组合处理,得到多个视频组。当视频组中两个视频之间的视频相似度大于设定的相似度阈值(为了便于区分,这里命名为第二相似度阈值)、且两个视频对应的视频参数不同时,证明这两个视频之间存在优劣差异,故筛选出两个视频中视频参数更高,即更优的视频;当视频组中两个视频之间的视频相似度大于第二相似度阈值、且两个视频对应的视频参数相同时,证明这两个视频之间不存在优劣差异,故在这两个视频中随机选择一个,作为筛选出的视频。视频参数为视频的发布账号的等级、视频的帧率、清晰度及分辨率中的任意一种,其中,视频的发布账号的等级越高,则该视频是优质视频的概率越大。
在对多个视频组完成筛选后,执行针对筛选出的视频的推荐操作。通过上述方式,能够实现推荐展现的内容打散,避免推荐过于相似的视频。
在一些实施例中,可以通过这样的方式实现上述的根据视频相似度,对两个视频进行处理:当标注有视频标签的第一视频与未标注有视频标签的第二视频之间的视频相似度大于第三相似度阈值时,将第一视频的视频标签作为第二视频的视频标签;其中,视频标签为视频质量及视频主题中的任意一种。
在本申请实施例中,还可以根据视频之间的视频相似度,实现对视频标签的自动标注。例如,当标注有视频标签的第一视频与未标注有视频标签的第二视频之间的视频相似度大于设定的相似度阈值(为了便于区分,这里命名为第三相似度阈值)时,将第一视频的视频标签作为第二视频的视频标签,其中,第一视频的视频标签可以是人为标注或自动标注的;视频标签为视频质量及视频主题(或称视频类型)中的任意一种。当视频标签为视频质量时,通过上述方式,能够实现对优质视频的自动挖掘,例如在视频网站中,存在属于一个热门电影或者热门电视剧的多个片段视频,其中一个片段视频的视频标签为优质视频,则通过上述方式,能够挖掘出其他属于优质视频的片段视频。
如图3A所示,本申请实施例对视频中的图像进行多个维度的特征提取处理进而得到图像向量,并将图像向量、音频向量及文本向量融合为视频表示向量,使得视频表示向量能够有效、充分地表示视频的实际语义,最终得到的视频相似度也能够与人类感官感知到的相似度符合,提升了相似视频识别的精度。在根据得到的视频相似度对视频进行处理时,也能够有效提升处理精度,适用于各种各样的处理场景,如相似视频过滤。
在一些实施例中,参见图3B,图3B是本申请实施例提供的基于人工智能的相似视频处理方法的一个流程示意图,图3A示出的步骤101可以通过步骤201至步骤204实现,将结合各步骤进行说明。
在步骤201中,通过多分类的目标检测模型对图像进行特征提取处理,得到目标特征向量。
在本申请实施例中,对图像进行特征提取处理的多个维度可以包括目标维度、场景维度和人脸维度。在目标维度中,通过目标检测模型对图像进行特征提取处理,得到目标特征向量,其中,目标检测模型的分类任务是多分类,可预测的目标可以包括人脸、猫、狗及汽车等,对此不做限定。这里,对目标检测模型的类型同样不做限定,例如可以是单步多框检测器(Single Shot multiBox Detector,SSD)模型或一次运算(You Only Live Once,YOLO)模型。
在步骤202中,通过场景识别模型对图像进行特征提取处理,得到场景特征向量。
在场景维度中,通过场景识别模型对图像进行特征提取处理,得到场景特征向量,其中,场景识别模型的分类任务是多分类,可识别的场景可以包括山、川、湖、海及常见的城市设施等。这里,对场景识别模型的类型同样不做限定,例如可以是NetVLAD模型。
在步骤203中,通过二分类的人脸检测模型对图像进行特征提取处理,得到人脸特征向量。
在人脸维度中,通过人脸检测模型对图像进行特征提取处理,得到人脸特征向量,其中,人脸检测模型的分类任务是二分类,即检测图像中是否存在人脸。这里,对人脸检测模型的类型同样不做限定,例如可以是多任务卷积神经网络(Multi-Task ConvolutionalNeural Network,MTCNN)模型。
在步骤204中,对目标特征向量、场景特征向量及人脸特征向量进行融合处理,得到图像的图像向量。
这里,融合处理的方式同样包括但不限于拼接处理、平均处理、乘积处理及加权处理。
在一些实施例中,可以通过这样的方式来实现上述的对目标特征向量、场景特征向量及人脸特征向量进行融合处理,得到图像的图像向量:根据视频的视频主题,确定目标特征向量、场景特征向量及人脸特征向量的权重;对目标特征向量、场景特征向量及人脸特征向量进行加权处理,得到图像的图像向量;其中,视频主题为目标检测模型对应的目标、场景识别模型对应的场景、以及人脸检测模型对应的人脸中的任意一种;符合视频主题的向量的权重大于不符合视频主题的向量的权重。
这里,可以对目标特征向量、场景特征向量及人脸特征向量进行加权求和,得到图像的图像向量。由于不同视频中图像的侧重点不同,故可以根据视频主题来针对性地调整目标特征向量、场景特征向量及人脸特征向量的权重,其中,视频主题为目标、场景及人脸中的任意一种,例如在短视频中,视频主题大多为人脸;符合视频主题的向量的权重大于不符合视频主题的向量的权重。
值得说明的是,一种特殊情况是目标检测模型中可预测的目标包括人脸,在该情况下,当视频主题为人脸时,可以确定人脸特征向量的权重≥目标特征向量的权重>场景特征向量的权重。通过上述方式,能够根据实际的视频主题来对应地调整图像中各个维度的信息在图像向量中的占比,进一步提升图像向量的精度。
如图3B所示,本申请实施例从目标、场景和人脸三个维度提取图像中的信息,使得得到的图像向量能够充分、有效地表示图像的实际含义,能够进一步提升相似视频识别的精度。
在一些实施例中,参见图3C,图3C是本申请实施例提供的基于人工智能的相似视频处理方法的一个流程示意图,图3A示出的步骤101之后,还可以在步骤301中,对视频中多个抽帧图像的图像向量进行加权处理,得到全局图像向量。
一个视频中通常包括多个图像,在得到每个图像的图像向量后,可以对多个图像的图像向量进行融合处理,得到整体图像向量。
举例来说,在短视频场景中,视频通常包括封面图像以及多个视频帧图像,封面图像可以是多个视频帧图像中的一个。由于视频帧图像的数量通常较多,若全部进行特征提取处理,则会耗费大量的计算资源,同时导致处理时延过大,因此,可以对多个视频帧图像进行抽帧处理得到多个抽帧图像,后续仅对抽帧图像进行特征提取处理即可。在得到多个抽帧图像的图像向量后,对多个抽帧图像的图像向量进行加权求和,得到全局图像向量。
在一些实施例中,步骤301之前,还包括:对视频中的多个视频帧图像进行遍历处理,并针对遍历到的视频帧图像执行以下处理:当遍历到的视频帧图像与相邻的视频帧图像在图像参数上的差异大于差异阈值时,将遍历到的视频帧图像作为抽帧处理得到的抽帧图像,并将与遍历到的视频帧图像相隔设定间隔的视频帧图像,作为抽帧处理得到的抽帧图像;其中,图像参数为亮度、对比度、清晰度及分辨率中的任意一种。
例如,可以对视频中的所有视频帧图像进行遍历处理,当遍历到的视频帧图像与前一个视频帧图像在图像参数上的差异大于设定的差异阈值时,证明遍历到的视频帧图像包括较为关键的信息,故将遍历到的视频帧图像作为抽帧处理得到的抽帧图像,同时为了避免因抽帧图像的数量过少所导致的信息量不足,将与遍历到的视频帧图像相隔设定间隔的视频帧图像,也作为抽帧处理得到的抽帧图像,其中,图像参数为亮度、对比度、清晰度及分辨率中的任意一种。
值得说明的是,设定间隔可以是时长间隔,如1秒,也可以是帧数量间隔,如5帧。与遍历到的视频帧图像相隔设定间隔的视频帧图像,包括遍历到的视频帧图像之前的视频帧图像、以及遍历到的视频帧图像之后的视频帧图像,以设定间隔为1秒的时长间隔进行举例,则将遍历到的视频帧图像之前1秒的视频帧图像、以及遍历到的视频帧图像之后1秒的视频帧图像,均作为抽帧图像。通过上述方式,能够避免抽帧图像过多导致后续计算量过大,也能够避免抽帧图像过少导致信息量不足。
在步骤302中,将全局图像向量与视频的封面图像的图像向量进行拼接处理,得到整体图像向量。
由于视频的封面图像包括了视频的精华信息,能够与视频帧图像互相补充,因此,将通过步骤301得到的全局图像向量与视频的封面图像的图像向量进行融合处理,得到整体图像向量。融合处理的方式包括拼接处理、平均处理、乘积处理及加权处理中的至少一种,例如,这里可以采用拼接处理。
在图3C中,图3A示出的步骤102之后,还可以在步骤303中,对多个抽帧图像对应的音频向量进行加权处理,得到整体音频向量。
例如,通过VGGish对音频进行特征提取处理后,可以得到与视频中的各个视频帧图像分别对应的音频向量。在对视频中多个图像的图像向量进行融合处理的同时,可以对多个图像(这里指的是视频帧图像)对应的音频向量进行融合处理,得到整体音频向量。同样地,这里的融合处理的方式包括拼接处理、平均处理、乘积处理及加权处理中的至少一种。
例如,在已对视频进行抽帧处理得到多个抽帧图像的基础上,可以对多个抽帧图像对应的音频向量进行加权求和,得到整体音频向量。
在图3C中,图3A示出的步骤103之后,还可以在步骤304中,对标题文本的文本向量、摘要文本的文本向量、以及多个抽帧图像中的文本的文本向量进行拼接处理,得到整体文本向量。
同时,可以对视频中多个文本的文本向量进行融合处理,得到整体文本向量。值得说明的是,视频中的文本并不一定位于视频帧图像中,例如可以是用户在上传视频时,同时上传的标题文本和摘要文本。同样地,这里的融合处理的方式包括拼接处理、平均处理、乘积处理及加权处理中的至少一种。
例如,在已对视频进行抽帧处理得到多个抽帧图像的基础上,可以仅对标题文本、摘要文本及多个抽帧图像进行特征提取处理,并对得到的文本向量进行拼接处理,得到整体文本向量。
在图3C中,图3A示出的步骤104可以更新为步骤305,在步骤305中,对整体图像向量、整体音频向量及整体文本向量进行融合处理,得到视频的视频表示向量。
同样地,这里的融合处理的方式包括拼接处理、平均处理、乘积处理及加权处理中的至少一种。
如图3C所示,本申请实施例通过抽帧处理得到抽帧图像,能够减少特征提取处理和融合处理的工作量,从而减轻电子设备的处理负载,提升处理效率,同时也能够保证相似视频识别的精度。
在一些实施例中,参见图3D,图3D是本申请实施例提供的建立索引并识别非原创视频的一个流程示意图,将结合图3D示出的步骤进行说明。
在步骤401中,将数据库中存储时间位于实时时间之前的设定时间段内的视频作为存量视频,在存量索引空间中建立多个存量视频的视频表示向量的索引。
在本申请实施例中,为了提升相似视频识别的效率,可以为视频的视频表示向量建立索引,其中,视频表示向量和索引是1:1的关系,即每个视频表示向量都对应一个单独的索引。同时,为了避免大量混合读写导致数据库的性能受到不良影响,可以划分存量索引空间和增量索引空间。对于存量索引空间,可以将数据库中存储时间位于实时时间之前的设定时间段内的视频作为存量视频,并在存量索引空间中建立每个存量视频的视频表示向量的索引,设定时间段可以根据相似视频识别的时效性要求进行设定,如设定为89天。
在一些实施例中,在存量索引空间中建立多个存量视频的视频表示向量的索引的过程中,还包括:针对每个存量视频的视频表示向量,执行以下任意一种处理:将存量视频的视频表示向量,作为存量视频的视频表示向量的索引;对存量视频的视频表示向量进行哈希处理,将哈希处理得到的结果作为存量视频的视频表示向量的索引。
本申请实施例提供了两种建立索引的方式,第一种方式是,直接将存量视频的视频表示向量本身,作为该视频表示向量的索引;第二种方式是,对存量视频的视频表示向量进行哈希处理,将哈希处理得到的结果作为该视频表示向量的索引。这两种方式同样适用于后续建立增量视频的视频表示向量的索引的过程。
在步骤402中,将新视频作为增量视频存储至数据库,在增量索引空间中建立新视频的视频表示向量的索引;其中,增量索引空间中的索引用于周期性地迁移至存量索引空间中。
这里,若获取到新视频,则将新视频作为增量视频存储至数据库。对于新视频来说,划分的存量索引空间只读,增量索引空间同时支持读写,如此,可以避免大量混合读写的问题。在得到新视频的视频表示向量后,在增量索引空间中建立该新视频的视频表示向量的索引。
为了保证增量索引空间中的索引不会过于冗余,可以将增量索引空间中的索引周期性地迁移至存量索引空间中,这里的周期(切换周期)可以预先设定,如设定为1天。同时,在切换周期到达时,可以删除存量索引空间中不再属于存量视频(即视频的存储时间不再位于实时时间之前的设定时间段)的视频表示向量的索引。
在一些实施例中,存量视频的视频表示向量和新视频的视频表示向量用于存储至索引库中,索引库包括存量索引空间和增量索引空间;将新视频作为增量视频存储至数据库之后,还包括:将新视频的视频表示向量同步存储至正在使用的索引库的备用索引库副本;当到达切换周期时,根据备用索引库副本中的存量视频的视频表示向量,在备用索引库副本的存量索引空间中重新建立索引,并将正在使用的索引库与备用索引库副本进行切换。
在本申请实施例中,可以将视频、视频表示向量以及索引存储在同一个数据库中,也可以将视频表示向量以及索引单独存储至额外的索引库中,以加快读取效率。对于后一种情况,索引库包括存量索引空间和增量索引空间,在得到存量视频的视频表示向量后,将该视频表示向量存储至索引库,以在存量索引空间中建立该视频表示向量的索引;在得到增量视频的视频表示向量后,将该视频表示向量存储至索引库,以在增量索引空间中建立该视频表示向量的索引。其中,为了便于识别索引库中的视频表示向量对应存量视频还是增量视频,也可以将视频表示向量对应视频的存储时间存储至索引库中。
为了避免在索引库中大量删除索引导致其性能受到不良影响,可以在本申请实施例中应用Double Buffer的机制。例如,创建正在使用的索引库的备用索引库副本,在将新视频的视频表示向量存储至正在使用的索引库时,将该视频表示向量同步存储至备用索引库副本。当到达切换周期时,根据备用索引库副本中的存量视频的视频表示向量,在备用索引库副本的存量索引空间中重新建立索引,并将正在使用的索引库与备用索引库副本进行切换。如此,可以保证正在使用的存量索引空间内索引的时效性,也能够实现线上无感知的无缝双库切换。
在步骤403中,读取存量索引空间及增量索引空间,以确定新视频与多个待对比视频之间的视频相似度;其中,多个待对比视频包括多个存量视频、以及除新视频外的增量视频。
在对新视频进行相似视频识别时,同时读取存量索引空间及增量索引空间,即确定新视频的视频表示向量与每个存量视频的视频表示向量之间的向量相似度,同时确定新视频的视频表示向量与除该新视频之外的增量视频的视频表示向量之间的向量相似度。换言之,所有的存量视频及除新视频外的所有增量视频,均作为了新视频的待对比视频。
在步骤404中,当新视频与任意一个待对比视频之间的视频相似度大于第一相似度阈值时,将新视频识别为非原创视频。
当新视频与任意一个待对比视频之间的视频相似度大于设定的相似度阈值(为了便于区分,命名为第一相似度阈值)时,将新视频识别为非原创视频,并进行进一步处理,例如可以直接删除该新视频、该新视频的视频表示向量及索引,又例如可以向上传该新视频的设备发送重新上传的提示。值得说明的是,本申请实施例中可以通过索引实现其他的功能,并不限于识别非原创视频。
如图3D所示,本申请实施例通过划分存量索引空间和增量索引空间,实现了读写分离,能够提升得到视频相似度的效率,避免进行大量混合读写导致数据库(或索引库)性能降低。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用,本申请实施例可以识别视频是否为原创视频,对于识别出的非原创视频来说,可以执行屏蔽或者删除操作,从而鼓励内容生产者上传原创视频,保证视频业务的良好生态。接下来进行具体说明。
随着互联网快速发展,内容生产的门槛降低,视频的上传量(发布量)以指数级的速度增长。这些内容的来源包括各种各样的内容创作机构,比如自媒体和机构的专业生产内容(Professional Generated Content,PGC)及用户生成内容(User GeneratedContent,UGC)等。例如,在以即时通信应用为基础依托的视频业务中,各个来源的视频日上传量的峰值已超过百万级别。
随着视频数量的快速增加,对视频的审核速度和审核质量提出了更高的要求,尤其是对于UGC来说,如果无法快速审核和处理,也就没有办法快速分发,对用户的体验会造成较大的不利影响。同时,内容创作者为了提升自己的收益,可能会上传大量类似的视频,例如对某一视频的标题文本、封面图像、水印、视频帧图像进行各种编辑、裁剪和变换,以绕过视频业务平台的相似视频识别和去重,这会导致搬运的视频阻止正常创作者的视频启用,同时挤占大量的流量,不利于整个内容生态的健康发展。
从用户消费视频的视角来看,用户能感受到的是视频的图像、音频及文本,因此,在本申请实施例中基于这三个模态进行相似视频识别,作为示例,提供了如图4所示的生成视频表示向量的示意图,将结合图4进行说明。
1)视觉模态。这里,可以将视频中的视频帧图像以及封面图像,作为包含视觉信息的图像,即作为用于进行特征提取处理的图像,其中,视频帧图像是视频内容的主体,包含了主要的内容信息,而封面图像是视频内容的精华,两者可以互相补充。本申请实施例对用于提取视觉信息的模型不做限定,例如可以是VGG16、Inception系列模型或ResNet等图像分类模型,图4中以Inception-Resnet v2模型作为示例。在对用于提取视觉信息的模型进行训练时,可以采用度量学习的方式,其基本思想是:两个同样类别的图像在向量空间里距离较近,而两个不同类别的图像在向量空间里距离较远。其中,对用于提取视觉信息的模型的损失函数也不做限定,例如可以是对比损失(Contrastive Loss)或三元组损失(TripletLoss)等。
为了提升图像向量的信息丰富性,在本申请实施例中,可以如图5所示,对视频中的图像进行目标(对象)、场景和人脸三个维度的特征提取处理。例如,通过目标检测模型(如SSD模型或YOLOv5模型等)对图像进行特征提取处理,得到目标特征向量;通过场景识别模型(如NetVLAD模型等)对图像进行特征提取处理,得到场景特征向量;通过人脸检测模型(如MTCNN模型等)对图像进行特征提取处理,得到人脸特征向量。由于这三个维度的信息在不同的视频的贡献度是不一致的,故在完成特征提取处理后,可以通过协同门(Collaborative Gating)注意力的机制对目标特征向量、场景特征向量及人脸特征向量进行融合,即进行加权求和,得到图像向量。该协同门注意力的机制实际上相当于一个多通道开关,用于调整图像中各个维度的信息的权重,例如视频主题为人脸,则相应地加大人脸特征向量的权重,使其大于目标特征向量和场景特征向量的权重;例如视频主题为风景,则相应地加大场景特征向量的权重,使其大于目标特征向量和人脸特征向量的权重。其中,视频主题可人为标注,或者通过机器学习算法自动识别得到。上述方式适用于短视频场景,其原因是短视频的一大特点是以人为中心,人脸在视频内容中是非常重要的部分,因此将人脸特征向量融合进图像向量后,能够识别出同一个人的不同视频。
由于同一视频中不同视频帧图像的图像向量之间具有时序相关性,因此,在本申请实施例中,采用NetVLAD模型作为图像向量的聚合网络,其中,NetVLAD模型用于通过可以学习的权重,对多个视频帧图像的图像向量进行加权求和,得到全局图像向量。
2)音频模态。在某些视频如教程类视频中,视频的关键信息会通过音频表现出来,因此,在本申请实施例中可以提取音频信息。例如,从视频中分离音频信号,通过计算梅尔频率倒谱系数(Mel Frequency Cepstrum Coefficient,MFCC)特征对音频信号进行转换,然后使用VGGish模型对转换后的音频信号进行特征提取处理,得到不同视频帧图像对应的音频向量。与图像向量类似地,这里可以采用NetVLAD模型作为音频向量的聚合网络,其中,NetVLAD模型用于通过可以学习的权重,对多个视频帧图像对应的音频向量进行加权求和,得到全局音频向量(对应上文的整体音频向量)。
3)文本模态。例如,视频中的文本可以包括标题文本(图4中未示出)和摘要文本(例如在商品类视频中,摘要文本可以是与商品链接相关的文本),此外,还包括视频帧图像中的文本。标题文本和摘要文本通常是由视频的上传者(生产者)进行手动上传,针对视频帧图像来说,可以通过OCR技术识别其中的文本。
对于视频中的文本,可以通过BERT模型进行特征提取处理,得到文本向量,其中,可以将BERT模型中倒数第二层输出的向量作为文本向量,其原因在于,BERT模型中的最后一层距BERT模型本身的分类任务的目标过近,若将最后一层输出的向量作为文本向量,可能会在本申请实施例的相似视频识别的任务上存在一定偏差。本申请实施例对BERT模型的训练过程不做限定,例如可以包括预训练(Pre-Training)阶段和微调(Fine-Tuning)阶段,在预训练阶段,训练任务可以包括遮蔽语言模型(Masked Language Model,MLM)任务和下一句预测(Next Sentence Prediction,NSP)任务,其中,MLM任务用于对输入的文本中的一部分进行遮蔽,然后通过BERT模型预测被遮蔽的文本,NSP任务用于针对输入的句子A和句子B,判断句子B是否为句子A的下一句;在微调阶段,可以包括文本蕴含识别(Multi-genreNatural Language Inference,MNLI)任务、命名实体识别(Named Entity Recognition,NER)任务及斯坦福问答数据集(Stanford Question Answering Dataset,SQuAD)任务。
在得到视觉模态中的图像向量、音频模态中的音频向量以及文本模态中的文本向量后,进行多模态融合得到视频表示向量,其中,多模态融合的方式包括但不限于直接拼接、乘积(包括内积和外积)及加权平均。例如,若对相似视频识别的精度要求较高,则可以采用直接拼接的方式,得到长度较长的视频表示向量;若对相似视频识别的效率要求较高,则可以采用加权平均的方式,以牺牲小部分信息的代价得到长度较短的视频表示向量,如此能够减少后续计算的计算量。以多模态融合的方式为直接拼接进行举例,则可以对视频的全局图像向量、封面图像的图像向量、全局音频向量、标题文本的文本向量、摘要文本的文本向量以及视频帧图像中文本的文本向量进行拼接,得到该视频的视频表示向量。如此,两个视频之间的视频相似度,便可等同于两个视频的视频表示向量之间的向量相似度。
通过确定视频的视频表示向量,能够有助于视频业务平台更加精确地识别出相似的视频,从而可以进行视频去重,如在相似的多个视频中保留帧率或分辨率最高的视频;在涉及到人工审核时,可以将相似的多个视频中清晰度或分辨率最高的视频提交给审核人员进行审核,剩余的视频可以参照该视频的人工审核结果,如此可以减少不必要的人力浪费;还可以对视频的视频质量进行自动标注,例如视频A已被标注(如人为标注)为优质视频,则可以将与视频A相似的视频B自动标注为优质视频;视频表示向量作为视频语义的准确描述,可以作为一个重要特征,直接用于视频推荐的召回和排序阶段;此外,视频表示向量还可以用于推荐展现层的打散,控制推荐密集和重复,能够有效改善用户的体验,例如待推荐给用户的视频A和视频B相似,则筛选出视频A和视频B中发布账号的等级更高的视频,最终推荐至用户。
在确定视频表示向量的过程中,能够实现高维稀疏特征向量向低维稠密特征向量的转换,提升相似视频识别的精度。在本申请实施例中,可以通过分布式向量检索服务来实现多个视频的视频表示向量的管理,其中,可以利用Faiss库为稠密的视频表示向量提供高效的相似度搜索和聚类服务。
由于内容链路上,每天可能会新入百万级别的视频,需要将视频实时加入到数据库,并将视频的视频表示向量加入到索引库(这里以Faiss索引库为例)进行相似计算,即Faiss索引库包括视频的视频表示向量、以及视频表示向量的索引。在本申请实施例中,对索引的生成方式不做限定,例如可以将视频的视频表示向量本身作为该视频的索引,也可以对视频的视频表示向量进行哈希处理(通过Faiss的哈希函数体),将得到的哈希值作为该视频的索引。在分布式检索过程中,为了避免Faiss索引库大量混合读写导致性能受到不利影响,在本申请实施例中应用读写分离的机制。
具体地,如图6所示,在Faiss索引库中建立大小两套索引,分别对应上文的存量索引空间和增量索引空间,其中,存量索引空间只读,增量索引空间同时支持读写。以相似视频识别的有效期是3个月内的视频为例,则存量索引空间可以包括实时时间之前89天(对应上文的设定时间段)的视频的索引,增量索引空间可以包括实时时间当天存储的视频的索引。在实时时间当天,每入库1个新视频,在增量索引空间中建立该视频的索引,同时,检索存量索引空间和增量索引空间,合并得到的检索结果。值得说明的是,可以为Faiss索引库设置Faiss代理端(Proxy),用于响应外部的相似视频识别请求(如去重请求),对Faiss索引库执行读写操作。
相似视频识别的场景往往具有时效性要求,Faiss索引库中的数据需要进行周期性淘汰,以上述例子进行举例,则每天需要淘汰Faiss索引库中最早1天的索引。由于在Faiss索引库中大量删除数据会导致其性能受到不良影响,因此在本申请实施例中,应用双缓冲(Double Buffer)的切换机制来进行数据淘汰。例如,对于正在使用的Faiss索引库(图6中以库1为例)来说,创建其备用索引库副本(图6中以库2为例),对于存储至库1的视频表示向量,同步存储至库2。当切换周期到达,如新的1天来临时,控制库2根据最近89天的视频的视频表示向量离线重建索引,并将库1和库2的使用状态进行切换,即是将库2投入使用,将库1作为备用索引库副本。其中,库1和库2中的索引名称可以存储在另外的数据库,如Redis数据库中,在库1和库2切换时,通过修改Redis索引状态来实现索引的切换。
面对复杂的不同用途的向量检索场景,可能会存在多个Faiss索引库,不同Faiss索引库中的视频表示向量和有效期不同,例如在全局的相似视频识别场景中,对应的Faiss索引库包括上亿个视频的视频表示向量;在对大V头部账号发布的视频进行保护的场景中,对应的Faiss索引库包括的视频表示向量的数量可能较少,只有上万个;在对新热内容进行保护的场景中,主要考虑视频的时效性,对应的Faiss索引库包括的视频表示向量的数量可能更少,只有上千个,有效期也较短。针对该情况,在本申请实施例中抽象公共组件,即索引库管理模块(Faiss Manager),与业务完全解耦,以使图6中的索引库管理框架能够作为一套框架,来管理多个不同的Faiss索引库,实现向量检索和召回过程的复用。接下来,对Faiss Manager包括的各个模块进行说明:
1)版本管理:用于管理不同版本的索引,例如上文的库1和库2中的索引,当切换周期到达时,通知Faiss Proxy应用新版的索引。
2)模型训练:用于管理不同版本的视频表示向量,例如用于对视频进行特征提取处理的模型的版本不同,那么最终得到的视频表示向量也不同。
3)配置管理:主要用于记录设备(如服务器)和模块(部署在服务器上的具有独立功能的模块,一个服务器中可以部署多个模块,例如在用于存储的服务器中部署内容读模块和写模块)的地址,还用于记录相关的存储大小及表结构的配置信息。
4)增量抽样:用于从增量索引空间中抽取部分(图6中未示出),进行分析和查找定位问题。例如现实生活中一个热点事件发生时,创作者A发布了一个与该热点事件相关的视频,创作者B过一段时间后又发布一个类似的视频,创作者C过一段时间后也发布一个类似的视频,对于该情况,可以从增量索引空间中随机抽样一部分索引,识别出有多少视频相似,然后根据增量索引空间内索引的总数量,计算增量索引空间中全部的索引对应的视频中,总共有多少相似的视频。增量抽样模块还用于记录抽取的是哪一部分,抽取的索引的数量以及抽取时间等。
5)文件管理:用于从云数据库(Cloud DataBase,CDB)中读取视频表示向量,并建立相应的索引。这里,CDB可以作为MySQL数据库的存储实例,用于存储少量视频的视频表示向量,例如当天发布的视频的视频表示向量,CDB可以是单机的;而Faiss索引库是分布式存储,用于存储大量视频表示向量及对应的索引,例如几个月内的视频表示向量及对应的索引,Faiss索引库通常采用固态硬盘(Solid State Disk,SSD),速度较快。文件管理模块还可用于将索引进行分片存储,即分为几块,每一块有多个文件(FILE)。进行分片存储后,文件管理模块还可用于记录文件_1到文件_N的文件原始信息,包括但不限于文件大小、文件保存格式、文件版本、文件的有效期及文件的创建时间。
图6所示的索引库管理框架的优点在于:高度抽象,一套组件多方复用读写收拢,标准化接入,大小索引读写分离从而能够保证性能,双Buffer在线无缝切换,模块均可水平扩展。
本申请实施例还提供了如图7所示的基于人工智能的相似视频处理***的示意图,将结合图7示出的各个部分进行说明:
1)内容生产端:指PGC、UGC或多频道网络(Multi-Channel Network,MCN)等内容的生产端,如移动终端。内容生产端用于与上下行内容接口服务进行通讯,例如通过上下行内容接口服务提供的接口,将视频上传至上下行内容接口服务,上传的视频用于作为后续视频推荐(即内容分发)的数据来源。在通过内容生产端上传视频之前,用户可以选择视频中搭配的音频(如音乐),对视频进行剪辑,选择封面图像,选择滤镜模板或者对视频进行美化等,对此不做限定。在上传视频的过程中,内容生产端可以将上传速度、上传是否卡顿、上传是否失败等数据发送至后端,以供统计分析。
2)上下行内容接口服务:
①与内容生产端进行通讯,获取前端提交的视频,将视频的源文件存储至内容存储服务中。
②将前端提交的视频的元信息存储至元信息数据库,其中,元信息包括但不限于视频的标题文本、摘要文本、封面图像(也可以是封面图像的链接,至于封面图像的源文件则可以存储至内容存储服务中)、作者、码率、视频的文件格式、文件大小及发布时间。
③将视频同步给调度中心服务,以便进行后续的视频处理和流转。
3)元信息数据库:元信息数据库是视频的核心数据库,所有内容生产端所发布的视频的元信息都保存在元信息数据库中。元信息中除了内容生产端上传的信息外,还可以包括进行视频处理所得到的信息,例如是否原创的标记,又例如人工审核过程中对视频进行标注得到的视频标签(可能包括多个等级的分类,例如一个讲解xx牌手机的视频,一级分类是科技,二级分类是智能手机,三级分类是国内手机,还可以有更细致的分类,如xx牌以及该手机的具体型号)。即,在人工审核的过程中,会读取元信息数据库中的信息,同时人工审核后得到的结果也会回传进入元信息数据库,以对元信息进行更新。
4)调度中心服务&人工审核***:
①调度中心服务负责视频流转的整个调度过程,通过上下行内容接口服务接收入库的视频,然后从元信息数据库中获取该视频的元信息。
②调度中心服务对视频的处理主要包括调度机器处理***(如相似识别服务)进行机器处理,调度人工审核***进行人工审核处理,调度中心服务还用于控制调度的顺序和优先级。其中,机器处理的核心包括各种质量判断如低质过滤,还包括视频相似识别,相似识别的结果(如是否原创的标记)会写入元信息数据库,较为相似的视频不会给人工进行重复的二次审核,能够节省人力资源。
③人工审核***是人工服务能力的载体,主要用于审核过滤涉及非法信息等机器无法判断的视频,同时还可进行对视频的标签标注。人工审核***对某个视频审核通过后,该视频被启用,可以通过内容分发出口服务(如推荐引擎、搜索引擎或者人工运营等)推荐给内容消费端。其中,内容分发出口服务可以通过Feeds流的形式,将视频推荐给内容消费端。
5)内容存储服务:
①用于存储视频的元信息之外的实体信息,比如视频的源文件。
②在构建视频表示向量时,提供视频中的抽帧图像和音频的临时存储,避免重复抽取。
6)下载文件***:
①从内容存储服务中下载视频原始的源文件,控制下载的速度和进度,下载文件***通常包括一组并行的服务器,由相关的任务调度和分发集群构成。
②对于下载完成的源文件,调用抽帧服务从源文件当中获取必要的文件关键帧和音频,以便后续构造视频表示向量。
7)抽帧和抽取音频服务:按照上面描述的视频模态和音频模态的特征构建方式,对视频的源文件进行抽帧处理得到抽帧图像,同时抽取源文件中的音频。在抽帧处理的过程中,若使用均匀抽帧策略(比如1秒抽取1帧),则会导致抽帧频率过高,增加抽帧的负担和计算量;反之,若采用变长抽帧策略(比如每隔3秒、5秒或7秒抽取一帧),则会导致帧率不够,得到的抽帧图像的信息量不足。因此,在本申请实施例中,在视频的源文件中抽取亮度变化明显(如相邻两帧的亮度差异大于差异阈值)的场景切换帧图像,作为抽帧图像,同时,以该场景切换帧图像为基础,抽取前后等间隔(可以是时长间隔,如1秒)的视频帧图像,同样作为抽帧图像,以进行抽帧补齐。如此,抽帧的负担和计算量不会过大,得到的抽帧图像又能够包含全面、丰富的信息。
8)向量生成服务:按照上文的多模态特征提取以及多模态融合的方式,来构建视频的视频表示向量。
9)分布式向量检索服务:在已构建的视频表示向量的基础上,对视频表示向量的索引进行分布式管理和检索匹配,具体如图6所示,可以采用分布式的Faiss索引库、读写分离的机制以及Double Buffer机制来管理海量的索引。
10)相似视频识别服务:调用分布式向量检索服务,依据不同的索引库来实现不同场景和用途的相似视频识别,例如对于全局的视频相似识别场景、对大V头部账号视频的保护场景以及对新热内容(新热视频)的保护场景来说,对应的视频表示向量和有效期均存在不同。这里,可以通过相似视频识别服务,来识别视频是否为原创视频,例如,若确定出视频B与存储时间(上传时间)更早的视频A相似,则将视频B确定为非原创视频,进而可以执行删除视频B或者屏蔽视频B的操作,以保证原创视频的内容生产者的利益,鼓励上传原创视频。
11)内容消费端:作为消费者,与上下行内容接口服务通讯,获取多个视频的访问入口信息(例如内容消费端浏览的Feeds信息流包括多个信息流卡片,每个信息流卡片包括一个视频的标题、封面图像和发布账号名称,该信息流卡片即为访问入口信息)。内容消费端还用于响应于用户针对访问入口信息的触发操作(如点击操作),根据该访问入口信息与内容存储服务进行通讯,从而获取该访问入口信息对应的视频源文件,以进行播放。当然,内容消费端也可以与内容分发出口服务进行通讯,直接获取被推荐的视频。
在内容消费端下载并播放视频的过程中,可以将用户的行为数据、播放是否卡顿、视频的加载时长、播放点击量等数据发送给后端,以供统计分析。
通过本申请实施例,能够实现以下技术效果:1)融合了多个模态的信息,能够提升相似视频识别的精度,有效应对视频搬运者对视频的各种修改编辑,避免视频搬运者上传的视频成功绕过相似视频识别,适用于如短视频场景的各类视频场景。其中,对视频的修改编辑包括但不限于对封面图像的几何变换(如旋转、尺度改变及翻转等)、信号处理(如改变光照度及对比度等)、图像喧哗攻击(如高斯喧哗、水彩、运动模糊及马赛克瓷砖等)、对标题文本的修改(如同义词修改和语序修改)及对视频帧图像本身的修改(如裁剪和拼接等)。同时,能够提升视频链路的处理效率。
2)视频表示向量可以作为视频语义的描述,直接用于视频推荐的召回阶段和排序阶段。
3)通过相似视频识别,可以进行推荐展现层的打散,控制推荐密集和重复,能够有效改善用户的体验。
下面继续说明本申请实施例提供的基于人工智能的相似视频处理装置455实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的基于人工智能的相似视频处理装置455中的软件模块可以包括:第一特征提取模块4551,用于对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到图像的图像向量;第二特征提取模块4552,用于对视频中的音频进行特征提取处理,得到音频向量;第三特征提取模块4553,用于对视频中的文本进行特征提取处理,得到文本向量;融合模块4554,用于对图像向量、音频向量及文本向量进行融合处理,得到视频的视频表示向量;相似度确定模块4555,用于将任意两个视频的视频表示向量之间的向量相似度,作为两个视频之间的视频相似度;处理模块4556,用于根据视频相似度,对两个视频进行处理。
在一些实施例中,多个维度的特征向量包括目标特征向量、场景特征向量及人脸特征向量;第一特征提取模块4551,还用于:通过多分类的目标检测模型对图像进行特征提取处理,得到目标特征向量;通过场景识别模型对图像进行特征提取处理,得到场景特征向量;通过二分类的人脸检测模型对图像进行特征提取处理,得到人脸特征向量。
在一些实施例中,第一特征提取模块4551,还用于:根据视频的视频主题,确定目标特征向量、场景特征向量及人脸特征向量的权重;对目标特征向量、场景特征向量及人脸特征向量进行加权处理,得到图像的图像向量;其中,视频主题为目标检测模型对应的目标、场景识别模型对应的场景、以及人脸检测模型对应的人脸中的任意一种;符合视频主题的向量的权重大于不符合视频主题的向量的权重。
在一些实施例中,基于人工智能的相似视频处理装置455还包括:图像融合模块,用于对视频中多个图像的图像向量进行融合处理,得到整体图像向量;音频融合模块,用于对视频中多个图像对应的音频向量进行融合处理,得到整体音频向量;文本融合模块,用于对视频中多个文本的文本向量进行融合处理,得到整体文本向量;融合模块4554,还用于:对整体图像向量、整体音频向量及整体文本向量进行融合处理,得到视频的视频表示向量。
在一些实施例中,视频中用于进行特征提取处理的图像包括封面图像以及经过抽帧处理得到的多个抽帧图像;图像融合模块还用于:对多个抽帧图像的图像向量进行加权处理,得到全局图像向量;将全局图像向量与封面图像的图像向量进行拼接处理,得到整体图像向量。
在一些实施例中,基于人工智能的相似视频处理装置455还包括:抽帧模块,用于对视频中的多个视频帧图像进行遍历处理,并针对遍历到的视频帧图像执行以下处理:当遍历到的视频帧图像与相邻的视频帧图像在图像参数上的差异大于差异阈值时,将遍历到的视频帧图像作为抽帧处理得到的抽帧图像,并将与遍历到的视频帧图像相隔设定间隔的视频帧图像,作为抽帧处理得到的抽帧图像;其中,图像参数为亮度、对比度、清晰度及分辨率中的任意一种。
在一些实施例中,音频融合模块还用于:对多个抽帧图像对应的音频向量进行加权处理,得到整体音频向量。
在一些实施例中,视频中用于进行特征提取处理的文本包括标题文本、摘要文本、以及多个抽帧图像中的文本;文本融合模块还用于:对标题文本的文本向量、摘要文本的文本向量、以及多个抽帧图像中的文本的文本向量进行拼接处理,得到整体文本向量。
在一些实施例中,融合模块4554,还用于:对图像向量、音频向量及文本向量进行拼接处理、平均处理、乘积处理及加权处理中的至少一种处理,以得到视频的视频表示向量。
在一些实施例中,基于人工智能的相似视频处理装置455还包括:第一索引建立模块,用于将数据库中存储时间位于实时时间之前的设定时间段内的视频作为存量视频,在存量索引空间中建立多个存量视频的视频表示向量的索引;第二索引建立模块,用于将新视频作为增量视频存储至数据库,在增量索引空间中建立新视频的视频表示向量的索引;其中,增量索引空间中的索引用于周期性地迁移至存量索引空间中;索引读取模块,用于读取存量索引空间及增量索引空间,以确定新视频与多个待对比视频之间的视频相似度;其中,多个待对比视频包括多个存量视频、以及除新视频外的增量视频;非原创识别模块,用于当新视频与任意一个待对比视频之间的视频相似度大于第一相似度阈值时,将新视频识别为非原创视频。
在一些实施例中,存量视频的视频表示向量和新视频的视频表示向量用于存储至索引库中,索引库包括存量索引空间和增量索引空间;基于人工智能的相似视频处理装置455还包括:同步存储模块,用于将新视频的视频表示向量同步存储至正在使用的索引库的备用索引库副本;切换模块,用于当到达切换周期时,根据备用索引库副本中的存量视频的视频表示向量,在备用索引库副本的存量索引空间中重新建立索引,并将正在使用的索引库与备用索引库副本进行切换。
在一些实施例中,第一索引建立模块还用于:针对每个存量视频的视频表示向量,执行以下任意一种处理:将存量视频的视频表示向量,作为存量视频的视频表示向量的索引;对存量视频的视频表示向量进行哈希处理,将哈希处理得到的结果作为存量视频的视频表示向量的索引。
在一些实施例中,基于人工智能的相似视频处理装置455还包括:记录获取模块,用于获取针对历史用户的多条历史推荐记录;历史推荐记录包括历史用户的用户特征、已推荐视频的视频表示向量、以及历史用户对已推荐视频的触发结果;更新模块,用于根据多条历史推荐记录,对推荐模型的推荐参数进行更新;组合模块,用于将待推荐用户的用户特征与多个候选视频的视频表示向量分别进行组合处理,得到多个预测样本;预测模块,用于通过更新后的推荐模型,对预测样本进行预测处理,得到预测样本对应的候选视频的预测触发结果;结果筛选模块,用于根据预测触发结果从多个候选视频中筛选出待推荐的视频,并执行针对待推荐的视频的推荐操作。
在一些实施例中,处理模块4556,还用于:对待推荐的多个视频进行两两组合处理,得到多个视频组;当视频组中两个视频之间的视频相似度大于第二相似度阈值、且两个视频对应的视频参数不同时,筛选出两个视频中视频参数更高的视频;当视频组中两个视频之间的视频相似度大于第二相似度阈值、且两个视频对应的视频参数相同时,将两个视频中的任意一个视频作为筛选出的视频;执行针对筛选出的视频的推荐操作;其中,视频参数为视频的发布账号的等级、视频的帧率、清晰度及分辨率中的任意一种。
在一些实施例中,处理模块4556,还用于:当标注有视频标签的第一视频与未标注有视频标签的第二视频之间的视频相似度大于第三相似度阈值时,将第一视频的视频标签作为第二视频的视频标签;其中,视频标签为视频质量及视频主题中的任意一种。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的基于人工智能的相似视频处理方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图3A、图3B或图3C示出的基于人工智能的相似视频处理方法。值得说明的是,计算机包括终端设备和服务器在内的各种计算设备。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件***中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (14)
1.一种基于人工智能的相似视频处理方法,其特征在于,所述方法包括:
对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到所述图像的图像向量;
对所述视频中的音频进行特征提取处理,得到音频向量;
对所述视频中的文本进行特征提取处理,得到文本向量;
对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量;
将数据库中存储时间位于实时时间之前的设定时间段内的视频确定为存量视频,在存量索引空间中建立多个所述存量视频的视频表示向量的索引;
将新视频作为增量视频存储至所述数据库,在增量索引空间中建立所述新视频的视频表示向量的索引;其中,所述增量索引空间中的索引用于周期性地迁移至所述存量索引空间中;所述存量视频的视频表示向量和所述新视频的视频表示向量用于存储至索引库中,所述索引库包括所述存量索引空间和所述增量索引空间;所述存量索引空间只读,且所述增量索引空间同时支持读写;
将所述新视频的视频表示向量同步存储至正在使用的索引库的备用索引库副本;
当到达切换周期时,根据所述备用索引库副本中的存量视频的视频表示向量,在所述备用索引库副本的存量索引空间中重新建立索引,并将所述正在使用的索引库与所述备用索引库副本进行切换;
读取所述存量索引空间及所述增量索引空间,以确定所述新视频与多个待对比视频之间的视频相似度;其中,所述多个待对比视频包括多个所述存量视频、以及除所述新视频外的增量视频;
根据所述视频相似度,对所述新视频与所述待对比视频进行处理。
2.根据权利要求1所述的方法,其特征在于,
所述多个维度的特征向量包括目标特征向量、场景特征向量及人脸特征向量;
所述对视频中的图像进行多个维度的特征提取处理,包括:
通过多分类的目标检测模型对所述图像进行特征提取处理,得到所述目标特征向量;
通过场景识别模型对所述图像进行特征提取处理,得到所述场景特征向量;
通过二分类的人脸检测模型对所述图像进行特征提取处理,得到所述人脸特征向量。
3.根据权利要求2所述的方法,其特征在于,所述将提取得到的多个维度的特征向量进行融合处理,得到所述图像的图像向量,包括:
根据所述视频的视频主题,确定所述目标特征向量、所述场景特征向量及所述人脸特征向量的权重;
对所述目标特征向量、所述场景特征向量及所述人脸特征向量进行加权处理,得到所述图像的图像向量;
其中,所述视频主题为所述目标检测模型对应的目标、所述场景识别模型对应的场景、以及所述人脸检测模型对应的人脸中的任意一种;符合所述视频主题的向量的权重大于不符合所述视频主题的向量的权重。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述视频中多个图像的图像向量进行融合处理,得到整体图像向量;
对所述视频中所述多个图像对应的音频向量进行融合处理,得到整体音频向量;
对所述视频中多个文本的文本向量进行融合处理,得到整体文本向量;
所述对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量,包括:
对所述整体图像向量、所述整体音频向量及所述整体文本向量进行融合处理,得到所述视频的视频表示向量。
5.根据权利要求4所述的方法,其特征在于,
所述视频中用于进行特征提取处理的图像包括封面图像以及经过抽帧处理得到的多个抽帧图像;
所述对所述视频中多个图像的图像向量进行融合处理,得到整体图像向量,包括:
对所述多个抽帧图像的图像向量进行加权处理,得到全局图像向量;
将所述全局图像向量与所述封面图像的图像向量进行拼接处理,得到整体图像向量。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
对所述视频中的多个视频帧图像进行遍历处理,并针对遍历到的视频帧图像执行以下处理:
当所述遍历到的视频帧图像与相邻的视频帧图像在图像参数上的差异大于差异阈值时,将所述遍历到的视频帧图像作为抽帧处理得到的抽帧图像,并
将与所述遍历到的视频帧图像相隔设定间隔的视频帧图像,作为抽帧处理得到的抽帧图像;
其中,所述图像参数为亮度、对比度、清晰度及分辨率中的任意一种。
7.根据权利要求5所述的方法,其特征在于,
所述对所述视频中所述多个图像对应的音频向量进行融合处理,得到整体音频向量,包括:
对所述多个抽帧图像对应的音频向量进行加权处理,得到整体音频向量;
所述对所述视频中多个文本的文本向量进行融合处理,得到整体文本向量,包括:
对所述视频的标题文本的文本向量、摘要文本的文本向量、以及所述多个抽帧图像中的文本的文本向量进行拼接处理,得到整体文本向量。
8.根据权利要求1所述的方法,其特征在于,所述对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量,包括:
对所述图像向量、所述音频向量及所述文本向量进行拼接处理、平均处理、乘积处理及加权处理中的至少一种处理,以得到所述视频的视频表示向量。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述视频相似度,对所述新视频与所述待对比视频进行处理,包括:
当所述新视频与任意一个所述待对比视频之间的视频相似度大于第一相似度阈值时,将所述新视频识别为非原创视频。
10.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述视频相似度,对所述新视频与所述待对比视频进行处理,包括:
对待推荐的多个视频进行两两组合处理,得到多个视频组;
当所述视频组中两个视频之间的视频相似度大于第二相似度阈值、且所述两个视频对应的视频参数不同时,筛选出所述两个视频中视频参数更高的视频;
当所述视频组中两个视频之间的视频相似度大于所述第二相似度阈值、且所述两个视频对应的视频参数相同时,将所述两个视频中的任意一个视频作为筛选出的视频;
执行针对筛选出的视频的推荐操作;
其中,所述视频参数为所述视频的发布账号的等级、所述视频的帧率、清晰度及分辨率中的任意一种。
11.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述视频相似度,对所述新视频与所述待对比视频进行处理,包括:
当标注有视频标签的第一视频与未标注有视频标签的第二视频之间的视频相似度大于第三相似度阈值时,将所述第一视频的视频标签作为所述第二视频的视频标签;
其中,所述视频标签为视频质量及视频主题中的任意一种。
12.一种基于人工智能的相似视频处理装置,其特征在于,包括:
第一特征提取模块,用于对视频中的图像进行多个维度的特征提取处理,将提取得到的多个维度的特征向量进行融合处理,得到所述图像的图像向量;
第二特征提取模块,用于对所述视频中的音频进行特征提取处理,得到音频向量;
第三特征提取模块,用于对所述视频中的文本进行特征提取处理,得到文本向量;
融合模块,用于对所述图像向量、所述音频向量及所述文本向量进行融合处理,得到所述视频的视频表示向量;
相似度确定模块,将数据库中存储时间位于实时时间之前的设定时间段内的视频作为存量视频,在存量索引空间中建立多个所述存量视频的视频表示向量的索引;将新视频作为增量视频存储至所述数据库,在增量索引空间中建立所述新视频的视频表示向量的索引;其中,所述增量索引空间中的索引用于周期性地迁移至所述存量索引空间中;所述存量视频的视频表示向量和所述新视频的视频表示向量用于存储至索引库中,所述索引库包括所述存量索引空间和所述增量索引空间;所述存量索引空间只读,且所述增量索引空间同时支持读写;将所述新视频的视频表示向量同步存储至正在使用的索引库的备用索引库副本;当到达切换周期时,根据所述备用索引库副本中的存量视频的视频表示向量,在所述备用索引库副本的存量索引空间中重新建立索引,并将所述正在使用的索引库与所述备用索引库副本进行切换;读取所述存量索引空间及所述增量索引空间,以确定所述新视频与多个待对比视频之间的视频相似度;其中,所述多个待对比视频包括多个所述存量视频、以及除所述新视频外的增量视频;
处理模块,用于根据所述视频相似度,对所述新视频与所述待对比视频进行处理。
13.一种电子设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至11任一项所述的基于人工智能的相似视频处理方法。
14.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至11任一项所述的基于人工智能的相似视频处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011080112.4A CN112203122B (zh) | 2020-10-10 | 2020-10-10 | 基于人工智能的相似视频处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011080112.4A CN112203122B (zh) | 2020-10-10 | 2020-10-10 | 基于人工智能的相似视频处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112203122A CN112203122A (zh) | 2021-01-08 |
CN112203122B true CN112203122B (zh) | 2024-01-26 |
Family
ID=74013351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011080112.4A Active CN112203122B (zh) | 2020-10-10 | 2020-10-10 | 基于人工智能的相似视频处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112203122B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836487B (zh) * | 2021-02-07 | 2023-01-24 | 四川封面传媒有限责任公司 | 一种自动评论方法、装置、计算机设备及存储介质 |
CN112905840A (zh) * | 2021-02-09 | 2021-06-04 | 北京有竹居网络技术有限公司 | 视频处理方法、装置、存储介质及设备 |
CN113051236B (zh) * | 2021-03-09 | 2022-06-07 | 北京沃东天骏信息技术有限公司 | 审核视频的方法、装置及计算机可读存储介质 |
CN112818955B (zh) * | 2021-03-19 | 2023-09-15 | 北京市商汤科技开发有限公司 | 一种图像分割方法、装置、计算机设备以及存储介质 |
CN113761589A (zh) * | 2021-04-21 | 2021-12-07 | 腾讯科技(北京)有限公司 | 视频检测的方法、装置及电子设备 |
CN113177136B (zh) * | 2021-04-27 | 2022-04-22 | 桂林电子科技大学 | 基于注意力的音频和歌词的多模态音乐风格分类方法 |
CN113326735B (zh) * | 2021-04-29 | 2023-11-28 | 南京大学 | 一种基于YOLOv5的多模态小目标检测方法 |
CN113761282B (zh) * | 2021-05-11 | 2023-07-25 | 腾讯科技(深圳)有限公司 | 视频查重方法、装置、电子设备以及存储介质 |
CN113052149B (zh) * | 2021-05-20 | 2021-08-13 | 平安科技(深圳)有限公司 | 视频摘要生成方法、装置、计算机设备及介质 |
CN113407488A (zh) * | 2021-06-17 | 2021-09-17 | 北京金山云网络技术有限公司 | 文件的存储转换处理方法、装置、电子设备及存储介质 |
CN113591655A (zh) * | 2021-07-23 | 2021-11-02 | 上海明略人工智能(集团)有限公司 | 视频的对比损失计算方法、***、存储介质及电子设备 |
CN113672627B (zh) * | 2021-09-08 | 2023-08-18 | 湖南惠农科技有限公司 | Elasticsearch搜索引擎索引构建方法及装置 |
CN114363660B (zh) * | 2021-12-24 | 2023-09-08 | 腾讯科技(武汉)有限公司 | 视频合集确定方法、装置、电子设备及存储介质 |
CN114579805B (zh) * | 2022-03-01 | 2023-03-28 | 北京赛思信安技术股份有限公司 | 一种基于注意力机制的卷积神经网络相似视频检索方法 |
CN114610905B (zh) * | 2022-03-23 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关装置 |
CN114842239B (zh) * | 2022-04-02 | 2022-12-23 | 北京医准智能科技有限公司 | 一种基于超声视频的乳腺病灶属性预测方法及装置 |
CN115499707A (zh) * | 2022-09-22 | 2022-12-20 | 北京百度网讯科技有限公司 | 视频相似度的确定方法和装置 |
CN116320535B (zh) * | 2023-04-14 | 2024-03-22 | 北京百度网讯科技有限公司 | 生成视频的方法、装置、电子设备及存储介质 |
CN116186330B (zh) * | 2023-04-23 | 2023-07-11 | 之江实验室 | 一种基于多模态学习的视频去重方法及装置 |
CN117292303B (zh) * | 2023-11-22 | 2024-03-08 | 北京小糖科技有限责任公司 | 判断分段视频类型的方法、装置及电子设备 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6741655B1 (en) * | 1997-05-05 | 2004-05-25 | The Trustees Of Columbia University In The City Of New York | Algorithms and system for object-oriented content-based video search |
KR20110095513A (ko) * | 2010-02-19 | 2011-08-25 | 연세대학교 산학협력단 | 특징 추출 방법 및 그 장치 |
CN104050628A (zh) * | 2013-03-11 | 2014-09-17 | 佳能株式会社 | 图像处理方法和图像处理装置 |
CN108376169A (zh) * | 2018-02-26 | 2018-08-07 | 众安信息技术服务有限公司 | 一种用于联机分析处理的数据处理方法和装置 |
CN108564052A (zh) * | 2018-04-24 | 2018-09-21 | 南京邮电大学 | 基于mtcnn的多摄像头动态人脸识别***与方法 |
CN108614838A (zh) * | 2016-12-13 | 2018-10-02 | 腾讯科技(北京)有限公司 | 一种用户群索引处理方法、装置及*** |
CN108829826A (zh) * | 2018-06-14 | 2018-11-16 | 清华大学深圳研究生院 | 一种基于深度学习和语义分割的图像检索方法 |
CN108900769A (zh) * | 2018-07-16 | 2018-11-27 | Oppo广东移动通信有限公司 | 图像处理方法、装置、移动终端及计算机可读存储介质 |
CN110196844A (zh) * | 2018-04-16 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 一种数据迁移方法、***及存储介质 |
CN110225373A (zh) * | 2019-06-13 | 2019-09-10 | 腾讯科技(深圳)有限公司 | 一种视频审核方法、装置及电子设备 |
CN111368141A (zh) * | 2020-03-18 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 视频标签的扩展方法、装置、计算机设备和存储介质 |
CN111581437A (zh) * | 2020-05-07 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种视频检索方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012167568A1 (zh) * | 2011-11-23 | 2012-12-13 | 华为技术有限公司 | 视频广告播放方法、设备和*** |
US9262511B2 (en) * | 2012-07-30 | 2016-02-16 | Red Lambda, Inc. | System and method for indexing streams containing unstructured text data |
-
2020
- 2020-10-10 CN CN202011080112.4A patent/CN112203122B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6741655B1 (en) * | 1997-05-05 | 2004-05-25 | The Trustees Of Columbia University In The City Of New York | Algorithms and system for object-oriented content-based video search |
KR20110095513A (ko) * | 2010-02-19 | 2011-08-25 | 연세대학교 산학협력단 | 특징 추출 방법 및 그 장치 |
CN104050628A (zh) * | 2013-03-11 | 2014-09-17 | 佳能株式会社 | 图像处理方法和图像处理装置 |
CN108614838A (zh) * | 2016-12-13 | 2018-10-02 | 腾讯科技(北京)有限公司 | 一种用户群索引处理方法、装置及*** |
CN108376169A (zh) * | 2018-02-26 | 2018-08-07 | 众安信息技术服务有限公司 | 一种用于联机分析处理的数据处理方法和装置 |
CN110196844A (zh) * | 2018-04-16 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 一种数据迁移方法、***及存储介质 |
CN108564052A (zh) * | 2018-04-24 | 2018-09-21 | 南京邮电大学 | 基于mtcnn的多摄像头动态人脸识别***与方法 |
CN108829826A (zh) * | 2018-06-14 | 2018-11-16 | 清华大学深圳研究生院 | 一种基于深度学习和语义分割的图像检索方法 |
CN108900769A (zh) * | 2018-07-16 | 2018-11-27 | Oppo广东移动通信有限公司 | 图像处理方法、装置、移动终端及计算机可读存储介质 |
CN110225373A (zh) * | 2019-06-13 | 2019-09-10 | 腾讯科技(深圳)有限公司 | 一种视频审核方法、装置及电子设备 |
CN111368141A (zh) * | 2020-03-18 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 视频标签的扩展方法、装置、计算机设备和存储介质 |
CN111581437A (zh) * | 2020-05-07 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种视频检索方法及装置 |
Non-Patent Citations (1)
Title |
---|
苏筱涵 ; 丰洪才 ; 吴诗尧 ; .基于深度网络的多模态视频场景分割算法.武汉理工大学学报(信息与管理工程版).2020,(第03期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN112203122A (zh) | 2021-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112203122B (zh) | 基于人工智能的相似视频处理方法、装置及电子设备 | |
KR20210040891A (ko) | 정보 추천 방법과 장치, 전자 장비, 컴퓨터 판독가능 저장 매체 및 컴퓨터 프로그램 | |
CN116702737B (zh) | 文案生成方法、装置、设备、存储介质及产品 | |
CN112749326B (zh) | 信息处理方法、装置、计算机设备及存储介质 | |
CN112231563B (zh) | 一种内容推荐方法、装置及存储介质 | |
CN112131449A (zh) | 一种基于ElasticSearch的文化资源级联查询接口的实现方法 | |
CN109344298A (zh) | 一种将非结构化数据转化为结构化数据的方法及装置 | |
CN111368141B (zh) | 视频标签的扩展方法、装置、计算机设备和存储介质 | |
US20180203691A1 (en) | Cognitive feature analytics | |
CN113011126B (zh) | 文本处理方法、装置、电子设备及计算机可读存储介质 | |
CN113704506A (zh) | 一种媒体内容排重方法和相关装置 | |
CN112417133A (zh) | 排序模型的训练方法和装置 | |
CN112989167B (zh) | 搬运账号的识别方法、装置、设备及计算机可读存储介质 | |
KR102523839B1 (ko) | 객체 레이블링을 통한 사용자맞춤 이미지식별 딥러닝 모델 생성을 위한 시스템 및 이의 운용 방법 | |
CN116956117A (zh) | 一种标签识别的方法、装置、设备、存储介质及程序产品 | |
KR20110085829A (ko) | 소셜 미디어 콘텐츠 공유 장치 및 방법 | |
CN116755688A (zh) | 组件处理方法、装置、计算机设备及存储介质 | |
CN116955777A (zh) | 内容的审核方法、装置、设备、介质及计算机程序产品 | |
KR20130082712A (ko) | 콘텐츠의 생성 및 소비에 기반한 개인 정보 제공 시스템 | |
CN116894089B (zh) | 摘要生成方法、装置、设备、存储介质及产品 | |
CN115858685B (zh) | 需求文件的在线同步方法和装置、终端、可读存储介质 | |
US11804245B2 (en) | Video data size reduction | |
CN115909390B (zh) | 低俗内容识别方法、装置、计算机设备以及存储介质 | |
CN113407714B (zh) | 基于时效的数据处理方法、装置、电子设备及存储介质 | |
Verma et al. | An open source library to parse and analyze online collaborative knowledge-building portals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40037823 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |