CN115240103A - 基于视频和文本的模型训练方法及装置 - Google Patents
基于视频和文本的模型训练方法及装置 Download PDFInfo
- Publication number
- CN115240103A CN115240103A CN202210705813.5A CN202210705813A CN115240103A CN 115240103 A CN115240103 A CN 115240103A CN 202210705813 A CN202210705813 A CN 202210705813A CN 115240103 A CN115240103 A CN 115240103A
- Authority
- CN
- China
- Prior art keywords
- video
- training
- video frames
- frame
- frames
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种基于视频和文本的模型训练方法及装置,该方法包括:确定用于训练模型的训练视频和对应的描述文本;对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧;将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算所述视频重建预测模型输出的多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值,根据所述损失函数值对所述视频重建预测模型的模型参数进行优化直至收敛,得到训练好的所述视频重建预测模型。可见,本发明能够利用了Transformer网络结构的算法优势,使得训练得到的模型能够实现根据文本重建视频的效果。
Description
技术领域
本发明涉及算法模型训练技术领域,尤其涉及一种基于视频和文本的模型训练方法及装置。
背景技术
随着算法技术的发展,越来越多的企业开始利用算法模型来执行视频相关的数据预测任务,例如视频重建,这一类任务需要算法模型能够充分提取视频的特征并进行学习。但现有技术在进行这类模型的训练时,没有考虑到描述文本和视频之间的联系,也没有考虑到利用Transformer网络结构的算法优势进行视频相关任务的训练,因此训练得到的模型无法达到良好的预测效果。可见,现有技术存在缺陷,亟待解决。
发明内容
本发明所要解决的技术问题在于,提供一种基于视频和文本的模型训练确定方法及装置,能够利用了Transformer网络结构的算法优势,使得训练得到的模型能够实现根据文本重建视频的效果。
为了解决上述技术问题,本发明第一方面公开了一种基于视频和文本的模型训练方法,所述方法包括:
确定用于训练模型的训练视频和对应的描述文本;
对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧;
将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算所述视频重建预测模型输出的多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值,根据所述损失函数值对所述视频重建预测模型的模型参数进行优化直至收敛,得到训练好的所述视频重建预测模型。
作为一种可选的实施方式,在本发明第一方面中,所述对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧,包括:
根据所述训练视频的视频参数,确定所述训练视频对应的第一抽帧间隔;
根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧,包括:
根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个候选视频帧;
对于任意两个相邻的所述候选视频帧,计算该两个候选视频帧之间的画面相似度;
判断所述画面相似度是否满足预设的相似度阈值条件;
若判断结果为是,将该两个候选视频帧确定为关键视频帧;
根据所述多个候选视频帧中的所有所述关键视频帧,确定所述训练视频对应的多个训练视频帧。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述多个候选视频帧中的所有所述关键视频帧,确定所述训练视频对应的多个训练视频帧,包括:
对所述多个候选视频帧中除所述关键视频帧以外的其他候选视频帧,根据第二抽帧间隔进行抽帧操作,得到多个抽取视频帧;所述第二抽帧间隔大于所述第一抽帧间隔;
将所有所述关键视频帧和所述抽取视频帧,确定为所述训练视频对应的多个训练视频帧。
作为一种可选的实施方式,在本发明第一方面中,在所述对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧之后,所述方法还包括:
判断所述多个训练视频帧的数量是否大于预设的第一帧数阈值;
若是,将所述多个训练视频帧划分为至少两个视频帧数量小于或等于所述第一帧数阈值的划分训练视频帧组;每个所述划分训练视频帧组用于在对视频重建预测模型进行训练时作为单次输入的训练数据;
和/或,
判断所述多个训练视频帧的数量是否小于预设的第二帧数阈值;
若是,从所述训练视频中抽取视频帧填充至所述多个训练视频帧中,直至所述多个训练视频帧的数量等于所述第二帧数阈值。
作为一种可选的实施方式,在本发明第一方面中,在所述将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练之前,所述方法还包括:
对按照原始时间顺序排列的所述多个训练视频帧的排列顺序进行打乱,得到乱序训练视频帧;所述乱序训练视频帧用于输入至所述视频重建预测模型的编码器;所述编码器根据所述乱序训练视频帧的编码输出数据用于在恢复为所述原始时间顺序后输入至所述视频重建预测模型的解码器;
和/或,
确定出所述多个训练视频帧中的掩膜视频帧;
对所述掩膜视频帧进行删除,将所述多个训练视频帧剩余的训练视频帧确定为输入视频帧;所述输入视频帧用于输入至所述视频重建预测模型的编码器;所述掩膜视频帧用于与所述编码器根据所述输入视频帧的编码输出数据一起输入至所述视频重建预测模型的解码器;所述掩膜视频帧的数量与所述多个训练视频帧的总数量的比值大于50%。
作为一种可选的实施方式,在本发明第一方面中,所述视频重建预测模型包括编码器;所述编码器包括视频嵌入层、文本嵌入层、特征融合层和第一Transformer层;所述视频嵌入层用于接收所述训练视频帧并处理得到视频特征;所述文本嵌入层用于接收所述描述文本并处理得到文本特征;所述特征融合层用于将所述视频特征和所述文本特征进行融合以得到训练特征,并将所述训练特征输入至所述第一Transformer层。
作为一种可选的实施方式,在本发明第一方面中,所述多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值的计算方式如下:
对于任一所述预测视频帧,计算该预测视频帧与对应的所述训练视频帧之间的帧损失函数值;
计算所有所述预测视频帧的所述帧损失函数值的平均值,得到多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值。
本发明第二方面公开了一种基于视频和文本的模型训练装置,所述装置包括:
数据确定模块,用于确定用于训练模型的训练视频和对应的描述文本;
抽帧操作模块,用于对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧;
模型训练模块,用于将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算所述视频重建预测模型输出的多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值,根据所述损失函数值对所述视频重建预测模型的模型参数进行优化直至收敛,得到训练好的所述视频重建预测模型。
作为一种可选的实施方式,在本发明第二方面中,所述抽帧操作模块包括:
间隔确定单元,用于根据所述训练视频的视频参数,确定所述训练视频对应的第一抽帧间隔;
抽帧操作单元,用于根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧。
作为一种可选的实施方式,在本发明第二方面中,所述抽帧操作单元根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧的具体方式,包括:
根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个候选视频帧;
对于任意两个相邻的所述候选视频帧,计算该两个候选视频帧之间的画面相似度;
判断所述画面相似度是否满足预设的相似度阈值条件;
若判断结果为是,将该两个候选视频帧确定为关键视频帧;
根据所述多个候选视频帧中的所有所述关键视频帧,确定所述训练视频对应的多个训练视频帧。
作为一种可选的实施方式,在本发明第二方面中,所述抽帧操作单元根据所述多个候选视频帧中的所有所述关键视频帧,确定所述训练视频对应的多个训练视频帧的具体方式,包括:
对所述多个候选视频帧中除所述关键视频帧以外的其他候选视频帧,根据第二抽帧间隔进行抽帧操作,得到多个抽取视频帧;所述第二抽帧间隔大于所述第一抽帧间隔;
将所有所述关键视频帧和所述抽取视频帧,确定为所述训练视频对应的多个训练视频帧。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括帧数修正模块,用于在所述抽帧操作模块对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧之后,执行以下步骤:
判断所述多个训练视频帧的数量是否大于预设的第一帧数阈值;
若是,将所述多个训练视频帧划分为至少两个视频帧数量小于或等于所述第一帧数阈值的划分训练视频帧组;每个所述划分训练视频帧组用于在对视频重建预测模型进行训练时作为单次输入的训练数据;
和/或,
判断所述多个训练视频帧的数量是否小于预设的第二帧数阈值;
若是,从所述训练视频中抽取视频帧填充至所述多个训练视频帧中,直至所述多个训练视频帧的数量等于所述第二帧数阈值。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括预处理模块,用于在所述模型训练模块将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练之前,执行以下步骤:
对按照原始时间顺序排列的所述多个训练视频帧的排列顺序进行打乱,得到乱序训练视频帧;所述乱序训练视频帧用于输入至所述视频重建预测模型的编码器;所述编码器根据所述乱序训练视频帧的编码输出数据用于在恢复为所述原始时间顺序后输入至所述视频重建预测模型的解码器;
和/或,
确定出所述多个训练视频帧中的掩膜视频帧;
对所述掩膜视频帧进行删除,将所述多个训练视频帧剩余的训练视频帧确定为输入视频帧;所述输入视频帧用于输入至所述视频重建预测模型的编码器;所述掩膜视频帧用于与所述编码器根据所述输入视频帧的编码输出数据一起输入至所述视频重建预测模型的解码器;所述掩膜视频帧的数量与所述多个训练视频帧的总数量的比值大于50%。
作为一种可选的实施方式,在本发明第二方面中,所述视频重建预测模型包括编码器;所述编码器包括视频嵌入层、文本嵌入层、特征融合层和第一Transformer层;所述视频嵌入层用于接收所述训练视频帧并处理得到视频特征;所述文本嵌入层用于接收所述描述文本并处理得到文本特征;所述特征融合层用于将所述视频特征和所述文本特征进行融合以得到训练特征,并将所述训练特征输入至所述第一Transformer层。
作为一种可选的实施方式,在本发明第二方面中,所述多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值的计算方式如下:
对于任一所述预测视频帧,计算该预测视频帧与对应的所述训练视频帧之间的帧损失函数值;
计算所有所述预测视频帧的所述帧损失函数值的平均值,得到多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值。
本发明第三方面公开了另一种基于视频和文本的模型训练装置,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的基于视频和文本的模型训练方法中的部分或全部步骤。
本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明实施例第一方面公开的基于视频和文本的模型训练方法中的部分或全部步骤。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例中,确定用于训练模型的训练视频和对应的描述文本;对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧;将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算所述视频重建预测模型输出的多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值,根据所述损失函数值对所述视频重建预测模型的模型参数进行优化直至收敛,得到训练好的所述视频重建预测模型。可见,本发明能够利用训练视频进行抽帧得到的视频帧和视频对应的描述文本,对基于Transformer网络结构的算法模型进行训练,从而能够利用了Transformer网络结构的算法优势,使得训练得到的模型能够实现根据文本重建视频的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于视频和文本的模型训练方法的流程示意图;
图2是本发明实施例公开的另一种基于视频和文本的模型训练方法的流程示意图;
图3是本发明实施例公开的一种基于视频和文本的模型训练装置的结构示意图;
图4是本发明实施例公开的另一种基于视频和文本的模型训练装置的结构示意图;
图5是本发明实施例公开的又一种基于视频和文本的模型训练装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种基于视频和文本的模型训练方法及装置,能够利用训练视频进行抽帧得到的视频帧和视频对应的描述文本,对基于Transformer网络结构的算法模型进行训练,从而能够利用了Transformer网络结构的算法优势,使得训练得到的模型能够实现根据文本重建视频的效果。以下分别进行详细说明。
实施例一
请参阅图1,图1是本发明实施例公开的一种基于视频和文本的模型训练方法的流程示意图。其中,图1所描述的方法应用于视频数据处理装置中,该处理装置可以是相应的处理终端、处理设备或处理服务器,且该服务器可以是本地服务器,也可以是云服务器,本发明实施例不做限定。如图1所示,该基于视频和文本的模型训练方法可以包括以下操作:
101、确定用于训练模型的训练视频和对应的描述文本。
可选的,描述文本与训练视频的内容相关,其可以由操作人员根据训练视频的内容进行撰写,也可以通过其他视频内容算法进行自动预测生成,本发明不做限定。
可选的,训练视频的视频内容,可以根据欲训练得到的模型的目标处理视频内容来确定,其也可以包括有多种类型的视频内容,以提高训练出的模型的自适应特性。可选的,训练视频的视频内容可以为一个连续的动作或连续的场景,由于本发明的方案中加入了描述文本的辅助,因此训练视频的视频内容中的画面镜头或场景可以存在切换的情况。
102、对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧。
103、将多个训练视频帧和描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算视频重建预测模型输出的多个预测视频帧和输入的多个训练视频帧之间的损失函数值,根据损失函数值对视频重建预测模型的模型参数进行优化直至收敛,得到训练好的视频重建预测模型。
可选的,损失函数值可以为L1损失函数值或L2损失函数值,或是其他适用于计算图像间的相似度的损失函数值,本发明不做限定。
可见,实施本发明实施例所描述的方法能够利用训练视频进行抽帧得到的视频帧和视频对应的描述文本,对基于Transformer网络结构的算法模型进行训练,从而能够利用了Transformer网络结构的算法优势,使得训练得到的模型能够实现根据文本重建视频的效果。
作为一种可选的实施方式,视频重建预测模型包括编码器和解码器,其中,编码器用于对特征进行提取,解码器用于对特征进行还原。可选的,编码器包括视频嵌入层、文本嵌入层、特征融合层和第一Transformer层。其中,视频嵌入层用于接收训练视频帧并处理得到视频特征,文本嵌入层用于接收描述文本并处理得到文本特征,特征融合层用于将视频特征和文本特征进行融合以得到训练特征,并将训练特征输入至第一Transformer层。
其中,视频嵌入层包括二维卷积层和/或三维卷积层。
可选的,可以构建一个二维卷积的图像块嵌入层(Patch Embedding)作为视频嵌入层,其用于用一个较低维度的向量来替代高维度的原始图像特征,可选的,图像块嵌入层由一层卷积层构成,卷积核的尺寸和步长的大小相等,输出通道数选择768(其他也可)。
可选的,也可以构建一个三维卷积的视频块嵌入层作为视频嵌入层,即3D PatchEmbedding层,通过三维卷积层,同时在空间和时间维度上进行卷积,从而额外提取出前后帧之间的相关性特征。具体的,为了确保每一帧之间都能拥有前后相关性的特征,因此卷积的步长大小不一定等于卷积的深度大小,也即步长可以等于1,例如卷积深度等于2,步长等于1,此时第一帧与第二帧会通过三维卷积得到一个特征向量,随后第二帧和第三帧也会得到一个特征向量……如果卷积深度等于2,步长也等于2,此时第一帧与第二帧卷积后得到一个特征向量,随后直接计算第三帧与第四帧之间的卷积特征,不再计算第二第三帧之间的特征。
具体的,通过该视频嵌入层,把输入的视频帧都转换为对应的特征向量。以二维卷积的图像块嵌入层的一个具体实施方案为例,例如30帧视频帧,每帧的图像尺寸为224*224,维度即为(30,3,224,224),3代表RGB三通道,卷积核尺寸为(16,16),步长为16,经过转换后变成(30,768,14,14),再将其变换为特征向量(30,768,196)。随后,调换维度的顺序并且在196的维度的初始位置新增一个类别标记,用来处理分类等下游任务,最终得到的特征的维度为(30,197,768)。
可选的,文本嵌入层可以包括一个Tokenizer模块和Embedding模块,其中,Tokenizer模块用于将输入的描述文本的文本字符转换成token索引,随后Embedding模块将token索引编码成特征向量。
可选的,特征融合层可以包括第一全连接层、第二全连接层、特征融合模块和GELU激活层。其中,第一全连接层和第二全连接层输入特征维度需要相等,以便将二者特征进行融合。其中,第一全连接层用于接收视频嵌入层的输出特征,并进行特征空间的转换,第二全连接层用于接收文本嵌入层的输出特征,并进行特征空间的转换,特征融合模块可以用特征相加均值融合、拼接融合,或其他融合方法对第一全连接层和第二全连接层的特征进行融合,并通过GELU激活层进行变换,得到最终融合得到的特征。
在一个具体的方案中,为了更好的使视频帧特征与文本特征融合在一起,分别构建两个全连接层用于特征空间的转换,视频帧的特征向量维度为(30,197,768),文本特征由于没有添加位置标记,当使用最大文本长度196时,对应的特征向量维度为(1,196,768),在第1维度(从0开始)上拼接上述两种特征,再变换拼接特征的维度顺序,也即:(30,197+196,768)->(30,768,197+196),随后输入到一个全连接层中,输出维度为(30,768,197),最后再使用一层GELU激活层进行非线性变换,得到融合后的特征,重新变换维度为(30,197,768)。
可选的,第一Transformer层包括有多个堆叠的Transformer模块,其结构可以参考VIT(Vision Transformer)网络的编码器结构。
可见,通过实施该可选的实施方式,能够构建出可以充分提取视频帧和描述文本的特征并进行融合的编码器结构,以使得模型的预测效果更好。
作为一种可选的实施方式,解码器包括第一全连接层、第二Transformer层和第二全连接层。
具体的,解码器首先会采用一层全连接层,用来融合并转换编码器的特征。随后同样由多个Transformer模块构成,在最后还会再采用一层全连接层用来生成像素级的视频帧。
可见,通过实施该可选的实施方式,能够构建出可以充分重构视频帧的特征的解码器结构,以使得模型的预测效果更好。
作为一种可选的实施方式,在上述步骤中的,将多个训练视频帧和描述文本输入基于Transformer网络结构的视频重建预测模型进行训练之前,该方法还包括:
对多个训练视频帧进行归一化操作,使得每一训练视频帧中的像素点的像素值在预设的像素值区间中。
优选的,原始的输入视频帧在进行被编码器处理得到特征之前会先进行归一化操作,使图像的像素值取值范围变换为[0,1]。因此,解码器输出的视频帧像素值的取值范围也同样会是[0,1],这可以有效提高计算的效率和训练效率。
作为一种可选的实施方式,上述步骤中的,在根据多个训练视频帧对基于Transformer网络结构的视频重建预测模型进行训练之前,该方法还包括:
对按照原始时间顺序排列的多个训练视频帧的排列顺序进行打乱,得到乱序训练视频帧。
其中,乱序训练视频帧用于输入至视频重建预测模型的编码器,具体的,编码器根据乱序训练视频帧的编码输出数据用于在恢复为原始时间顺序后输入至视频重建预测模型的解码器。
通过上述设置,可以对视频帧进行打乱后以对模型进行训练,可以有效提高训练得到的模型的预测效果。
作为一种可选的实施方式,在上述步骤中的,将多个训练视频帧和描述文本输入基于Transformer网络结构的视频重建预测模型进行训练之前,该方法还包括:
确定出多个训练视频帧中的掩膜视频帧;
对掩膜视频帧进行删除,将所述多个训练视频帧剩余的训练视频帧确定为输入视频帧。
其中,输入视频帧用于输入至视频重建预测模型的编码器,具体的,掩膜视频帧用于与编码器根据输入视频帧的编码输出数据一起输入至视频重建预测模型的解码器。
具体的,掩膜视频帧的数量与多个训练视频帧的总数量的比值大于50%,这一设置的目的在于,由于存在文本描述信息的约束,因此可以增大对视频帧的Mask比例,较大的Mask比例降低了输入的特征向量大小,因而大幅减少了参数量和运算量,降低了相关硬件设备的性能要求,同时更大的Mask比例不仅不会使训练异常,反而会使模型基于已有的视频帧,再根据文本描述重构出更加丰富的视频效果。
例如,以上述具体实施方案为例,一共有30个视频帧,对应了(30,197,768)的特征向量,对其进行50%比例的Mask操作后再随机打乱视频帧顺序,得到维度为(15,197,768)的特征向量。文本描述对应的特征向量为(1,196,768)。再按上述提出的融合方法进行特征融合。
作为一种可选的实施方式,多个预测视频帧和输入的多个训练视频帧之间的损失函数值的计算方式如下:
对于任一预测视频帧,计算该预测视频帧与对应的训练视频帧之间的帧损失函数值;
计算所有预测视频帧的帧损失函数值的平均值,得到多个预测视频帧和输入的多个训练视频帧之间的损失函数值。
具体的,可以通过计算编码器接收的原始视频帧和解码器对应的输出视频帧之间的SmoothL1损失,每帧之间对应求取损失后,再求平均值,作为视频帧重构的损失。由于上述方法已经将文本特征和视频帧特征融合为一体,因此损失部分无需使用额外的视频文本语义损失,只需要基于原始视频帧和对应的解码视频帧进行损失计算。
优选的,在通过上述步骤之后训练得到的模型,可以依据文本描述,在已有的少量视频帧中生成出具有更多创意化的视频效果。并且由于使用了更大的Mask比例,可以减小模型训练过程中对硬件设备的性能要求。
实施例二
请参阅图2,图2是本发明实施例公开的另一种基于视频和文本的模型训练方法的流程示意图。其中,图2所描述的方法应用于视频数据处理装置中,该处理装置可以是相应的处理终端、处理设备或处理服务器,且该服务器可以是本地服务器,也可以是云服务器,本发明实施例不做限定。如图2所示,该基于视频和文本的模型训练方法可以包括以下操作:
201、确定用于训练模型的训练视频和对应的描述文本。
202、根据训练视频的视频参数,确定训练视频对应的第一抽帧间隔。
可选的,视频参数可以包括画面变化参数和/或视频场景参数,其可以用于表征视频内容的复杂程度,在复杂程度较高时,应当缩短第一抽帧间隔以得到更多的视频帧,使得视频帧可以充分反映视频内容,在复杂程度较低时,可以适当增大第一抽帧间隔,得到更少的视频帧。
203、根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧。
可选的,本发明所述的抽帧间隔可以为时间间隔或帧数间隔。
可选的,可以根据时间顺序或帧数顺序,以第一抽帧间隔为间隔,确定多个抽帧时间点,再将训练视频中对应的抽帧时间点对应的视频帧进行获取,以得到训练视频对应的多个训练视频帧。需要说明的是,多个训练视频帧中相邻视频帧之间的时间间隔或帧数间隔不一定严格是上述第一抽帧间隔,这是因为在按照时间顺序或帧数间隔进行抽帧时,可能在末尾的部分间隔不足的时候,直接将最后一帧确定为一个训练视频帧。
可选的,在得到训练视频对应的多个训练视频帧之后,可以将多个训练视频帧与该训练视频的标识(如存放路径、视频ID等)进行绑定及保存,以备后续的训练。
204、将多个训练视频帧和描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算视频重建预测模型输出的多个预测视频帧和输入的多个训练视频帧之间的损失函数值,根据损失函数值对视频重建预测模型的模型参数进行优化直至收敛,得到训练好的视频重建预测模型。
上述步骤201、204的具体的技术细节和技术名词解释,可以参照实施一中对步骤101、103的表述,在此不再赘述。
可见,实施本发明实施例所描述的方法能够确定出合理的抽帧间隔,从而能够抽帧得到合适的能够表征视频内容的视频帧,使得训练得到的模型的预测效果更好。
作为一种可选的实施方式,第一抽帧间隔包括多个不同的第一抽帧间隔。相应的,上述步骤中的,根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧,可以包括:
分别根据多个不同的抽帧间隔,对训练视频进行抽帧操作,以分别得到训练视频对应的多个训练视频帧组。
可选的,每一训练视频帧组用于在对视频重建预测模型进行训练时作为单次输入的训练数据。
可选的,每一训练视频帧组中包括有多个训练视频帧。
具体的,为了扩增数据集,同一个训练视频会采取多种不同的抽帧间隔进行抽帧,例如每秒5帧和每秒2帧,对应的视频帧序列便表现出一慢一快的差别。可选的,对训练视频的抽帧可以是在整个训练启动之前进行的,提前抽帧可以大幅减少训练耗时,如果选择在训练阶段采取动态的抽帧间隔对短视频进行抽帧,虽然可以大幅丰富数据集,实现数据增强,但抽帧的速度往往较慢,每个训练迭代都需要重新抽帧,无疑严重拖累了整个训练进程。
作为一种可选的实施方式,上述步骤中的,根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧,包括:
根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个候选视频帧;
对于任意两个相邻的候选视频帧,计算该两个候选视频帧之间的画面相似度;
判断画面相似度是否满足预设的相似度阈值条件;
若判断结果为是,将该两个候选视频帧确定为关键视频帧;
根据多个候选视频帧中的所有关键视频帧,确定训练视频对应的多个训练视频帧。
可选的,画面相似度可以为结构相似性参数或余弦相似性参数。可选的,相似度阈值条件可以为画面相似度大于一定的相似度阈值,此时,该两个候选视频帧之间不相似,可以认为在这两帧之间发生了画面切换,这两帧便作为临界的关键帧保留下来。
作为一种可选的实施方式,上述步骤中的,根据多个候选视频帧中的所有关键视频帧,确定训练视频对应的多个训练视频帧,包括:
对多个候选视频帧中除关键视频帧以外的其他候选视频帧,根据第二抽帧间隔进行抽帧操作,得到多个抽取视频帧;其中,第二抽帧间隔大于第一抽帧间隔;
将所有关键视频帧和抽取视频帧,确定为训练视频对应的多个训练视频帧。
可选的,第二抽帧间隔的确定方式可以为:
确定所有其他候选视频帧的总帧数;
根据总帧数和预设的帧数-间隔对应关系,确定出第二抽帧间隔。
其中,第二抽帧间隔与总帧数成正比,也即总帧数越多,也即剩余视频内容较多,因此第二抽帧间隔越大,抽帧数量越少,因为此时对于内容较多但画面变换不多的视频,不需要抽取太多的帧数,反之亦然。
可选的,根据多个候选视频帧中的所有关键视频帧,确定训练视频对应的多个训练视频帧,也可以包括:
对多个候选视频帧中除关键视频帧以外的其他候选视频帧,计算至少两个其他候选视频帧之间的画面相似度;
并将所有相互之间的画面相似度满足相似度阈值条件的候选视频帧进行保留,以确定为训练视频对应的多个训练视频帧。
具体的,可以首先会用较小的第一抽帧间隔对视频进行抽帧,如视频的帧率为30,选取每秒10帧的抽取间隔,5秒的视频便可得到对应的50帧,随后计算这50帧中两两连续帧之间的画面相似度,当相似度大于设定的最大阈值m时,认为在这两帧之间发生了画面切换,这两帧便作为临界的关键帧保留下来。通过上述方法将视频中发生画面切换的所有关键帧进行保留后,再对关键帧以外的连续帧进行等间隔筛选抽帧,此时抽帧的第二抽帧间隔可根据最终需要序列总长度进行确定,也可以通过计算连续帧之间的画面相似度进行自适应选择,例如第一帧和第二帧之间的相似度小于设定的最小阈值n,即认为两个画面之间的差别较小,画面冗余度较高,则只保留第一帧,剔除掉第二帧;再取第三帧与第一帧进行对比,只要小于设定阈值n就对后一帧进行剔除,直到后一帧大于最小阈值n或是临界关键帧,再进行保留。
上述提出的针对画面切换的关键帧选取方法,是为了让模型能够学习到画面切换的特征变化过程,使最终重构的视频也能表现出一定的画面切换特效或画面连续性。
作为一种可选的实施方式,上述步骤中的,根据训练视频的视频参数,确定训练视频对应的第一抽帧间隔,包括:
确定训练视频的画面变化参数;
根据画面变化参数和预设的参数阈值条件,确定训练视频对应的第一抽帧间隔。
可选的,画面变化参数可以为训练视频的不同帧之间的光流值参数,例如所有相邻帧之间光流运动量的平均值或最高值或加权平均值。相应的,参数阈值条件可以为光流值阈值条件。
优选的,可以计算每帧之间的光流值,通过限制每帧之间的光流运动量来确定第一抽帧间隔,如设定一个光流变化量的阈值,经过统计后发现每K帧的光流变化量刚好超过此阈值,则可以将第一抽帧间隔设定为K帧。如果每帧之间的光流运动量较大,则可以选用较小的第一抽帧间隔。
可见,通过实施该可选的实施方式,能够根据画面变化参数确定出更加合理的抽帧间隔,从而能够合理及高效地确定视频帧的视频内容,以提高模型的训练效率。
作为一种可选的实施方式,上述步骤中的,根据训练视频的视频参数,确定训练视频对应的第一抽帧间隔,包括:
确定训练视频的视频场景参数;
根据视频场景参数和预设的场景抽帧对应关系,确定训练视频对应的第一抽帧间隔。
可选的,视频场景参数可以为训练视频的场景类型。可选的,场景抽帧对应关系用于指示不同类型的场景对应的第一抽帧间隔,例如,短视频主要是一些人体的动作变化,如是一段人体的上篮动作,整个动作速度较快,每帧之间的变化相对较为明显,则此时可以选用较小的抽帧间隔。如果短视频的内容变化速度较慢或存在一定的规律,如汽车缓慢行驶在山间小道中,行车记录仪记录着前方的路况,两旁的树木有规律地朝着镜头移动;这种带有规律或速度较慢的变化,就可以选用更大的抽帧间隔。具体的,针对不同的任务场景,抽帧的间隔都有所不同。
可选的,训练视频中出现的不同类型的场景的数量,从而可以用于指示其场景变化的程度或视频内容的复杂程度,可选的,场景抽帧对应关系用于指示不同类型的场景的数量对应的抽帧间隔,一般而言,抽帧间隔与该场景的数量成反比,也即场景数量越多,也即视频场景变化越多,内容也就越复杂,此时,抽帧间隔更小,得到的视频帧数量更多,反之亦然。
可见,通过实施该可选的实施方式,能够根据视频场景参数确定出更加合理的抽帧间隔,从而能够合理及高效地确定视频帧的视频内容,以提高模型的训练效率。
作为一种可选的实施方式,上述步骤中的,在根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧之后,该方法还包括:
判断多个训练视频帧的数量是否大于预设的第一帧数阈值;
若是,将多个训练视频帧划分为至少两个视频帧数量小于或等于第一帧数阈值的划分训练视频帧组。
其中,每个划分训练视频帧组用于在对视频重建预测模型进行训练时作为单次输入的训练数据。
具体的,对视频进行抽帧后,会统计最终的帧数,在此为了避免训练时内存占用过多,会设定一个第一帧数阈值,如30帧,当某个视频抽帧后的结果为54,应当截取前30帧为一个序列,再从后截取24帧作为第二个序列,以分割单次输入的训练数据。
可见,通过实施该可选的实施方式,能够将多个训练视频帧划分为至少两个视频帧数量小于或等于第一帧数阈值的划分训练视频帧组,从而能够合理及高效地确定单次输入的训练数据,以降低训练成本,提高模型的训练效率。
作为一种可选的实施方式,上述步骤中的,在根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧之后,该方法还包括:
判断多个训练视频帧的数量是否小于预设的第二帧数阈值;
若是,从训练视频中抽取视频帧填充至多个训练视频帧中,直至多个训练视频帧的数量等于第二帧数阈值。
具体的,对视频进行抽帧后,会统计最终的帧数,为了避免部分视频的帧数太少,无法达到预计的训练效果,会设置一个第二帧数阈值,如30帧,如果视频的总帧数小于30,如总共只有24帧,则随机选取其中6帧并按原始时间顺序分别进行拷贝和插入,用以补全30帧。
可见,通过实施该可选的实施方式,能够从训练视频中抽取视频帧填充至多个训练视频帧中,直至多个训练视频帧的数量等于第二帧数阈值,从而能够合理及高效地补全单次输入的训练数据量,提高模型的训练效率和效果。
实施例三
请参阅图3,图3是本发明实施例公开的一种基于视频和文本的模型训练装置的结构示意图。其中,图3所描述的装置可以应用于相应的视频数据处理装置中,该处理装置可以是相应的处理终端、处理设备或处理服务器,且该服务器可以是本地服务器,也可以是云服务器,本发明实施例不做限定。如图3所示,该装置可以包括:
数据确定模块301,用于确定用于训练模型的训练视频和对应的描述文本;
抽帧操作模块302,用于对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧;
模型训练模块303,用于将多个训练视频帧和描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算视频重建预测模型输出的多个预测视频帧和输入的多个训练视频帧之间的损失函数值,根据损失函数值对视频重建预测模型的模型参数进行优化直至收敛,得到训练好的视频重建预测模型。
作为一种可选的实施方式,如图4所示,抽帧操作模块302包括:
间隔确定单元3021,用于根据训练视频的视频参数,确定训练视频对应的第一抽帧间隔;
抽帧操作单元3022,用于根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧。
作为一种可选的实施方式,抽帧操作单元3022根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧的具体方式,包括:
根据第一抽帧间隔对训练视频进行抽帧操作,得到训练视频对应的多个候选视频帧;
对于任意两个相邻的候选视频帧,计算该两个候选视频帧之间的画面相似度;
判断画面相似度是否满足预设的相似度阈值条件;
若判断结果为是,将该两个候选视频帧确定为关键视频帧;
根据多个候选视频帧中的所有关键视频帧,确定训练视频对应的多个训练视频帧。
作为一种可选的实施方式,抽帧操作单元3022根据多个候选视频帧中的所有关键视频帧,确定训练视频对应的多个训练视频帧的具体方式,包括:
对多个候选视频帧中除关键视频帧以外的其他候选视频帧,根据第二抽帧间隔进行抽帧操作,得到多个抽取视频帧;第二抽帧间隔大于第一抽帧间隔;
将所有关键视频帧和抽取视频帧,确定为训练视频对应的多个训练视频帧。
作为一种可选的实施方式,如图4所示,该装置还包括帧数修正模块304,用于在抽帧操作模块302对训练视频进行抽帧操作,得到训练视频对应的多个训练视频帧之后,执行以下步骤:
判断多个训练视频帧的数量是否大于预设的第一帧数阈值;
若是,将多个训练视频帧划分为至少两个视频帧数量小于或等于第一帧数阈值的划分训练视频帧组;每个划分训练视频帧组用于在对视频重建预测模型进行训练时作为单次输入的训练数据;
和/或,
判断多个训练视频帧的数量是否小于预设的第二帧数阈值;
若是,从训练视频中抽取视频帧填充至多个训练视频帧中,直至多个训练视频帧的数量等于第二帧数阈值。
作为一种可选的实施方式,如图4所示,该装置还包括预处理模块305,用于在模型训练模块303将多个训练视频帧和描述文本输入基于Transformer网络结构的视频重建预测模型进行训练之前,执行以下步骤:
对按照原始时间顺序排列的多个训练视频帧的排列顺序进行打乱,得到乱序训练视频帧;乱序训练视频帧用于输入至视频重建预测模型的编码器;编码器根据乱序训练视频帧的编码输出数据用于在恢复为原始时间顺序后输入至视频重建预测模型的解码器;
和/或,
确定出多个训练视频帧中的掩膜视频帧;
对掩膜视频帧进行删除,将所述多个训练视频帧剩余的训练视频帧确定为输入视频帧;输入视频帧用于输入至视频重建预测模型的编码器;掩膜视频帧用于与编码器根据输入视频帧的编码输出数据一起输入至视频重建预测模型的解码器;掩膜视频帧的数量与多个训练视频帧的总数量的比值大于50%。
作为一种可选的实施方式,视频重建预测模型包括编码器;编码器包括视频嵌入层、文本嵌入层、特征融合层和第一Transformer层;视频嵌入层用于接收训练视频帧并处理得到视频特征;文本嵌入层用于接收描述文本并处理得到文本特征;特征融合层用于将视频特征和文本特征进行融合以得到训练特征,并将训练特征输入至第一Transformer层。
作为一种可选的实施方式,多个预测视频帧和输入的多个训练视频帧之间的损失函数值的计算方式如下:
对于任一预测视频帧,计算该预测视频帧与对应的训练视频帧之间的帧损失函数值;
计算所有预测视频帧的帧损失函数值的平均值,得到多个预测视频帧和输入的多个训练视频帧之间的损失函数值。
实施例四
请参阅图5,图5是本发明实施例公开的又一种基于视频和文本的模型训练装置的结构示意图。如图5所示,该装置可以包括:
存储有可执行程序代码的存储器401;
与存储器401耦合的处理器402;
处理器402调用存储器401中存储的可执行程序代码,执行本发明实施例一或实施例二公开的基于视频和文本的模型训练方法中的部分或全部步骤。
实施例五
本发明实施例公开了一种计算机存储介质,该计算机存储介质存储有计算机指令,该计算机指令被调用时,用于执行本发明实施例一或实施例二公开的基于视频和文本的模型训练方法中的部分或全部步骤。
上述对本说明书特定实施例进行了描述,其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,附图中描绘的过程不一定必须按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书实施例提供的装置、设备、非易失性计算机可读存储介质与方法是对应的,因此,装置、设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备、非易失性计算机存储介质的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field ProgrammableGateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera HardwareDescriptionLanguage)、Confluence、CUPL(Cornell University ProgrammingLanguage)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后应说明的是:本发明实施例公开的一种基于视频和文本的模型训练方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
Claims (10)
1.一种基于视频和文本的模型训练方法,其特征在于,所述方法包括:
确定用于训练模型的训练视频和对应的描述文本;
对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧;
将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算所述视频重建预测模型输出的多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值,根据所述损失函数值对所述视频重建预测模型的模型参数进行优化直至收敛,得到训练好的所述视频重建预测模型。
2.根据权利要求1所述的基于视频和文本的模型训练方法,其特征在于,所述对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧,包括:
根据所述训练视频的视频参数,确定所述训练视频对应的第一抽帧间隔;
根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧。
3.根据权利要求2所述的基于视频和文本的模型训练方法,其特征在于,所述根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧,包括:
根据所述第一抽帧间隔对所述训练视频进行抽帧操作,得到所述训练视频对应的多个候选视频帧;
对于任意两个相邻的所述候选视频帧,计算该两个候选视频帧之间的画面相似度;
判断所述画面相似度是否满足预设的相似度阈值条件;
若判断结果为是,将该两个候选视频帧确定为关键视频帧;
根据所述多个候选视频帧中的所有所述关键视频帧,确定所述训练视频对应的多个训练视频帧。
4.根据权利要求3所述的基于视频和文本的模型训练方法,其特征在于,所述根据所述多个候选视频帧中的所有所述关键视频帧,确定所述训练视频对应的多个训练视频帧,包括:
对所述多个候选视频帧中除所述关键视频帧以外的其他候选视频帧,根据第二抽帧间隔进行抽帧操作,得到多个抽取视频帧;所述第二抽帧间隔大于所述第一抽帧间隔;
将所有所述关键视频帧和所述抽取视频帧,确定为所述训练视频对应的多个训练视频帧。
5.根据权利要求1所述的基于视频和文本的模型训练方法,其特征在于,在所述对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧之后,所述方法还包括:
判断所述多个训练视频帧的数量是否大于预设的第一帧数阈值;
若是,将所述多个训练视频帧划分为至少两个视频帧数量小于或等于所述第一帧数阈值的划分训练视频帧组;每个所述划分训练视频帧组用于在对视频重建预测模型进行训练时作为单次输入的训练数据;
和/或,
判断所述多个训练视频帧的数量是否小于预设的第二帧数阈值;
若是,从所述训练视频中抽取视频帧填充至所述多个训练视频帧中,直至所述多个训练视频帧的数量等于所述第二帧数阈值。
6.根据权利要求1所述的基于视频和文本的模型训练方法,其特征在于,在所述将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练之前,所述方法还包括:
对按照原始时间顺序排列的所述多个训练视频帧的排列顺序进行打乱,得到乱序训练视频帧;所述乱序训练视频帧用于输入至所述视频重建预测模型的编码器;所述编码器根据所述乱序训练视频帧的编码输出数据用于在恢复为所述原始时间顺序后输入至所述视频重建预测模型的解码器;
和/或,
确定出所述多个训练视频帧中的掩膜视频帧;
对所述掩膜视频帧进行删除,将所述多个训练视频帧剩余的训练视频帧确定为输入视频帧;所述输入视频帧用于输入至所述视频重建预测模型的编码器;所述掩膜视频帧用于与所述编码器根据所述输入视频帧的编码输出数据一起输入至所述视频重建预测模型的解码器;所述掩膜视频帧的数量与所述多个训练视频帧的总数量的比值大于50%。
7.根据权利要求1所述的基于视频和文本的模型训练方法,其特征在于,所述视频重建预测模型包括编码器;所述编码器包括视频嵌入层、文本嵌入层、特征融合层和第一Transformer层;所述视频嵌入层用于接收所述训练视频帧并处理得到视频特征;所述文本嵌入层用于接收所述描述文本并处理得到文本特征;所述特征融合层用于将所述视频特征和所述文本特征进行融合以得到训练特征,并将所述训练特征输入至所述第一Transformer层。
8.根据权利要求1所述的基于视频和文本的模型训练方法,其特征在于,所述多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值的计算方式如下:
对于任一所述预测视频帧,计算该预测视频帧与对应的所述训练视频帧之间的帧损失函数值;
计算所有所述预测视频帧的所述帧损失函数值的平均值,得到多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值。
9.一种基于视频和文本的模型训练装置,其特征在于,所述装置包括:
数据确定模块,用于确定用于训练模型的训练视频和对应的描述文本;
抽帧操作模块,用于对所述训练视频进行抽帧操作,得到所述训练视频对应的多个训练视频帧;
模型训练模块,用于将所述多个训练视频帧和所述描述文本输入基于Transformer网络结构的视频重建预测模型进行训练,在训练中计算所述视频重建预测模型输出的多个预测视频帧和输入的所述多个训练视频帧之间的损失函数值,根据所述损失函数值对所述视频重建预测模型的模型参数进行优化直至收敛,得到训练好的所述视频重建预测模型。
10.一种基于视频和文本的模型训练装置,其特征在于,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-8任一项所述的基于视频和文本的模型训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210705813.5A CN115240103A (zh) | 2022-06-21 | 2022-06-21 | 基于视频和文本的模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210705813.5A CN115240103A (zh) | 2022-06-21 | 2022-06-21 | 基于视频和文本的模型训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115240103A true CN115240103A (zh) | 2022-10-25 |
Family
ID=83668883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210705813.5A Pending CN115240103A (zh) | 2022-06-21 | 2022-06-21 | 基于视频和文本的模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115240103A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116233445A (zh) * | 2023-05-10 | 2023-06-06 | 腾讯科技(深圳)有限公司 | 视频的编解码处理方法、装置、计算机设备和存储介质 |
CN117893697A (zh) * | 2024-03-15 | 2024-04-16 | 之江实验室 | 一种三维人体视频重建方法、装置、存储介质及电子设备 |
-
2022
- 2022-06-21 CN CN202210705813.5A patent/CN115240103A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116233445A (zh) * | 2023-05-10 | 2023-06-06 | 腾讯科技(深圳)有限公司 | 视频的编解码处理方法、装置、计算机设备和存储介质 |
CN117893697A (zh) * | 2024-03-15 | 2024-04-16 | 之江实验室 | 一种三维人体视频重建方法、装置、存储介质及电子设备 |
CN117893697B (zh) * | 2024-03-15 | 2024-05-31 | 之江实验室 | 一种三维人体视频重建方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115240103A (zh) | 基于视频和文本的模型训练方法及装置 | |
CN115240102A (zh) | 基于图像和文本的模型训练方法及装置 | |
CN112184856B (zh) | 支持多图层特效及动画混合的多媒体处理装置 | |
CN117372631B (zh) | 一种多视角图像生成模型的训练方法、应用方法 | |
CN115240100A (zh) | 基于视频帧的模型训练方法及装置 | |
CN112119408A (zh) | 获取画质增强网络的方法、图像画质增强方法、装置、可移动平台、相机及存储介质 | |
CN114358243A (zh) | 通用特征提取网络训练方法、装置及通用特征提取网络 | |
CN111368795B (zh) | 一种人脸特征提取方法、装置及设备 | |
CN113688832B (zh) | 一种模型训练及图像处理方法、装置 | |
CN116797975A (zh) | 一种视频分割方法、装置、计算机设备及存储介质 | |
CN115240099A (zh) | 基于多模态关联数据的模型训练方法及装置 | |
CN113157941B (zh) | 业务特征数据处理、文本生成方法、装置及电子设备 | |
CN111263226B (zh) | 视频处理方法、装置、电子设备及介质 | |
CN115484494B (zh) | 一种数字孪生视频流的处理方法、装置及设备 | |
CN115499635B (zh) | 数据压缩处理方法及装置 | |
CN113542780B (zh) | 一种网络直播视频的压缩伪影去除方法及装置 | |
CN115623221A (zh) | 一种视频编码方法、装置、存储介质及图像采集设备 | |
CN112511838A (zh) | 一种降低视频转码延时的方法、装置、设备和可读介质 | |
CN111654706B (zh) | 一种视频压缩方法、装置、设备及介质 | |
CN113256765A (zh) | Ai主播视频的生成方法、装置、电子设备及存储介质 | |
CN109831670B (zh) | 一种反量化方法、系统、设备及计算机可读介质 | |
CN113887719A (zh) | 一种模型压缩方法及装置 | |
KR102205518B1 (ko) | 기계학습을 수행하는 저장 장치 및 그 장치의 기계학습 방법 | |
CN111327816A (zh) | 图像处理方法及其装置、电子设备以及计算机存储介质 | |
CN117880444B (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 |