CN113515668A - 视频聚类方法及装置 - Google Patents

视频聚类方法及装置 Download PDF

Info

Publication number
CN113515668A
CN113515668A CN202110025310.9A CN202110025310A CN113515668A CN 113515668 A CN113515668 A CN 113515668A CN 202110025310 A CN202110025310 A CN 202110025310A CN 113515668 A CN113515668 A CN 113515668A
Authority
CN
China
Prior art keywords
video
sample
videos
feature vector
clustering
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.)
Pending
Application number
CN202110025310.9A
Other languages
English (en)
Inventor
徐鹏飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110025310.9A priority Critical patent/CN113515668A/zh
Publication of CN113515668A publication Critical patent/CN113515668A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/75Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/7867Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

本申请涉及人工智能技术领域,具体提供了一种视频聚类方法及装置,该方法包括:获取视频集合,视频集合包括多个待处理的视频;通过特征提取模型对视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;特征提取模型是利用多个样本视频的图像信息和样本视频对应的标签信息对原始模型进行训练得到的,标签信息包括用于描述样本视频在多个样本视频中的编号的第一标签,以及用于描述样本视频所属聚类类别的第二标签:不同样本视频的第一标签不同;根据各视频的视频语义特征向量对视频集合中的视频进行聚类,将视频集合中各视频划分为至少一个聚类类别;本方案减少了对样本视频进行标注的工作量而且保证了对视频的聚类准确度。

Description

视频聚类方法及装置
技术领域
本申请涉及人工智能技术领域,具体而言,涉及一种视频聚类方法及装置。
背景技术
在视频搜索领域中,为了便于视频的搜索,一般需要对视频进行分类。现有的视频分类方法中,一般是利用基于深度学习构建的特征提取模型来提取得到视频的特征向量,然后根据视频的特征向量对视频进行分类。为了保证特征提取模型所提取得到特征向量的准确度,需要通过样本数据对该特征提取模型进行训练。实际中,需要相关人员先观看样本数据中的样本视频,然后根据样本视频的内容为该样本视频标注可以表征该样本视频的内容的标签,以基于所标注的标签对特征提取模型进行有监督的训练。在该过程中,由于需要相关人员根据样本视频的视频内容进行标签标注,对样本视频进行标注的工作量大。
发明内容
本申请的实施例提供了一种视频聚类方法及装置,以解决现有技术中由于需要根据样本视频的内容进行视频标注所导致对样本视频进行标注的工作量大的问题。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种视频聚类方法,包括:
获取视频集合,所述视频集合包括多个待处理的视频;
通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;所述特征提取模型是利用多个样本视频的图像信息和所述样本视频对应的标签信息对原始模型进行训练得到的,所述标签信息包括用于描述所述样本视频在多个样本视频中的编号的第一标签,以及用于描述所述样本视频所属聚类类别的第二标签:所述原始模型包括第一分支网络和聚类模块,所述第一分支网络用于学习所述样本视频的图像信息以及所述第一标签,所述聚类模块用于辅助所述第一分支网络学习所述第二标签;其中,不同样本视频的第一标签不同;
根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别。
根据本申请实施例的一个方面,提供了一种视频聚类装置,所述装置包括:
视频集合获取模块,用于获取视频集合,所述视频集合包括多个待处理的视频;
特征提取模块,用于通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;所述特征提取模型是利用多个样本视频的图像信息和所述样本视频对应的标签信息对原始模型进行训练得到的,所述标签信息包括用于描述所述样本视频在多个样本视频中的序列编号的第一标签,以及用于描述所述样本视频所属聚类类别的第二标签:所述原始模型包括第一分支网络和聚类模块,所述第一分支网络用于学习所述样本视频的图像信息以及所述第一标签,所述聚类模块用于辅助所述第一分支网络学习所述第二标签;其中,不同样本视频的第一标签不同;
视频聚类模块,用于根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别。
根据本申请实施例的一个方面,提供了一种电子设备,包括:处理器;存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如上所述的视频聚类方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,实现如上所述的视频聚类方法。
在本申请的方案中,将样本视频集合中各样本视频对应的编号作为样本视频的第一标签,将根据样本视频的特征向量进行聚类所得到的聚类类别作为样本视频的第二标签,并以此为基础,对用于提取视频的视频语义特征的特征提取模型进行训练。由于不同的样本视频的第一标签不同,相当于在根据样本视频的第一标签进行训练过程中,每一样本视频视为一个类别,因此,进行第一迭代训练可以使第一分支网络准确辨别不同视频的特征。在此基础上,结合样本视频的第二标签对第一分支网络进行训练,由于第二标签描述了样本视频所属的聚类类别,在基于样本视频的语义特征进行聚类的过程中,相似的视频语义特征向量才会聚为同一聚类类别,不相似的视频语义特征向量会对应不同的聚类类别,因此,在基于第一标签进行训练的基础上,通过样本视频的第二标签进行监督,会使得第一分支网络针对相似的视频所输出的视频语义特征向量之间的距离会越来越近,而针对不相似的视频所输出的视频语义特征向量的距离会越来越远。在对第一分支网络进行训练结束后,将该第一分支网络作为特征提取模型针对不相似的视频所提取的视频语义特征向量之间的区别度增大,而针对相似的视频所提取的视频语义特征向量之间更紧凑,因此,便于根据所得到视频语义特征向量进行视频聚类,保证了视频聚类的准确度。
而且在本申请的方案中,不需要通过人工来根据视频的内容对样本视频进行标注,而仅仅只需要对样本视频进行顺序编号,大幅减少了对样本视频进行标注的工作量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
图2是根据本申请的一个实施例示出的视频聚类方法的流程图。
图3是根据一实施例示出的对第一分支网络进行训练的流程图。
图4是根据一实施例示出的在一个训练周期内对第一分支网络进行训练的流程图。
图5是根据一实施例示出的步骤220的流程图。
图6是根据一实施例示出的对第一分支网络进行训练的示意图。
图7是根据本申请一实施例示出的步骤230之后步骤的流程图。
图8是根据一实施例示出的视频播放的界面示意图。
图9是根据一实施例示出的视频聚类装置的框图。
图10示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
在视频搜索领域中,为了便于视频的搜索,一般需要对视频进行分类。现有的视频分类方法中,一般是利用基于深度学习构建的特征提取模型来提取得到视频的特征向量,然后根据视频的特征向量对视频进行分类。为了保证特征提取模型所提取得到特征向量的准确度,需要通过样本数据对该特征提取模型进行训练。实际中,需要相关人员先观看样本数据中的样本视频,然后根据样本视频的内容为该样本视频标注可以表征该样本视频的内容的标签,以基于所标注的标签对特征提取模型进行有监督的训练。在该过程中,由于需要相关人员根据样本视频的视频内容进行标签标注,构建样本数据的工作量大。为了解决该问题,提出了本申请的方案。
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
如图1所示,系统架构可以包括终端设备(如图1中所示智能手机101、平板电脑102和便携式计算机103中的一种或多种,当然也可以是台式计算机等)、网络104和服务器105。网络104用以在终端设备和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线通信链路、无线通信链路等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
本申请的视频聚类方法可以由服务器105执行,其中,用户可以通过终端设备将视频上传到服务器105中,从而服务器105基于各个终端设备所上传的视频构建视频集合。然后服务器105按照本申请的方案对视频集合中的各个视频进行聚类,确定各个视频所属的聚类类别。
在本申请的一些实施例中,服务器105还可以基于视频所所属的聚类类型进行视频的推送,服务器105可以获取终端设备当前所播放视频的聚类类型,然后从未播放视频集合中选取该聚类类型的视频作为待向终端设备推送的视频。在此基础上,可以便于终端设备所在的用户浏览相似的视频。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图2示出了根据本申请的一个实施例示出的视频聚类方法的流程图,该方法可以由具备处理能力的计算机设备执行,例如笔记本电脑、台式电脑、智能手机、服务器等,在此不进行具体限定。参照图2所示,该方法至少包括步骤210至230,详细介绍如下:
步骤210,获取视频集合,所述视频集合包括多个待处理的视频。
步骤220,通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;所述特征提取模型是利用多个样本视频的图像信息和所述样本视频对应的标签信息对原始模型进行训练得到的,所述标签信息包括用于描述所述样本视频在多个样本视频中的编号的第一标签,以及用于描述所述样本视频所属聚类类别的第二标签:所述原始模型包括第一分支网络和聚类模块,所述第一分支网络用于学习所述样本视频的图像信息以及所述第一标签,所述聚类模块用于辅助所述第一分支网络学习所述第二标签;其中,不同样本视频的第一标签不同;
视频的视频帧序列可以是通过分帧和采样得到。
在本申请的一些实施例中,步骤210之前,该方法还包括:对所述视频进行分帧,得到所述视频的初始视频帧序列;在所述视频的初始视频帧序列中进行采样,得到所述视频的视频帧序列。在具体实施例中,可以通过设定采样率从而来限定视频帧序列中视频帧的数量,例如,通过设定采样率来保证每一视频的视频帧序列中包括8张视频帧。
视频的语义特征向量用于表征视频的语义,视频的语义特征就是从人的角度抽象出视频所包含和反映的内容,例如车辆在立交桥上行驶、有人在大笑等是通过人的理解抽象出来的语义特征。对于视频而言,其不仅包含空间域的结构信息,还包含时间域的前后文信息,因此特征提取模型需要能够在空间域和时间域上对视频进行特征提取。
在本申请的方案中,特征提取模型是对原始模型进行训练得到的。该原始模型包括第一分支网络,在训练结束后,将训练后的第一分支网络作为特征提取模型。第一分支网络可以是通过卷积神经网络构建的。在本申请的一些实施例中,基于三维(three-dimensional,3D)卷积模型可以对视频的空间域特征和时序特征进行融合,提取到表征视频中所呈现画面内容的特征的特点,该特征提取模型可以是3D卷积模型。3D卷积模型是通过堆叠多个连续的视频帧组成一个立方体,然后在立方体中运用3D卷积核,在该3D卷积模型中,卷积层中每一个特征图都会与上一层中多个邻近的视频帧相连,从而捕捉到视频中的运动信息。
在本申请的一些实施例中,第一分支网络还可以是时移(Temporal ShiftModule,TSM)神经网络模型,TSM神经网络模型是一个保持2D卷积模型的复杂度但却能达到3D卷积模型的效果的神经网络模型。TSM神经网络模型是在2D卷积模型中增加TSM模块,该TSM模块通过沿时间维度的特征图来执行有效的时间建模,它在2D卷积的基础上没有多余的计算量,但实现了强大的时间建模能力。该TSM神经网络模型将2D卷积操作分解为位移和权值叠加两个过程,对时空上下文信息进行融合的同时不引入大量计算,换言之,该TSM神经网络模型具有与3D卷积模型相同的时空建模能力,同时享有与2D卷积模型相同的计算和参数。
在一具体实施例中,第一分支网络可以是ResNet神经网络,即50层的残差网络。
为了保证特征提取模型为视频所输出视频语义特征向量的准确性,在步骤210之前,还需要通过样本视频对该原始模型进行训练。
在本申请的实施例中,通过训练样本集中的样本视频对该特征提取模型进行训练。具体在本申请的方案中,基于训练样本集中各样本视频的图像信息和样本视频的标签信息(第一标签和第二标签),对特征提取模型交替进行训练。具体的,可以基于样本视频的图像信息和样本视频的第一标签对原始模型进行训练,然后再基于样本视频的图像信息和样本视频的第二标签对原始模型进行训练。
样本视频的图像信息是通过样本视频的视频帧序列来体现的,因此,在进行训练之前,通过对样本视频进行分帧和采样,得到样本视频的视频帧序列。
在本申请的方案中,第一标签用于描述样本视频在多个样本视频中的编号。因此,在对原始模型进行训练之前,对训练样本集中的样本视频进行编号,不同的样本视频其对应的编号也不相同。在本申请的一些实施例中,可以对训练样本集中的样本视频进行顺序编号,一个编号唯一对应一个样本视频。
在本申请的方案中,第二标签用于描述样本视频所属的聚类类别,其中,样本视频所属的聚类类别是根据样本视频的视频语义特征向量来进行聚类确定的。换言之,为了确定样本视频的第二标签,先通过原始模型中的第一分支网络对样本视频的视频帧序列进行特征提取,得到样本视频的视频语义特征向量;在此基础上,由聚类模块根据各样本视频的视频语义特征向量对训练样本集中的样本视频进行聚类,对应确定样本视频所属的聚类类别。
在本申请的一些实施例中,可以对每个聚类类别进行编号,然后对应将样本视频所属的聚类类别对应的编号作为样本视频的第二标签。为了进行区分,可以将聚类类别对应的编号称为第二编号。
聚类模块可以按照聚类算法基于样本视频的视频语义特征向量对训练样本集中的样本视频进行聚类,聚类算法可以是K-均值聚类(K-means Clustering)算法、均值漂移聚类算法、利用高斯混合模型进行最大期望估计的聚类算法、凝聚层次聚类算法等,在此不进行具体限定。
在训练过程中,通过第一分支网络对样本视频的视频帧序列进行特征提取,得到样本视频的视频语义特征向量,然后根据样本视频的视频语义特征向量和各样本视频的第一标签计算第一分支网络的目标损失函数的损失函数值,进而基于所得到的损失函数值反向调整第一分支网络的参数。
在根据样本视频的第一标签训练一段时间后,通过样本视频的第二标签来对第一分支网络进行训练。具体的,由进行参数调整后的第一分支网络再次对样本视频的视频帧序列进行特征提取,得到样本视频的视频语义特征向量,然后根据所再次得到的样本视频的视频语义特征向量对训练样本集中的样本视频进行聚类,将训练样本集中的样本视频划分至至少一个聚类类别,从而确定各样本视频所属的聚类类别,对应得到样本视频的第二标签。在此基础上,根据所再次得到样本视频的视频语义特征向量和样本视频的第二标签计算目标损失函数的损失函数值,并调整第一分支网络的参数。
为便于描述,将基于样本视频的第一标签对第一分支网络所进行的迭代训练称为第一迭代训练,将基于样本视频的第二标签对第一分支网络所进行的迭代训练称为第二迭代训练。
图3是根据一实施例示出的对第一分支网络进行训练的流程图,如图3所示,在第一迭代训练过程中,由第一分支网络根据样本视频的视频帧序列得到该样本视频的视频语义特征向量后,根据该样本视频的第一标签和样本视频的视频语义特征向量计算目标损失函数的函数值,进而根据该目标损失函数的损失函数值来反向调整第一分支网络的参数。在第二迭代训练过程中,在通过第一分支网络进行特征提取得到样本视频的视频语义特征向量后,根据各样本视频的视频语义特征向量对训练样本集中的样本视频进行聚类,确定各样本视频所属的聚类类别,进而确定样本视频的第二标签;在此基础上,基于样本视频的第二标签和样本视频的视频语义特征向量计算目标损失函数的损失函数值,进而根据该目标损失函数的损失函数值来反向调整第一分支网络的参数。
请继续参阅图2,步骤230,根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别。在本申请的一些实施例中,可以直接将该视频的视频语义特征向量作为该视频的特征向量,然后基于视频的特征向量进行聚类。
在本申请的一些实施例中,还可以结合该视频的其他信息和该视频的视频语义特征向量来生成视频的特征向量,然后再基于视频的特征向量进行聚类。
在一实施例中,步骤220进一步包括:获取所述视频的附加特征向量,所述附加特征向量包括音频语义特征向量、字符语义特征向量和标题语义特征向量中的至少一项;所述音频语义特征向量是对所述视频中的音频进行语义特征提取得到的;所述字符语义特征向量是对所述视频的视频帧中的字符进行语义特征提取得到的;所述标题语义特征向量是对所述视频的标题文本进行语义特征提取得到的;将所述视频的视频语义特征向量与所述视频的附加特征向量进行融合,得到所述视频的特征向量。
对于视频而言,其中可能包括音频,例如视频中的背景音、人物对话、旁白等,通过对视频中的音频进行语义特征提取,可以对应得到该视频的音频语义特征向量。在一实施例中,可以通过语音识别模型来对视频中的音频进行语义特征提取。
视频的标题文本可以是上传该视频的用户为该视频所设定的标题。视频的标题语义特征向量可以对该视频的标题文本进行语义特征提取得到。
对于视频而言,在视频序列的视频帧中可能存在字符,例如文字。因此,可以对存在字符的视频帧进行光学字符识别(Optical Character Recognition,OCR),然后对所识别出的字符进行语义特征提取的,即得到该视频帧中字符的字符语义特征向量。可以理解的是,在视频对应的视频帧序列中,可能存在多个视频帧中均存在字符,因此,该视频的字符语义特征向量是将各视频帧的字符语义特征向量进行融合得到的。其中,将各视频帧的字符语义特征向量进行融合的一种实施方式可以是将各视频帧的字符语义特征向量进行拼接。
其中,可以将视频的视频语义特征向量与附加特征向量进行拼接,实现视频语义特征向量与附加特征向量的融合。
在本实施例的方案中,通过将视频的视频语义特征向量与视频的附加特征向量进行融合,得到该视频的特征向量,从而,使得该特征向量可以多维度地反映视频的特征。
在本申请的一些实施例中,可以通过K-均值聚类(K-means Clustering)算法、均值漂移聚类算法、利用高斯混合模型进行最大期望估计的聚类算法、凝聚层次聚类算法等来对视频集合中的视频进行聚类,在此不进行具体限定。
在本申请的一具体实施例中,采用K-均值聚类算法对样本视频集合中的样本视频进行聚类。具体的,先设定类别总数,例如为K;然后将样本视频集合中的样本视频分为K组,在每一组样本视频中,随机选取一样本视频的特征向量作为该组样本视频初始的聚类中心;再计算每一样本视频的特征向量与各个聚类中心之间的距离,并把每个样本视频分配给距离它最近的聚类中心,聚类中心所对应样本视频以及分配给该聚类中心的样本视频就代表一个聚类,一个聚类对应于一个聚类类别。其中,每向聚类中心分配一个样本视频,聚类的聚类中心会根据聚类中现有的样本视频的特征向量被重新计算。重复上述过程直到满足聚类结束条件。
聚类结束条件可以是相较于上一次的聚类结果,本次聚类结果中被分配给不同的聚类中心的样本视频的数量不超过第一预设数量(第二预设数量例如0,或者大于0的整数);聚类结束条件还可以是相较于上一次的聚类结果,聚类中心发生变化的聚类的数量不超过第二预设数量(该第二预设数量例如0,或者大于0的整数)。
在本申请的一些实施例中,可以设定类别总数,从而按照该类别总数进行聚类,则在完成聚类后,视频集合中的视频被划分至所设定类别总数个聚类类别中。
在本申请的方案中,将样本视频集合中各样本视频对应的编号作为样本视频的第一标签,将根据样本视频的特征向量进行聚类所得到的聚类类别作为样本视频的第二标签,并以此为基础,对用于提取视频的视频语义特征的特征提取模型进行训练。由于不同的样本视频的第一标签不同,相当于在根据样本视频的第一标签进行训练过程中,每一样本视频视为一个类别,因此,进行第一迭代训练可以使第一分支网络准确辨别不同视频的特征。在此基础上,结合样本视频的第二标签对第一分支网络进行训练,由于第二标签描述了样本视频所属的聚类类别,在基于样本视频的语义特征进行聚类的过程中,相似的视频语义特征向量才会聚为同一聚类类别,不相似的视频语义特征向量会对应不同的聚类类别,因此,在基于第一标签进行训练的基础上,通过样本视频的第二标签进行监督,会使得第一分支网络针对相似的视频所输出的视频语义特征向量之间的距离会越来越近,而针对不相似的视频所输出的视频语义特征向量的距离会越来越远。在对第一分支网络进行训练结束,将该第一分支网络作为特征提取模型针对不相似的视频所提取的视频语义特征向量之间的区别度增大,而针对相似的视频所提取的视频语义特征向量之间更紧凑,因此,便于根据所得到视频语义特征向量进行视频聚类,保证了视频聚类的准确度。
而且在本申请的方案中,不需要通过人工来根据视频的内容对样本视频进行标注,而仅仅只需要对样本视频进行编号,大幅减少了对样本视频进行标注的工作量。
在本申请的一些实施例中,在步骤220之前,该方法还包括:利用训练样本集中多个样本视频的图像信息和所述样本视频对应的标签信息,对所述原始模型中的第一分支网络按训练周期交替进行第一迭代训练和第二迭代训练,得到训练后的第一分支网络;将训练后的第一分支网络作为所述特征提取模型。
具体的,在每一训练周期,按照如图4所示的过程对所述原始模型中的第一分支网络进行训练:
步骤410,根据所述样本视频的第一标签和所述样本视频的第一视频语义特征向量对所述第一分支网络进行第一迭代训练;所述样本视频的第一视频语义特征向量是上一训练周期中第二迭代训练完成后的第一分支网络对所述样本视频的视频帧序列进行特征提取得到的;在首个训练周期中,通过初始的第一分支网络对所述样本视频的视频帧序列进行特征提取得到对应的第一视频语义特征向量。
若所述第一迭代训练中的迭代次数达到第一设定次数,执行步骤420:根据所述样本视频的第二标签和所述样本视频的第二视频语义特征向量对所述第一分支网络进行第二迭代训练,直至第二迭代训练的迭代次数达到第二设定次数;其中,所述样本视频的第二视频语义特征向量是通过本次训练周期中第一迭代训练完成后的第一分支网络对所述样本视频的视频帧序列进行特征提取得到的。
如上所述,所述第一迭代训练是指根据所述样本视频的第一标签和所述样本视频的特征向量对所述第一分支网络所进行的迭代训练;所述第二迭代训练是指根据所述样本视频的第二标签和所述样本视频的特征向量对所述第一分支网络所进行的迭代训练。
可以理解的是,由于在训练的过程中,需要不断地调整第一分支网络的参数,调整参数后再次通过第一分支网络输出样本视频的视频语义特征向量,进而得到样本视频的特征向量。也就是说,样本视频的特征向量在随着训练过程中第一分支网络的参数的调整而发生变化,而样本视频的特征向量发生变化后,需要再次根据各样本视频的特征向量对样本视频集合中的样本视频进行聚类,进而重新将各样本视频划分为至少一个聚类类别,重新确定样本视频所属的聚类类别。
为便于描述,将在第一迭代训练过程中,第一分支网络为样本视频所提取得到的视频语义特征向量称为第一视频语义特征向量;其中,在第一迭代训练过程中,初始所得到的第一视频语义特征向量是通过上一训练周期中第二迭代训练结束后的第一分支网络对样本视频的视频帧序列进行特征提取得到的。将在第二迭代训练过程中,第一分支网络为样本视频所提取得到的视频语义特征向量称为第二视频语义特征向量;其中,在第二迭代训练过程中,初始所得到的第二视频语义特征向量是通过本次训练周期中第一迭代训练结束后的第一分支网络对样本视频的视频帧序列进行特征提取得到的。
在一个训练周期中,如果第一迭代训练中的迭代此时未达到第一设定次数,则继续对该第一分网络进行第一迭代训练;反之,如果第一迭代训练中的迭代次数达到第一设定次数后,对该第一分网络进行第二迭代训练,直到第二迭代训练中的迭代次数达到第二设定次数。其中,第一设定次数与第二设定次数可以根据实际需要进行设定,当然,第一设定次数与第二设定次数可以相等也可以不相等。
在对第一分网络进行若干训练周期的训练后,可以对该第一分网络进行测试。具体的,将测试视频集中的测试视频输入至该第一分网络中,并由该第一分网络为测试视频输出对应的视频语义特征向量,然后根据测试视频的视频语义特征向量对该测试视频集中的测试视频集进行聚类,将该聚类结果作为测试结果。如果所得到的聚类结果满足设定要求,则结束该第一分网络的训练,反之,如果所得到的聚类结果不满足设定的要求,则继续对该第一分网络进行训练。
在本申请的一些实施例中,如图4所示,步骤410包括:
步骤411,通过上一训练周期中第二迭代训练结束后的第一分支网络对每一样本视频的视频帧序列进行特征提取,得到各样本视频的第一视频语义特征向量。
步骤412,根据各样本视频的第一视频语义特征向量和各样本视频的第一标签计算目标损失函数的第一损失函数值。
步骤413,基于所述第一损失函数值,调整所述第一分支网络的参数。
在对第一分支网络进行第一迭代训练或者第二迭代训练过程中,均涉及到调整第一分支网络的参数,而在第一分支网络的参数调整前后,该第一分支网络针对同一视频所提取得到的视频语义特征向量可能存在差异。
在本申请的一些实施例中,可以将样本视频的第一视频语义特征向量作为所述样本视频的第一特征向量,然后基于样本视频的第一特征向量和样本视频的第一标签计算目标损失函数的损失函数值。
在本申请的另一些实施例中,可以结合样本视频的其他信息来生成样本视频的第一特征向量。在本实施例中,步骤412进一步包括:获取所述样本视频的附加特征向量,所述附加特征向量包括音频语义特征向量、字符语义特征向量和标题语义特征向量中的至少一项;所述音频语义特征向量是对所述样本视频中的音频进行语义特征提取得到的;所述字符语义特征向量是对所述样本视频的视频帧中的字符进行语义特征提取得到的;所述标题语义特征向量是对所述样本视频的标题文本进行语义特征提取得到的;将所述样本视频的第一视频语义特征向量与所述样本视频的附加特征向量进行融合,得到所述样本视频的第一特征向量。
在本申请的一些实施例中,所述目标损失函数可以是Arcface损失函数,也可以是Triplet损失函数。相对于其他损失函数,Arcface损失函数可以使得同一类更加“紧凑”,实现了将同一个聚类类别压缩到一个更紧致的空间,更密集,使得网络学习到的特征具有更明显的角分布特性。
Arcface损失函数的函数表达式为:
Figure BDA0002890119900000141
其中,N为样本视频集合中样本视频的数量,m为不同第一标签之间的空间余量;s为该空间的半径;θ∈(0,π-m);
Figure BDA0002890119900000142
Figure BDA0002890119900000143
xi表示第i个样本视频的特征向量;yi表示第i个样本视频的第一标签;Wyi是待调整确定的特征提取模型的权重参数。
在本实施例的方案中,将样本视频集合中的每一样本视频一个单独的编号作为该样本视频的第一标签,即每一样本视频视为一个类别。基于Arcface损失函数对第一分支网络进行训练的过程中,相似特征向量之间的距离会越来越近,而不相似的特征向量之间的距离越来越远,从而,基于Arcface损失函数对第一分支网络进行训练后,可以使得训练后的第一分支网络对于不相似的视频所提取得到的视频语义向量之间的区别度增大,而针对相似的视频所提取到的视频语义向量之间更紧凑,从而便于基于视频的视频语义向量对视频集合中的视频进行聚类。
Triplet损失函数的表达式为:
Figure BDA0002890119900000144
其中,
Figure BDA0002890119900000145
表示以第i样本视频作为参考样本时,该参考样本的特征向量;
Figure BDA0002890119900000146
表示参考样本对应的异类样本的特征向量;α1为类间间隔参数;α2为类内间隔参数;函数
Figure BDA0002890119900000147
在该实施例中,需要先根据样本视频集合中各样本视频的视频语义特征向量确定每一样本视频的同类样本和异类样本,同类样本是指与作为参考样本的样本视频是同一类的样本视频,异类样本是指与作为参考样本的样本视频是不同类的样本视频。在此基础上,将每一样本视频分别作为参考样本,确定每一参考样本的三元组元素,其中,三元组元素包括该参考样本、该参考样本的同类样本、该参考样本的异类样本所分别对应的特征向量。
在一实施例中,可以基于各样本视频的视频语义特征向量,计算任意两样本视频之间的距离。然后基于所得到两样本视频之间的距离来为样本视频,来确定以每一样本视频作为参考样本所对应的三元组元素;再根据上述Triplet损失函数中,即可计算得到第二损失值。
举例来说,可以根据样本视频的特征向量或者视频语义特征向量对是样本视频集合中的样本视频进行聚类,确定每一样本视频的聚类类别。再次基础上,可以选择与作为参考样本的样本视频属于同一聚类类别且与该样本视频距离最近的样本视频作为该样本视频的同类样本;选择与该作为参考样本的样本视频不属于同一聚类类别且与该样本视频距离最远的样本视频作为该样本视频的异类样本。
请继续参阅图4,在一实施例中,步骤420包括:
步骤421,通过本次训练周期中第一迭代训练结束后的第一分支网络对每一样本视频的视频帧序列进行特征提取,得到各样本视频的第二视频语义特征向量。
步骤422,通过所述聚类模块根据各样本视频的第二视频语义特征向量对所述训练样本集中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别,将所述样本视频所属的聚类类别对应的第二编号作为所述样本视频的第二标签。
同上,可以将所述样本视频的第二视频语义特征向量作为所述样本视频的第二特征向量。也可以先将所述样本视频的第二视频语义特征向量与所述样本视频的附加特征向量进行融合,将融合所得到的向量作为所述样本视频的第二特征向量。进而基于样本视频的第二特征向量对训练样本集中的样本视频进行聚类。
步骤423,根据所述样本视频的第二视频语义特征向量和所述样本视频的第二标签计算所述目标损失函数的第二损失函数值。
同上,可以将所述样本视频的第二视频语义特征向量作为所述样本视频的第二特征向量。也可以先将所述样本视频的第二视频语义特征向量与所述样本视频的附加特征向量进行融合,将融合所得到的向量作为所述样本视频的第二特征向量。进而基于样本视频的第二特征向量和样本视频的第二标签计算目标损失函数的函数值。
值得一提的是,在第一迭代训练和第二迭代训练的过程中,样本视频的特征向量(第一特征向量、第二特征向量)的构成是一致的,即若在第一迭代训练过程中,将样本视频的视频语义特征向量作为样本视频的特征向量,则在第二迭代训练过程中,也是将样本视频的视频语义特征向量作为样本视频的特征向量;若在在第一迭代训练过程中,将样本视频的视频语义特征向量与附加特征向量的融合结果作为样本视频的特征向量,则在第二迭代训练过程中,也将样本视频的视频语义特征向量与相同类别的附加特征向量的融合结果作为样本视频的特征向量。步骤424,基于所述第二损失函数值,调整所述第一分支网络的参数。
同第一迭代训练的过程,目标损失函数是Arcface损失函数或Triplet损失函数,具体损失函数值的计算参见上文描述,在此不再赘述。值得一提的是,在第一迭代训练过程中和第二迭代训练过程中的目标损失函数是相同的。
通过如上步骤411-424的过程即完成一个训练周期的训练。然后进入下一训练周期重复上述过程的训练过程。
在本申请的一些实施例中,可以预先为每一训练周期分别设定类别总数,该类别总数指示了在每一训练周期中对样本视频所进行聚类的聚类类别的总数量。
在本申请的一些实施例中,步骤422进一步包括:获取本次训练周期对应的类别总数;基于所述类别总数,根据各样本视频的第二特征向量对所述样本集合中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别;其中,下一训练周期对应的类别总数大于本次训练周期对应的类别总数。
在本实施例中,在第二迭代训练过程中,采用由粗到细顺序更新类别总数,使得特征提取模型可以以粗粒度分辨不同的视频。在本次训练周期结束后,在下一训练周期增大类别总数。增大每一训练周期中的类别总数,即相当于生成更细粒度的监督信号(第二标签),依次迭代,直至达到训练结束条件。类别总数可以根据样本视频中的样本视频的数量和实际需要设定上限。可以理解的是,所设定的类别总数的上限不大于样本视频集合中样本视频的数量,当所设定的类别总数为样本视频集合中样本视频的数量时,即相当于样本视频与聚类类别一一对应。
在本实施例中,可以根据实际需要灵活调整为训练周期所设定的类别总数,实现调整特征提取模型针对视频的判别粒度。而且,实现了分层次对特征提取模型进行训练,分层次的训练可以提高特征提取模型的收敛速度,缩短模型的训练时间。
在本申请的一些实施例中,所述特征提取模型包括第一卷积层、时序偏移层和第二卷积层;如图5所示,步骤220进一步包括:
步骤510,对于每一视频,通过所述第一卷积层对所述视频的视频帧序列中每一视频帧进行二维卷积操作,得到所述视频帧序列中各视频帧的第一特征图。
步骤520,通过所述时序偏移层基于所述视频帧序列中各视频帧的特征图沿时间维度进行时序偏移操作,得到各视频帧的第二特征图。
步骤530,通过所述第二卷积层分别对所述各视频帧的第二特征图进行二维卷积操作,得到各视频帧的第三特征图。
步骤540,将所述视频帧序列中各视频帧的第三特征图进行全连接,得到所述视频的视频语义特征向量。可以理解的是,在对第一分支网络进行训练的过程中,该第一分支网络仍然按照上述步骤510-540的过程提取得到样本视频的视频语义特征向量。现结合图6来对上述的步骤510-540的过程进行具体说明。
图6是根据一实施例示出的对第一分支网络进行训练的示意图,如图6所示,先对样本视频进行分帧和采样,得到样本视频的视频帧序列,然后将该样本视频的视频帧序列输入至第一分支网络中,由该第一分支网络输出该样本视频的视频语义特征向量。
在本实施例中,特征提取模型可以是TSM神经网络模型,其通过TSM神经网络模型中的2D卷积核进行卷积处理得到各视频帧的特征图,然后通过TSM模块在时间维度上对各视频帧的特征图进行融合,再基于融合后的特征图再次进行二维卷积操作,然后将各视频帧的特征图进行全连接,得到该视频帧的视频语义特征向量。在此基础上,基于样本视频的特征向量和样本视频的第一标签计算目标损失函数的函数值;以及基于样本视频的特征向量和样本视频的第二标签计算目标损失函数的函数值,并根据所计算得到的函数值来调整特征提取模型的参数。
在图6中,第一分支网络包括第一卷积层和第二卷积层,并在第一卷积层和第二卷积层之间设置时序偏移层(图6中未示出),由该时序偏移层对第一卷积层所输出视频帧序列中各视频帧的第一特征图进行时序偏移操作。现结合图6来对时序偏移操作进行具体说明。
如图6所示,通过第一卷积层对视频帧序列中各视频帧进行二维卷积操作,得到视频帧序列中各视频视频帧的第一特征图。在图6中,C表示通道维度,T表示时间维度,图6的特征图A中每一行同一颜色表示一个视频帧的第一特征图,每一个小块代表不同的通道。对于一视频而言,该视频的视频帧序列中各个视频帧的第一特征图按照时间循序进行拼接,即得到图6中的特征图A。然后,时序偏移层基于特征图A,沿时间维度(T)进行时序偏移,在图6中沿时间维度上向前和向后各偏移一个通道,得到特征图B。在进行时序偏移后,在通道维度上,可以针对最前和最后空白的部分,采用填零的形式进行补充。当然,在其他实施例中,还可以采用循环偏移的方式,将进行时序偏移后,多余的部分补充到后面去,从而使特征图的大小不变。
由图6中的特征图B可以看出,在进行时序偏移后,每一视频帧的特征图(第二特征图)中融合了相邻视频帧的特征信息,由此实现了将视频帧序列中的时序特征进行融合。也就是说,通过在二维卷积模型中插入时序偏移层进行时序偏移操作,实现了对视频帧序列中各视频的图像特征和视频帧序列中各视频帧之间的时序特征的融合。
在本申请的一些实施例中,如图7所示,步骤230之后,该方法还包括:
步骤710,获取当前所播放视频的类别信息,所述类别信息用于指示所述当前所播放视频所属的目标聚类类别。
步骤720,从未播放视频集合中选取聚类类别为所述目标聚类类别的目标视频。
在本申请的一些实施例中,未播放视频集合中的视频可以是小视频。
其中,所选取的目标视频的数量可以根据实际需要进行设定。在具体实施例中,可以选择一个或者多个目标视频,具体可视显示终端的显示界面中可显示的视频封面的数量来确定。
步骤730,向用户推送所述目标视频,以使所述用户终端展示所述目标视频。
在本实施例中,通过确定当前所播放视频所属的目标聚类类别,然后从未播放视频集合中选取聚类类别为目标聚类类别的目标视频,并向用户终端推送所选取的目标视频,从而,对于使用终端的用户而言,由于服务端向其推送了与当前所播放视频相同聚类类别的目标视频,则用户在观看到感兴趣的视频时,可以不需要再次按照当前所播放视频的关键词进行搜索,就可以观看到与当前所播放视频具有相同或者类似看点的视频,方便用户浏览大批量相似的视频,提高视频浏览效率,并有利于延长用户留存时间。
图8是根据一实施例示出的视频播放的界面示意图,如图8所示,在P1区域所显示的画面即为当前所播放视频的画面。其中,P2、P3、P4、P5和P6区域所显示的为所推送目标视频的封面,用户可以基于所显示推送的多个目标视频中任意选取一个目标视频播放。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的方法。对于本申请装置实施例中未披露的细节,请参照本申请上述方法实施例。
图9是根据一实施例示出的视频聚类装置的框图,如图9所示,该视频聚类装置包括:
视频集合获取模块910,用于获取视频集合,所述视频集合包括多个待处理的视频。
特征提取模块920,用于通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;所述特征提取模型是利用多个样本视频的图像信息和所述样本视频对应的标签信息对原始模型进行训练得到的,所述标签信息包括用于描述所述样本视频在多个样本视频中的序列编号的第一标签,以及用于描述所述样本视频所属聚类类别的第二标签:所述原始模型包括第一分支网络和聚类模块,所述第一分支网络用于学习所述样本视频的图像信息以及所述第一标签,所述聚类模块用于辅助所述第一分支网络学习所述第二标签;其中,不同样本视频的第一标签不同。
视频聚类模块930,用于根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别。
在本申请的一些实施例中,视频聚类装置还包括:训练模块,用于利用多个样本视频的图像信息和所述样本视频对应的标签信息,对所述原始模型中的第一分支网络按训练周期交替进行第一迭代训练和第二迭代训练,得到训练后的第一分支网络;将训练后的第一分支网络作为所述特征提取模型。
具体的,训练模块进一步包括第一迭代训练单元和第二迭代训练单元,在每一训练周期,通过第一迭代训练单元和第二迭代训练单元所执行的过程对所述原始模型中的第一分支网络进行训练。第一迭代训练单元,用于根据所述样本视频的第一标签和所述样本视频的第一视频语义特征向量对所述第一分支网络进行第一迭代训练;所述样本视频的第一视频语义特征向量是上一训练周期中第二迭代训练完成后的第一分支网络对所述样本视频的视频帧序列进行特征提取得到的;在首个训练周期中,通过初始的第一分支网络对所述样本视频的视频帧序列进行特征提取得到对应的第一视频语义特征向量。第二迭代训练单元,用于若所述第一迭代训练中的迭代次数达到第一设定次数,根据所述样本视频的第二标签和所述样本视频的第二视频语义特征向量对所述第一分支网络进行第二迭代训练,直至第二迭代训练的迭代次数达到第二设定次数;其中,所述样本视频的第二视频语义特征向量是通过本次训练周期中第一迭代训练完成后的第一分支网络对所述样本视频的视频帧序列进行特征提取得到的。
在本申请的一些实施例中,第一迭代训练单元,包括:第一特征提取单元,用于通过上一训练周期中第二迭代训练结束后的第一分支网络对每一样本视频的视频帧序列进行特征提取,得到各样本视频的第一视频语义特征向量。第一损失函数值计算单元,用于根据各样本视频的第一视频语义特征向量和各样本视频的第一标签计算目标损失函数的第一损失函数值。第一调整单元,用于基于所述第一损失函数值,调整所述第一分支网络的参数。
在本申请的一些实施例中,第二迭代训练单元,包括:第二特征提取单元,用于通过本次训练周期中第一迭代训练结束后的第一分支网络对每一样本视频的视频帧序列进行特征提取,得到各样本视频的第二视频语义特征向量。第一聚类单元,用于通过所述聚类模块根据各样本视频的第二视频语义特征向量对所述训练样本集中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别,将所述样本视频所属的聚类类别对应的第二编号作为所述样本视频的第二标签。第二损失函数值计算单元,用于根据所述样本视频的第二视频语义特征向量和所述样本视频的第二标签计算所述目标损失函数的第二损失函数值。第二调整单元,用于基于所述第二损失函数值,调整所述第一分支网络的参数。
在本申请的一些实施例中,第一聚类单元包括:类别总数获取单元,用于获取本次训练周期对应的类别总数。划分单元,用于由所述聚类模块基于所述类别总数,根据各样本视频的第二视频语义特征向量对所述训练样本集中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别;其中,下一训练周期对应的类别总数大于本次训练周期对应的类别总数。
在本申请的一些实施例中,所述目标损失函数为Arcface损失函数或Triplet损失函数。
在本申请的一些实施例中,所述特征提取模型包括第一卷积层、时序偏移层和第二卷积层;特征提取模块920,包括:第一卷积单元,用于对于每一视频,通过所述第一卷积层对所述视频的视频帧序列中每一视频帧进行二维卷积操作,得到所述视频帧序列中各视频帧的第一特征图。时序偏移单元,用于通过所述时序偏移层基于所述视频帧序列中各视频帧的特征图沿时间维度进行时序偏移操作,得到各视频帧的第二特征图;第二卷积单元,用于通过所述第二卷积层分别对所述各视频帧的第二特征图进行二维卷积操作,得到各视频帧的第三特征图。全连接单元,用于将所述视频帧序列中各视频帧的第三特征图进行全连接,得到所述视频的视频语义特征向量。
在本申请的一些实施例中,视频聚类模块930包括:附加特征向量获取单元,用于获取所述视频的附加特征向量,所述附加特征向量包括音频语义特征向量、字符语义特征向量和标题语义特征向量中的至少一项。融合单元,用于将所述视频的视频语义特征向量与所述视频的附加特征向量进行融合,得到所述视频的特征向量。第二聚类单元,用于基于所述视频集合中各视频的特征向量进行视频聚类,将所述视频集合中的视频划分为至少一个聚类类别。
在本申请的一些实施例中,视频聚类装置还包括:类别信息获取模块,用于获取当前所播放视频的类别信息,所述类别信息用于指示所述当前所播放视频所属的目标聚类类别。选取模块,用于从未播放视频集合中选取聚类类别为所述目标聚类类别的目标视频。推送模块,用于向用户终端推送所述目标视频,以使所述用户终端展示所述目标视频。
图10示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图10示出的电子设备的计算机系统1000仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图10所示,计算机系统1000包括中央处理单元(Central Processing Unit,CPU)1001,其可以根据存储在只读存储器(Read-Only Memory,ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(Random Access Memory,RAM)1003中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1003中,还存储有系统操作所需的各种程序和数据。CPU1001、ROM1002以及RAM 1003通过总线1004彼此相连。输入/输出(Input/Output,I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载计算机可读指令,当该计算机可读存储指令被处理器执行时,实现上述实施例中的方法。
根据本申请的一个方面,还提供了一种电子设备,其包括:处理器;存储器,存储器上存储有计算机可读指令,计算机可读指令被处理器执行时,实现上述实施例中的方法。
根据本申请实施例的一个方面,提供了计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各可选实施例中的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (10)

1.一种视频聚类方法,其特征在于,所述方法包括:
获取视频集合,所述视频集合包括多个待处理的视频;
通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;所述特征提取模型是利用多个样本视频的图像信息和所述样本视频对应的标签信息对原始模型进行训练得到的,所述标签信息包括用于描述所述样本视频在多个样本视频中的编号的第一标签,以及用于描述所述样本视频所属聚类类别的第二标签:所述原始模型包括第一分支网络和聚类模块,所述第一分支网络用于学习所述样本视频的图像信息以及所述第一标签,所述聚类模块用于辅助所述第一分支网络学习所述第二标签;其中,不同样本视频的第一标签不同;
根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别。
2.根据权利要求1所述的方法,其特征在于,所述通过特征提取模型对视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量之前,所述方法还包括:
利用训练样本集中多个样本视频的图像信息和所述样本视频对应的标签信息,对所述原始模型中的第一分支网络按训练周期交替进行第一迭代训练和第二迭代训练,得到训练后的第一分支网络;将训练后的第一分支网络作为所述特征提取模型;
在每一训练周期,按照如下的过程对所述原始模型中的第一分支网络进行训练:
根据所述样本视频的第一标签和所述样本视频的第一视频语义特征向量对所述第一分支网络进行第一迭代训练;所述样本视频的第一视频语义特征向量是上一训练周期中第二迭代训练完成后的第一分支网络对所述样本视频的视频帧序列进行特征提取得到的;在首个训练周期中,通过初始的第一分支网络对所述样本视频的视频帧序列进行特征提取得到对应的第一视频语义特征向量;
若所述第一迭代训练中的迭代次数达到第一设定次数,根据所述样本视频的第二标签和所述样本视频的第二视频语义特征向量对所述第一分支网络进行第二迭代训练,直至第二迭代训练的迭代次数达到第二设定次数;其中,所述样本视频的第二视频语义特征向量是通过本次训练周期中第一迭代训练完成后的第一分支网络对所述样本视频的视频帧序列进行特征提取得到的。
3.根据权利要求2所述的方法,其特征在于,所述根据所述样本视频的第一标签和所述样本视频的第一视频语义特征向量对所述第一分支网络进行第一迭代训练,包括:
通过上一训练周期中第二迭代训练结束后的第一分支网络对每一样本视频的视频帧序列进行特征提取,得到各样本视频的第一视频语义特征向量;
根据各样本视频的第一视频语义特征向量和各样本视频的第一标签计算目标损失函数的第一损失函数值;
基于所述第一损失函数值,调整所述第一分支网络的参数。
4.根据权利要求3所述的方法,其特征在于,所述根据所述样本视频的第二标签和所述样本视频的第二视频语义特征向量对所述第一分支网络进行第二迭代训练,包括:
通过本次训练周期中第一迭代训练结束后的第一分支网络对每一样本视频的视频帧序列进行特征提取,得到各样本视频的第二视频语义特征向量;
通过所述聚类模块根据各样本视频的第二视频语义特征向量对所述训练样本集中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别,将所述样本视频所属的聚类类别对应的第二编号作为所述样本视频的第二标签;
根据所述样本视频的第二视频语义特征向量和所述样本视频的第二标签计算所述目标损失函数的第二损失函数值;
基于所述第二损失函数值,调整所述第一分支网络的参数。
5.根据权利要求4所述的方法,其特征在于,所述通过所述聚类模块根据各样本视频的第二视频语义特征向量对所述训练样本集中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别,包括:
获取本次训练周期对应的类别总数;
由所述聚类模块基于所述类别总数,根据各样本视频的第二视频语义特征向量对所述训练样本集中的样本视频进行聚类,将所述训练样本集中的样本视频划分为至少一个聚类类别;其中,下一训练周期对应的类别总数大于本次训练周期对应的类别总数。
6.根据权利要求3-5中任一项所述的方法,其特征在于,所述目标损失函数为Arcface损失函数或Triplet损失函数。
7.根据权利要求1所述的方法,其特征在于,所述特征提取模型包括第一卷积层、时序偏移层和第二卷积层;
所述通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量,包括:
对于每一视频,通过所述第一卷积层对所述视频的视频帧序列中每一视频帧进行二维卷积操作,得到所述视频帧序列中各视频帧的第一特征图;
通过所述时序偏移层基于所述视频帧序列中各视频帧的特征图沿时间维度进行时序偏移操作,得到各视频帧的第二特征图;
通过所述第二卷积层分别对所述各视频帧的第二特征图进行二维卷积操作,得到各视频帧的第三特征图;
将所述视频帧序列中各视频帧的第三特征图进行全连接,得到所述视频的视频语义特征向量。
8.根据权利要求1所述的方法,其特征在于,所述根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别,包括:
获取所述视频的附加特征向量,所述附加特征向量包括音频语义特征向量、字符语义特征向量和标题语义特征向量中的至少一项;
将所述视频的视频语义特征向量与所述视频的附加特征向量进行融合,得到所述视频的特征向量;
基于所述视频集合中各视频的特征向量进行视频聚类,将所述视频集合中的视频划分为至少一个聚类类别。
9.根据权利要求1所述的方法,其特征在于,所述根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别之后,所述方法还包括:
获取当前所播放视频的类别信息,所述类别信息用于指示所述当前所播放视频所属的目标聚类类别;
从未播放视频集合中选取聚类类别为所述目标聚类类别的目标视频;
向用户终端推送所述目标视频,以使所述用户终端展示所述目标视频。
10.一种视频聚类装置,其特征在于,所述装置包括:
视频集合获取模块,用于获取视频集合,所述视频集合包括多个待处理的视频;
特征提取模块,用于通过特征提取模型对所述视频集合中各视频的视频帧序列进行特征提取,得到各视频的视频语义特征向量;所述特征提取模型是利用多个样本视频的图像信息和所述样本视频对应的标签信息对原始模型进行训练得到的,所述标签信息包括用于描述所述样本视频在多个样本视频中的序列编号的第一标签,以及用于描述所述样本视频所属聚类类别的第二标签:所述原始模型包括第一分支网络和聚类模块,所述第一分支网络用于学习所述样本视频的图像信息以及所述第一标签,所述聚类模块用于辅助所述第一分支网络学习所述第二标签;其中,不同样本视频的第一标签不同;
视频聚类模块,用于根据各视频的视频语义特征向量对所述视频集合中的视频进行聚类,将所述视频集合中各视频划分为至少一个聚类类别。
CN202110025310.9A 2021-01-08 2021-01-08 视频聚类方法及装置 Pending CN113515668A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110025310.9A CN113515668A (zh) 2021-01-08 2021-01-08 视频聚类方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110025310.9A CN113515668A (zh) 2021-01-08 2021-01-08 视频聚类方法及装置

Publications (1)

Publication Number Publication Date
CN113515668A true CN113515668A (zh) 2021-10-19

Family

ID=78060861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110025310.9A Pending CN113515668A (zh) 2021-01-08 2021-01-08 视频聚类方法及装置

Country Status (1)

Country Link
CN (1) CN113515668A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113987267A (zh) * 2021-10-28 2022-01-28 上海数禾信息科技有限公司 视频文件的标签生成方法、装置、计算机设备和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113987267A (zh) * 2021-10-28 2022-01-28 上海数禾信息科技有限公司 视频文件的标签生成方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN111898696A (zh) 伪标签及标签预测模型的生成方法、装置、介质及设备
CN111241989B (zh) 图像识别方法及装置、电子设备
CN111046275B (zh) 基于人工智能的用户标签确定方法及装置、存储介质
US20220222925A1 (en) Artificial intelligence-based image processing method and apparatus, device, and storage medium
CN113766299B (zh) 一种视频数据播放方法、装置、设备以及介质
CN111078940B (zh) 图像处理方法、装置、计算机存储介质及电子设备
CN110795925B (zh) 基于人工智能的图文排版方法、图文排版装置及电子设备
CN112188306B (zh) 一种标签生成方法、装置、设备及存储介质
CN113515669A (zh) 基于人工智能的数据处理方法和相关设备
CN111046757A (zh) 人脸画像生成模型的训练方法、装置及相关设备
CN114495916B (zh) 背景音乐的插入时间点确定方法、装置、设备和存储介质
CN113610034B (zh) 识别视频中人物实体的方法、装置、存储介质及电子设备
CN114972016A (zh) 图像处理方法、装置、计算机设备、存储介质及程序产品
CN113572981B (zh) 视频配乐方法及装置、电子设备、存储介质
CN117094362B (zh) 一种任务处理方法及相关装置
CN114359775A (zh) 关键帧检测方法、装置、设备及存储介质、程序产品
CN113515668A (zh) 视频聚类方法及装置
CN112069412A (zh) 信息推荐方法、装置、计算机设备及存储介质
CN113822324A (zh) 基于多任务模型的图像处理方法、装置及相关设备
CN113821687A (zh) 一种内容检索方法、装置和计算机可读存储介质
CN114581706B (zh) 证件识别模型的配置方法、装置、电子设备、存储介质
CN113573153B (zh) 图像处理方法、装置及设备
CN114332516A (zh) 数据处理、模型训练方法及装置、设备、存储介质、产品
CN117011539A (zh) 目标检测方法、目标检测模型的训练方法、装置及设备
CN117351382A (zh) 视频对象定位方法及其装置、存储介质、程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination