掌桥专利:专业的专利平台
掌桥专利
首页

一种视频分类的方法、装置、终端及存储介质

文献发布时间:2023-06-19 11:54:11


一种视频分类的方法、装置、终端及存储介质

技术领域

本申请属于计算机技术领域,尤其涉及一种视频分类的方法、装置、终端及存储介质。

背景技术

视频分类是指对视频内容进行识别,用于确定该视频所属的类别。在视频搜索、视频在线观看、视频内容审核、视频推荐等服务场景中有着重要应用。

传统的视频分类模型基于标记有视频类别的样本视频进行训练得到。由于可用于训练视频分类模型的样本视频有限,导致训练得到的视频分类模型容易出现过拟合。采用过拟合的视频分类模型对视频进行分类时,会导致视频分类结果不准确。

其中,视频分类模型的过拟合是指该视频分类模型预测的分类结果与样本视频的分类结果过分拟合。该视频分类模型在对与样本视频相似的视频进行处理时,处理结果较准确,而在对样本视频不相似的视频进行处理时,处理结果不准确。

发明内容

有鉴于此,本申请实施例提供了一种视频分类的方法、装置、终端及存储介质,以解决传统的视频分类模型视频分类结果不准确的问题。

第一方面,提供了一种视频分类的方法,该视频分类的方法的执行主体为终端,终端包括但不限于智能手机、平板电脑、计算机、个人数字助理(Personal DigitalAssistant,PDA)等移动终端,还可以包括台式电脑等终端。该方法包括:获取待处理视频对应的多个视频帧;将多个视频帧输入到视频分类模型中处理,得到待处理视频对应的分类结果;其中,视频分类模型是基于初始生成器网络、初始判别器网络以及初始分类器网络,对样本视频集合进行训练得到的;样本视频集合包括多个有标签视频、多个伪标签视频、以及多个无标签视频;多个伪标签视频基于多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成。

其中,有标签视频是带有视频分类标签的视频,有标签视频可包括第一视频和第一视频对应的第一分类标签。有标签视频可以由人工对视频进行分类标签标记,也可以在网络中获取带有分类标签标记的视频,对此不做限定。伪标签视频是由无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成的可用于训练视频分类模型的带有分类标签标记的视频。伪标签视频包括第二视频以及第二视频对应的第二分类标签。

第一方面提供的视频分类的方法,通过多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频和大量的伪标签视频对初始分类器网络进行训练。由于用于训练的有标签视频和伪标签视频种类丰富、数量多,使训练得到的视频分类模型不会出现过拟合的现象。因此,使用该视频分类模型对视频分类时,分类结果更准确,从而提升了视频分类的准确度。

在第一方面一种可能的实现方式中,将多个视频帧输入到视频分类模型中处理,得到该待处理视频对应的分类结果,包括:

采用该视频分类模型提取多个视频帧各自对应的特征向量;

基于多个视频帧各自对应的特征向量,生成该待处理视频对应的视频特征;

对该视频特征进行分类,得到该待处理视频对应的分类结果。

在该实现方式中,由于采用通过多个有标签视频和大量的伪标签视频对初始分类器网络进行训练得到的视频分类模型对待处理视频对应的多个视频帧进行处理,提取到的特征向量丰富、全面,进而基于特征向量生成的视频特征也更丰富、全面。且由于视频分类模型不存在过拟合的现象,其对丰富、全面视频特征进行分类时,可以准确地匹配到该视频特征对应的分类结果,从而准确地得到待处理视频对应的分类结果,实现对待处理视频的准确分类。

在第一方面一种可能的实现方式中,将多个视频帧输入到视频分类模型中处理,得到该待处理视频对应的分类结果之前,该方法还包括:

基于该初始生成器网络、该初始分类器网络以及该初始判别器网络对多个无标签视频进行训练,得到训练好的生成器网络;

根据该训练好的生成器网络以及多个无标签视频,生成多个伪标签视频;

基于多个有标签视频以及多个伪标签视频对该初始分类器网络进行训练,得到该视频分类模型。

在第一方面一种可能的实现方式中,基于该初始生成器网络、该初始分类器网络以及该初始判别器网络对多个无标签视频进行训练,得到训练好的生成器网络,包括:

基于该初始生成器网络、该初始分类器网络在该多个无标签视频中,获取目标视频;该目标视频为置信度大于置信度阈值的无标签视频;该置信度用于初步判断该无标签视频是否可用于生成伪标签视频;

基于该初始分类器网络对该目标视频进行分类处理,得到该目标视频对应的分类结果;

将该有标签视频、该目标视频以及该目标视频对应的分类结果输入该初始判别器网络进行判别处理,得到该有标签视频对应的第一判别结果和该目标视频对应的第二判别结果;

基于该第一判别结果以及该第二判别结果,确定该初始生成器网络对应的第一损失值以及该初始判别器网络对应的第二损失值;

当该第一损失值小于或等于第一预设阈值且该第二损失值小于或等于第二预设阈值时,停止训练该初始生成器网络,并将训练后的初始生成器网络作为该训练好的生成器网络。

在第一方面一种可能的实现方式中,该有标签视频包括第一视频以及该第一视频对应的第一分类标签;该伪标签视频包括第二视频以及该第二视频对应的第二分类标签;基于多个有标签视频以及多个伪标签视频对该初始分类器网络进行训练,得到该视频分类模型,包括:

将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果;

基于该第一视频以及该第二视频各自对应的分类结果、该第一分类标签以及该第二分类标签计算第三损失值;

当该第三损失值大于第三预设阈值时,调整该初始分类器网络的参数,并返回执行将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果的步骤。

在第一方面一种可能的实现方式中,在基于所述第一视频以及所述第二视频各自对应的分类结果、所述第一分类标签以及所述第二分类标签计算第三损失值之后,该方法还包括:

当所述第三损失值小于或等于所述第三预设阈值时,停止训练所述初始分类器网络,并将训练后的初始分类器网络作为所述视频分类模型。

第二方面,提供了一种视频分类的装置,该装置包括处理单元(处理模块),该处理单元用于:

获取待处理视频对应的多个视频帧;

将多个视频帧输入到视频分类模型中处理,得到该待处理视频对应的分类结果;其中,该视频分类模型是基于初始生成器网络、初始判别器网络以及初始分类器网络,对样本视频集合进行训练得到的;该样本视频集合包括多个有标签视频、多个伪标签视频、以及多个无标签视频;该多个伪标签视频基于该多个无标签视频、该初始生成器网络、该初始分类器网络以及该初始判别器网络生成。

在第二方面一种可能的实现方式中,该处理单元还用于:

采用该视频分类模型提取该多个视频帧各自对应的特征向量;

基于该多个视频帧各自对应的特征向量,生成该待处理视频对应的视频特征;

对该视频特征进行分类,得到该分类结果。

在第二方面一种可能的实现方式中,该处理单元还用于:

基于该初始生成器网络、该初始分类器网络以及该初始判别器网络对多个无标签视频进行训练,得到训练好的生成器网络;

根据该训练好的生成器网络以及多个无标签视频,生成多个伪标签视频;

基于多个有标签视频以及多个伪标签视频对该初始分类器网络进行训练,得到该视频分类模型。

在第二方面一种可能的实现方式中,该处理单元还用于:

基于该初始生成器网络、该初始分类器网络在该多个无标签视频中,获取目标视频;该目标视频为置信度大于置信度阈值的无标签视频;该置信度用于初步判断该无标签视频是否可用于生成伪标签视频;

基于该初始分类器网络对该目标视频进行分类处理,得到该目标视频对应的分类结果;

将该有标签视频、该目标视频以及该目标视频对应的分类结果输入该初始判别器网络进行判别处理,得到该有标签视频对应的第一判别结果和该目标视频对应的第二判别结果;

基于该第一判别结果以及该第二判别结果,确定该初始生成器网络对应的第一损失值以及该初始判别器网络对应的第二损失值;

当该第一损失值小于或等于第一预设阈值且该第二损失值小于或等于第二预设阈值时,停止训练该初始生成器网络,并将训练后的初始生成器网络作为该训练好的生成器网络。

在第二方面一种可能的实现方式中,该有标签视频包括第一视频以及该第一视频对应的第一分类标签;该伪标签视频包括第二视频以及该第二视频对应的第二分类标签;该处理单元还用于:

将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果;

基于该第一视频以及该第二视频各自对应的分类结果、该第一分类标签以及该第二分类标签计算第三损失值;

当该第三损失值大于第三预设阈值时,调整该初始分类器网络的参数,并返回执行该将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果的步骤。

在第二方面一种可能的实现方式中,当第三损失值小于或等于所述第三预设阈值时,该处理单元还用于:

当该第三损失值小于或等于该第三预设阈值时,停止训练该初始分类器网络,并将训练后的初始分类器网络作为该视频分类模型。

第三方面,提供了一种视频分类的装置,该装置包括至少一个处理器和接口电路,该至少一个处理器用于执行以上第一方面或第一方面的任意可能的实现方式中的方法。

第四方面,提供了一种终端设备,该终端设备包括:上述第二方面提供的视频分类的装置或上述第三方面提供的视频分类的装置。可选地,该终端包括但不限于智能手机、平板电脑、计算机、PDA等移动终端,还可以包括台式电脑等终端。

第五方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序在被处理器执行时,用于执行第一方面或第一方面的任意可能的实现方式中的方法。

第六方面,提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序被执行时,用于执行第一方面或第一方面的任意可能的实现方式中的方法。

第七方面,提供了一种芯片或者集成电路,该芯片或者集成电路包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有该芯片或者集成电路的设备执行第一方面或第一方面的任意可能的实现方式中的方法。

本申请实施例提供的视频分类的方法,通过获取待处理视频对应的多个视频帧;将多个视频帧输入到视频分类模型中处理,得到待处理视频对应的分类结果。本申请中,终端基于多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频和大量的伪标签视频对初始分类器网络进行训练得到的视频分类模型不会出现过拟合的现象。因此,使用该视频分类模型对视频分类时,分类结果更准确,从而提升了视频分类的准确度。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例提供的一种视频分类的方法的示意性流程图;

图2是本申请另一实施例提供的一种视频分类的方法的示意性流程图;

图3是本申请又一实施例提供的一种视频分类的方法的示意性流程图;

图4是本申请另一实施例提供的一种视频分类的方法的示意性流程图;

图5是本申请另一实施例提供的一种视频分类的方法的示意性流程图;

图6是本申请一实施例提供的一种视频分类的装置的示意图;

图7是本申请另一实施例提供的一种视频分类的装置的示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。

以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。

现有技术中,大多数视频没有分类标签,而视频分类模型在训练过程中恰恰需要用到大量的带有分类标签的视频,由于人工对视频进行分类标签标记费时费力、成本高昂,因此传统的视频分类模型通常使用少量的带有分类标签的视频对视频分类模型进行训练,导致训练得到的视频分类模型容易出现过拟合。采用过拟合的视频分类模型对视频进行分类时,会导致视频分类结果不准确。

有鉴于此,本申请提供一种视频分类的方法,通过获取待处理视频对应的多个视频帧;将多个视频帧输入到视频分类模型中处理,得到待处理视频对应的分类结果。本申请中,终端基于多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频和大量的伪标签视频对初始分类器网络进行训练得到的视频分类模型不会出现过拟合的现象。因此,使用该视频分类模型对视频分类时,分类结果更准确,从而提升了视频分类的准确度。进一步地,通过本申请提供的视频分类的方法可自动生成大量的伪标签视频,无需人工对视频进行分类标签标记,节省了时间和人力,降低了成本,提升了视频分类模型的训练速度。

图1是本申请一实施例提供的视频分类的方法的示意性流程图。应理解,本申请提供的视频分类的方法的执行主体为终端,终端包括但不限于智能手机、平板电脑、计算机、PDA等移动终端,还可以包括台式电脑等终端。如图1所示的视频分类的方法100可包括:S101和S102,下面将具体进行说明。

S101:获取待处理视频对应的多个视频帧。

待处理视频指需要进行视频分类的视频。终端获取待处理视频对应的多个视频帧,可以是在获取到待处理视频后,以单个视频帧为最小的分割单元,对待处理视频进行分割处理,得到该待处理视频对应的多个视频帧。例如,待处理视频由30个视频帧构成,终端对该视频进行分割处理,得到30个视频帧。

终端获取待处理视频对应的多个视频帧,也可以是本终端或者其他终端预先对待处理视频进行分割处理,得到该待处理视频对应的多个视频帧,本终端获取该待处理视频对应的多个视频帧。例如,本终端在数据库中获取待处理视频对应的多个视频帧,或者其他终端将待处理视频对应的多个视频帧发送至本终端,本终端接收其他终端发送的待处理视频对应的多个视频帧。此处仅为示例性说明,对此不做限定。

S102:将多个视频帧输入到视频分类模型中处理,得到该待处理视频对应的分类结果;其中,该视频分类模型是基于初始生成器网络、初始判别器网络以及初始分类器网络,对样本视频集合进行训练得到的;该样本视频集合包括多个有标签视频、多个伪标签视频、以及多个无标签视频;该多个伪标签视频基于该多个无标签视频、该初始生成器网络、该初始分类器网络以及该初始判别器网络生成。

在本实施例中,终端中预先存储有预先训练好的视频分类模型。该视频分类模型是使用机器学习算法,基于初始生成器网络、初始判别器网络以及初始分类器网络,对样本视频集合进行训练得到的。样本视频集合包括多个有标签视频、多个伪标签视频、以及多个无标签视频。

有标签视频是指带有分类标签的视频,该分类标签可理解该视频对应的分类结果,即该视频所属的类别。有标签视频可包括第一视频和第一视频对应的第一分类标签。有标签视频可以由人工对视频进行分类标签标记得到,也可以在网络中获取带有分类标签标记的视频,例如,在网络公开的数据库中获取带有分类标签标记的视频作为本申请中的有标签视频。此处仅为示例性说明,对此不做限定。

伪标签视频是终端基于无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成的可用于训练视频分类模型的带有分类标签标记的视频。伪标签视频包括第二视频以及第二视频对应的第二分类标签。其中,无标签视频是指不包含分类标签的视频。

初始生成器网络、初始判别器网络、初始分类器网络分别指,未经训练过的生成器网络模型、未经训练过的判别器网络模型、未经训练过的分类器网络模型,均可在终端构建其对应的网络,也可在网络中获取其相应的程序代码直接使用。其中,初始生成器网络可用于提取无标签视频中的视频特征,以及与初始分类器网络配合生成带有分类标签标记的视频。初始判别器网络用于判定基于初始生成器网络生成的带有分类标签标记的视频为假,判定有标签视频为真。初始分类器网络用于对无标签视频进行分类。

终端基于多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频以及大量的伪标签视频对初始分类器网络进行训练,得到训练好的视频分类模型。

可以理解的是,视频分类模型可以由终端预先训练好,也可以由其他设备预先训练好后将视频分类模型对应的文件移植至本终端中。也就是说,训练该视频分类模型的执行主体与使用该视频分类模型的进行视频分类的执行主体可以是相同的,也可以是不同的。

终端在获取到待处理视频对应的多个视频帧后,利用视频分类模型对每个视频帧进行处理,得到每个视频帧对应的特征向量,基于这些特征向量生成待处理视频对应的视频特征,对该视频特征进行分类,得到的分类结果就是待处理视频对应的分类结果,即得到待处理视频所属的类别。

本申请实施例提供的视频分类的方法,通过获取待处理视频对应的多个视频帧;将多个视频帧输入到视频分类模型中处理,得到待处理视频对应的分类结果。本申请中,终端基于多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频和大量的伪标签视频对初始分类器网络进行训练得到的视频分类模型不会出现过拟合的现象。因此,使用该视频分类模型对视频分类时,分类结果更准确,从而提升了视频分类的准确度。

可选地,在本申请一些可能的实现方式中,如图2所示,图2是本申请另一实施例中视频分类的方法的示意性流程图,在图1所示的方法步骤的基础上,该方法S200可以包括:S201~S204。其中,图2所示的步骤S201可以参考上述对S101的相关描述,为了简洁,这里不再赘述。下面将具体对步骤S202~S204进行说明。

S202:采用该视频分类模型提取该多个视频帧各自对应的特征向量。

已训练好的视频分类模型中可包括输入层、多个卷积层、多个采样层、输出层(全连接层)。例如,针对每个视频帧,将该视频帧输入视频分类模型中进行处理,视频分类模型中的输入层对该视频帧进行数据归一化处理。具体地,获取该视频帧中每个像素点对应的像素值,用每个像素点对应的像素值除以255,使各个像素点对应的像素值落入[0,1]中,对该视频帧中的每个像素点都这样处理后,得到数据归一化处理后的图像。将经过数据归一化处理后的图像传递至第一个卷积层,第一个卷积层对该图像进行卷积处理,提取该图像对应的特征,并基于提取的特征输出特征图。其中,该特征可以包括该图像的颜色特征、轮廓特征、图像中包含的人物特征、动物特征、事物特征等。第一卷积层将特征图输入至第一个采样层,第一个采样层对特征图进行特征选择,去除多余特征,重构新的特征图,并将新的特征图传递至第二个卷积层。第二个卷积层对新的特征图进行二次特征提取,并基于提取的特征再次输出特征图,第二个卷积层将再次输出的特征图传递至第二个采样层,第二个采样层进行二次特征选择,重构特征图。以此类推,直至视频分类模型中的最后一个采样层对图像处理完成后,传递至输出层,即传递至全连接层。全连接层中的归一化指数函数(Softmax函数)对前一个采样层传递过来的特征进行分类,得到输入视频帧对应的特征。由于在视频分类模型中各个特征均以向量的形式表现,也可理解为全连接层输出视频帧对应的特征向量。将待处理视频对应的多个视频帧都输入视频分类模型进行上述处理,得到每个视频帧对应的特征向量。

S203:基于该多个视频帧各自对应的特征向量,生成该待处理视频对应的视频特征。

视频特征用于表示从待处理视频中识别的核心内容,即可代表待处理视频用于分类的有效特征。由于在视频分类模型中,视频特征也是以向量形式表现,为了便于理解,用视频特征表现的含义对其进行解释说明。例如,视频特征所表现的含义可以是某个运动员在篮球场打球、某人在室内演讲、演员在室内跳舞等。此处仅为示例性说明,对此不做限定。

具体地,基于多个视频帧各自对应的特征向量构建特征向量序列,即按照每个视频帧在待处理视频中的时间顺序对每个视频帧对应的特征向量进行排序。将这些特征向量按照其在特征向量序列中的顺序进行融合,得到待处理视频对应的视频特征。例如,将第一个视频帧对应的特征向量与第二个视频帧对应的特征向量进行向量的卷积运算,得到的运算结果与第三个视频帧对应的特征向量进行向量的卷积运算,以此类推,直至处理完所有视频帧对应的特征向量,并将最后的运算结果作为待处理视频对应的视频特征。

S204:对该视频特征进行分类,得到该分类结果。

该视频分类模型在训练过程中会收集大量的不同的视频特征,以及各个视频特征对应的分类结果。根据该视频特征查找与其对应的分类结果,并将查找到的分类结果输出。可以理解的是,对该视频特征进行分类得到的分类结果,就是待处理视频对应的分类结果。

本申请实施例提供的视频分类的方法,终端基于多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频和大量的伪标签视频对初始分类器网络进行训练得到的视频分类模型不会出现过拟合的现象。因此,使用该视频分类模型对视频分类时,分类结果更准确,从而提升了视频分类的准确度。进一步地,本申请中可自动生成大量的伪标签视频,无需人工对视频进行分类标签标记,节省了时间和人力,降低了成本,提升了视频分类模型的训练速度。

图3是本申请又一实施例提供的视频分类的方法的示意性流程图。如图3所示的方法300,在图1所示的方法100之前,还可以包括:S301~S303。其中,图3所示的步骤S304、S305可以参考上述对S101、S102的相关描述,为了简洁,这里不再赘述。下面将具体对步骤S301~S303进行说明。

S301:基于该初始生成器网络、该初始分类器网络以及该初始判别器网络对该多个无标签视频进行训练,得到训练好的生成器网络。

示例性的,可利用多个有标签视频对未经训练过的分类器网络模型进行初步训练后得到初始分类器网络,使该初始分类器网络对视频可进行分类处理。终端通过初始生成器网络提取每个无标签视频对应的特征,基于提取到的特征生成新的视频。可以理解为初始生成器网络学习这些无标签视频对应的特征,并根据学习到的结果自动生成新的视频。通过初始分类器网络对新的视频进行分类,得到新的视频对应的分类结果。

将新的视频以及其对应的分类结果、有标签视频均输入初始判别器网络,初始判别器网络会判定有标签视频为真,判定基于初始生成器网络生成的新的视频以及其对应的分类结果为假,初始判别器网络调整自身的参数,并将结果反馈给初始生成器网络。初始生成器网络调整其网络参数,并基于调整网络参数后的初始生成器网络继续生成新的视频,然后通过初始分类器网络对初始生成器网络生成的视频进行分类,直至初始生成器网络以及初始判别器网络各自对应的损失函数均收敛时,不再训练,并将此时初始生成器网络对应的参数作为训练好的生成器网络的参数。

可以通俗地理解为,初始生成器网络与初始分类器网络配合,尽可能地生成可以欺骗过初始判别器网络的视频以及该视频对应的分类结果。初始判别器网络尽可能判定原有的有标签视频为真,判定初始生成器网络与初始分类器网络配合生成的视频以及该视频对应的分类结果为假。根据初始判别器的判定结果不断调整初始生成器网络以及初始判别器的网络参数,直至初始生成器网络训练好。也就是说,训练好的生成器网络与初始分类器网络配合生成的视频以及该视频对应的分类结果可以欺骗过初始判别器网络,让初始判别器网络误以为这些视频以及这些视频对应的分类结果与有标签视频是类似的。

基于训练好的生成器网络与初始分类器网络配合生成的大量视频以及每个视频对应的分类结果,就相当于得到了大量的训练样本视频。

可选地,在一些可能实现的方式中,也可通过初始生成器网络、初始分类器网络在多个无标签视频中挑选视频,通过初始分类器网络对挑选出的视频进行分类,得到对应的分类结果。将挑选出的视频以及其对应的分类结果、有标签视频均输入初始判别器网络进行判定,并根据判定结果不断地调整初始生成器网络的网络参数,直至初始生成器网络以及初始判别器网络各自对应的损失函数均收敛时,不再训练,并将此时初始生成器网络对应的网络参数作为训练好的生成器网络的网络参数。其中,损失函数收敛是指,在训练过程中损失函数对应的值趋于一个值不再变化,或者变化幅度特别小。

S302:根据该训练好的生成器网络以及该多个无标签视频,生成多个伪标签视频。

示例性的,训练好的生成器网络可在多个无标签视频中提取到丰富、有效的特征,根据提取到的特征生成新的视频。例如,某个无标签视频是关于某个运动员打羽毛球的视频,则训练好的生成器网络准确地提取运动员运动的各个动作特征、羽毛球的运动特征、羽毛球拍的运动轨迹等,根据提取的这些特征生成新的视频。通过初始分类器网络对新的视频进行分类,得到新的视频对应的分类结果。将新的视频以及新的视频对应的分类结果作为伪标签视频。可通过同样的方法,生成大量的伪标签视频。

未训练好的生成器网络可能在提取特征时不是很准确,例如在提取某个运动员打羽毛球的视频的特征时,对羽毛球以及羽毛球拍的特征提取的不是很准确,导致初始分类器网络可能将其对应的视频归类为打网球。而本实施例中训练好的生成器网络可以提取出更细节的特征,例如在提取某个运动员打羽毛球的视频的特征时,可准确提取出羽毛球的特征、羽毛球拍的特征,使得初始分类器对其生成的视频进行分类时,分类结果更准确。因此,生成的伪标签视频也更真实,与有标签视频更接近。

可选地,在一些可能实现的方式中,训练好的生成器网络可在多个无标签视频中挑选出可用于生成伪标签视频的视频,通过初始分类器网络对挑选出的视频进行分类,得到对应的分类结果。将挑选出的视频以及其对应的分类结果作为伪标签视频。可通过同样的方法,生成大量的伪标签视频。

S303:基于该多个有标签视频以及该多个伪标签视频对该初始分类器网络进行训练,得到该视频分类模型。

基于多个有标签视频以及大量的伪标签视频对初始分类器网络进行训练,得到训练好的视频分类模型。值得说明的是这里的初始分类器网络可以是S102中提到的未经训练过的分类器网络模型,也可以是S301中提到的利用多个有标签视频对未经训练过的分类器网络模型进行初步训练后得到的初始分类器网络。

图4是本申请另一实施例提供的一种视频分类的方法的示意性流程图。示例性地,在本申请一些可能的实现方式中,上述S301可包括S3011~S3015,下面将具体对步骤S3011~S3015进行说明。

S3011:基于该初始生成器网络、该初始分类器网络在该多个无标签视频中,获取目标视频;该目标视频为置信度大于置信度阈值的无标签视频;该置信度用于初步判断该无标签视频是否可用于生成伪标签视频。

通过初始生成器网络、初始分类器网络在多个无标签视频中,挑选置信度大于置信度阈值的无标签视频作为目标视频。其中,置信度阈值预先设置,可根据具体的实施情况进行调整,对此不做限定。置信度用于初步判断该无标签视频是否可用于生成伪标签视频可以理解为,初始生成器网络、初始分类器网络在多个无标签视频中挑选出的目标视频后续用于生成伪标签视频,而此时由于初始生成器网络还没训练好,所以此时挑选出的目标视频不是很准确,当初始生成器网络训练好之后,再挑选出的目标视频就可用于生成伪标签视频。例如,当通过训练好的生成器网络挑选出目标视频之后,通过初始分类器网络对目标视频进行分类,得到对应的分类结果,将目标视频以及其对应的分类结果可作为伪标签视频。

具体地,可通过预设公式挑选目标视频,预设公式如下:P=C(D(F(U))), (1)

上述公式(1)中的P表示置信度,C表示初始分类器网络,D表示无标签视频与有标签视频之间的特征映射,F表示初始生成器网络,U表示无标签视频集。其中,无标签视频集就是指多个无标签视频组成的集合。通过比较置信度与置信度阈值之间的大小,在多个无标签视频中挑选出目标视频。

S3012:基于该初始分类器网络对该目标视频进行分类处理,得到该目标视频对应的分类结果。

通过初始分类器网络对挑选出的目标视频进行分类处理,得到目标视频对应的分类结果。先对目标视频进行分割处理,得到目标视频对应的多个视频帧,将目标视频对应的多个视频帧输入初始分类器网络中进行分类处理。具体分类处理的过程与图2对应的实施例中S202~S204中视频分类模型对多个视频帧进行处理的过程类似,请参考S202~S204中的描述,此处不再赘述。

S3013:将该有标签视频、该目标视频以及该目标视频对应的分类结果输入该初始判别器网络进行判别处理,得到该有标签视频对应的第一判别结果和该目标视频对应的第二判别结果。

将有标签视频、目标视频以及目标视频对应的分类结果输入初始判别器网络中进行判别处理。在初期训练时,初始判别器网络会判定有标签视频为真,目标视频以及目标视频对应的分类结果为假。即有标签视频对应的第一判别结果为真,目标视频对应的第二判别结果为假。可以理解的是,当初始生成器网络训练好时,再挑选出的目标视频经过初始判别器网络对其进行判定时,初始判别器网络会将目标视频以及目标视频对应的分类结果判定为真。也就是说,当得到训练好的生成器网络时,基于训练好的生成器网络以及初始分类器网络可以生成欺骗过初始判别器网络的目标视频以及目标视频对应的分类结果,即生成欺骗过初始判别器网络的伪标签视频。

S3014:基于该第一判别结果以及该第二判别结果,确定该初始生成器网络对应的第一损失值以及该初始判别器网络对应的第二损失值。

示例性地,可将判别结果为真的记为1,判别结果为假的记为0。可基于第一判别结果以及初始生成器网络对应的损失函数计算第一损失值,基于第二判别结果以及初始判别器网络对应的损失函数计算第二损失值。在该示例中,可以利用交叉熵损失函数作为初始生成器网络对应的损失函数,利用二分类交叉熵函数作为初始判别器网络对应的损失函数,此处仅为示例性说明,对此不做限定。例如,基于第一判别结果与交叉熵损失函数计算第一损失值,基于第二判别结果与二分类交叉熵函数计算第二损失值。

S3015:当该第一损失值小于或等于第一预设阈值且该第二损失值小于或等于第二预设阈值时,停止训练该初始生成器网络,并将训练后的初始生成器网络作为该训练好的生成器网络。

第一预设阈值用于与第一损失值进行比较,第二预设阈值用于与第二损失值进行比较,根据比较结果可判断初始生成器网络是否达到训练要求。第一预设阈值与第二预设阈值可预先设定,在训练初始生成器网络的过程中可随时调整,对此不做限定。

示例性地,当比较结果为第一损失值小于或等于第一预设阈值,且第二损失值小于或等于第二预设阈值时,停止训练初始生成器网络,并将此时的初始生成器网络作为训练好的生成器网络。当比较结果中有任一损失值大于其对应的预设阈值时,调整初始生成器网络以及初始判别器网络中的网络参数,并返回执行S3011~S3014,直至两个损失值均小于或等于其对应的预设阈值。

图5是本申请另一实施例提供的一种视频分类的方法的示意性流程图。示例性地,在本申请一些可能的实现方式中,如图5所示,上述S303可包括S3031~S3034,下面将具体对步骤S3031~S3034进行说明。

S3031:将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果。

有标签视频包括第一视频以及第一视频对应的第一分类标签;伪标签视频包括第二视频以及第二视频对应的第二分类标签。

在训练过程中,用于训练的样本视频包含了多个有标签视频和大量的伪标签视频。对输入初始分类器网络中处理的视频的次序不做限定,即对输入的第一视频和第二视频的次序不限定。可以是先将所有的有标签视频对应的第一视频包含的视频帧都输入初始分类器网络进行处理,再将所有的伪标签视频对应的第二视频包含的视频帧都输入初始分类器网络进行处理。也可以将第一视频包含的视频帧与第二视频包含的视频帧交叉输入,例如,先输入一个第一视频包含的视频帧再输入一个第二视频包含的视频帧等,对此均不作限定。相应地,输入初始分类器网络的是第一视频包含的视频帧时,初始分类器网络输出第一视频对应的分类结果;输入初始分类器网络的是第二视频包含的视频帧时,初始分类器网络输出第二视频对应的分类结果。

初始分类器网络对第一视频对应的多个视频帧、以及对第二视频对应的多个视频帧进行分类处理的过程,可参考S202~S204中的描述,此处不再赘述。

S3032:基于该第一视频以及该第二视频各自对应的分类结果、该第一分类标签以及该第二分类标签计算第三损失值。

在该示例中,可以利用激活函数(sigmod函数)作为损失函数,通过该激活函数计算第三损失值。当输入初始分类器网络的是第一视频对应的多个视频帧时,基于第一视频对应的分类结果、第一分类标签以及损失函数计算第三损失值;当输入初始分类器网络的是第二视频对应的多个视频帧时,基于第二视频对应的分类结果、第二分类标签以及损失函数计算第三损失值。

在计算得到第三损失值时,判断第三损失值与第三预设阈值之间的大小,当判断结果为第三损失值大于第三预设阈值时,执行S2033;当判断结果为第三损失值小于或等于第三预设阈值时,执行S2034。

S3033:当该第三损失值大于第三预设阈值时,调整该初始分类器网络的参数,并返回执行将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果的步骤。

第三预设阈值用于与第三损失值进行比较,根据第三损失值与第三预设阈值的比较结果可判断初始初始分类器网络是否达到训练要求,第三预设阈值可预先设定,在训练初始分类器网络的过程中可随时调整,对此不做限定。

例如,在训练过程中终端比较第三损失值与第三预设阈值的大小,当第三损失值大于第三预设阈值时,判定当前的初始分类器网络还未达到要求。此时,需要调整初始分类器网络中的参数,调整之后返回S3031,继续执行S3031和S3032,直到在S3032中确定第三损失值小于或等于第三预设阈值时,执行S3034。

S3034:当该第三损失值小于或等于该第三预设阈值时,停止训练该初始分类器网络,并将训练后的初始分类器网络作为该视频分类模型。

示例性地,在训练过程中终端比较第三损失值与第三预设阈值的大小,当第三损失值小于或等于第三预设阈值时,判定当前的初始分类器网络符合预期要求,停止训练初始分类器网络。将此时初始分类器网络作为训练好的视频分类模型。

视频分类模型是初始分类器网络经过多个有标签视频和大量的伪标签视频训练得到的,训练的样本数量多,种类丰富、全面,不会出现过拟合的情况,且其损失值保持在一个较小的范围内。因此,使用该视频分类模型对待处理视频对应的多个视频帧进行处理时,得到的分类结果非常准确。

本申请实施例提供的视频分类的方法,终端通过多个无标签视频、初始生成器网络、初始分类器网络以及初始判别器网络生成大量的伪标签视频,基于多个有标签视频和大量的伪标签视频对初始分类器网络进行训练得到的视频分类模型不会出现过拟合的现象。因此,使用该视频分类模型对视频分类时,分类结果更准确,从而提升了视频分类的准确度。进一步地,本实施例中可自动生成大量的可用于训练的伪标签视频,无需人工对视频进行分类标签标记,节省了时间和人力,降低了成本,提升了视频分类模型的训练速度。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

请参见图6,图6是本申请一实施例提供的一种视频分类的装置的示意图。图6示出了本申请实施例的视频分类的装置400的示意性框图,该装置400可以包括处理单元410,可选的,该装置可以包括存储单元420。存储单元420用于执行存储单元存储的指令。

示例性地,该装置包括处理单元(模块)410,该处理单元410用于:

获取待处理视频对应的多个视频帧;

将多个视频帧输入到视频分类模型中处理,得到该待处理视频对应的分类结果;其中,该视频分类模型是基于初始生成器网络、初始判别器网络以及初始分类器网络,对样本视频集合进行训练得到的;该样本视频集合包括多个有标签视频、多个伪标签视频、以及多个无标签视频;该多个伪标签视频基于该多个无标签视频、该初始生成器网络、该初始分类器网络以及该初始判别器网络生成。

可选地,该处理单元410还用于:

采用该视频分类模型提取该多个视频帧各自对应的特征向量;

基于该多个视频帧各自对应的特征向量,生成该待处理视频对应的视频特征;

对该视频特征进行分类,得到该分类结果。

可选地,该处理单元410还用于:

基于该初始生成器网络、该初始分类器网络以及该初始判别器网络对多个无标签视频进行训练,得到训练好的生成器网络;

根据该训练好的生成器网络以及多个无标签视频,生成多个伪标签视频;

基于多个有标签视频以及多个伪标签视频对该初始分类器网络进行训练,得到该视频分类模型。

可选地,该处理单元410还用于:

基于该初始生成器网络、该初始分类器网络在该多个无标签视频中,获取目标视频;该目标视频为置信度大于置信度阈值的无标签视频;该置信度用于初步判断该无标签视频是否可用于生成伪标签视频;

基于该初始分类器网络对该目标视频进行分类处理,得到该目标视频对应的分类结果;

将该有标签视频、该目标视频以及该目标视频对应的分类结果输入该初始判别器网络进行判别处理,得到该有标签视频对应的第一判别结果和该目标视频对应的第二判别结果;

基于该第一判别结果以及该第二判别结果,确定该初始生成器网络对应的第一损失值以及该初始判别器网络对应的第二损失值;

当该第一损失值小于或等于第一预设阈值且该第二损失值小于或等于第二预设阈值时,停止训练该初始生成器网络,并将训练后的初始生成器网络作为该训练好的生成器网络。

在第二方面一种可能的实现方式中,该有标签视频包括第一视频以及该第一视频对应的第一分类标签;该伪标签视频包括第二视频以及该第二视频对应的第二分类标签;该处理单元还用于:

将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果;

基于该第一视频以及该第二视频各自对应的分类结果、该第一分类标签以及该第二分类标签计算第三损失值;

当该第三损失值大于第三预设阈值时,调整该初始分类器网络的参数,并返回执行该将该第一视频对应的多个视频帧以及该第二视频对应的多个视频帧输入该初始分类器网络中处理,得到该第一视频以及该第二视频各自对应的分类结果的步骤。

可选地,当第三损失值小于或等于所述第三预设阈值时,该处理单元还用于:该处理单元410还用于:

当该第三损失值小于或等于该第三预设阈值时,停止训练该初始分类器网络,并将训练后的初始分类器网络作为该视频分类模型

可选的,该装置还可以包括收发单元430,收发单元430用于在处理单元410的驱动下执行具体的信号收发。收发单元430可以是收发器、输入/输出接口或接口电路。收发单元430、处理单元410和存储单元420相互耦合,存储单元存储指令,处理单元410用于执行存储单元存储的指令,收发单元430用于在处理单元410的驱动下执行具体的信号收发。

可选的,收发单元430可以包括接收单元(模块)和发送单元(模块),用于执行前述方法100、方法200以及方法300的各个实施例接收信息和发送信息的步骤。

请参见图7,图7是本申请另一实施例提供的一种视频分类的装置的示意图。如图7所示,该视频分类的装置500包括:处理器510、可选的,还可以包括存储器520,存储器520用于存储计算机可读指令,处理器510执行计算机可读指令时实现上述各个视频分类的方法实施例中的步骤,例如图1所示的S101至S102。可选的,该视频分类的装置还可以包括收发器530,用于执行前述方法100、方法200以及方法300的各个实施例接收信息和发送信息的步骤。

视频分类的装置500可包括但不仅限于,处理器510、存储器520。本领域技术人员可以理解,图7仅仅是视频分类的装置500的示例,并不构成对视频分类的装置500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如视频分类的装置500还可以包括输入输出终端、网络接入终端、总线等。

所称处理器510可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field~Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

该存储器520可以是视频分类的装置500的内部存储单元,例如视频分类的装置500的硬盘或内存。该存储器520也可以是视频分类的装置500的外部存储终端,例如视频分类的装置500上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,该存储器520还可以既包括视频分类的装置500的内部存储单元也包括外部存储终端。该存储器520用于存储计算机可读指令以及视频分类的装置500所需的其他程序和数据。该存储器520还可以用于暂时地存储已经输出或者将要输出的数据。

本申请实施例还提供了一种终端设备,该终端设备包括上述本申请实施例提供的任意一种视频分类的装置。或者,上述本申请实施例提供的任意一种视频分类的装置可以为终端设备。

本申请实施例还提供了一种计算机可读介质,用于存储计算机程序代码,该计算机程序包括用于执行上述方法100、方法200以及方法300中视频分类的方法的指令。该可读介质可以是只读存储器(read-only memory,ROM)或随机存取存储器(random accessmemory,RAM),本申请实施例对此不做限制。

本申请还提供了一种计算机程序产品,该计算机程序产品包括指令,当该指令被执行时,以使得终端设备执行对应于上述方法的终端设备的操作。

本申请实施例还提供了一种芯片或者集成电路,该芯片或者集成电路包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有该芯片或者集成电路的设备执行上述视频分类的方法。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神范围,均应包含在本申请的保护范围之内。

相关技术
  • 一种视频分类的方法、装置、终端及存储介质
  • 模型生成方法、视频分类方法、装置、终端及存储介质
技术分类

06120113098609