CN116992947A - 模型训练方法、视频查询方法和装置 - Google Patents
模型训练方法、视频查询方法和装置 Download PDFInfo
- Publication number
- CN116992947A CN116992947A CN202211194124.9A CN202211194124A CN116992947A CN 116992947 A CN116992947 A CN 116992947A CN 202211194124 A CN202211194124 A CN 202211194124A CN 116992947 A CN116992947 A CN 116992947A
- Authority
- CN
- China
- Prior art keywords
- video
- visual
- network
- video frame
- visual feature
- 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
- 238000000034 method Methods 0.000 title claims abstract description 98
- 238000012549 training Methods 0.000 title claims abstract description 84
- 230000000007 visual effect Effects 0.000 claims abstract description 234
- 230000033001 locomotion Effects 0.000 claims abstract description 9
- 238000004590 computer program Methods 0.000 claims description 19
- 239000000284 extract Substances 0.000 claims description 12
- 238000013527 convolutional neural network Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000013473 artificial intelligence Methods 0.000 abstract description 18
- 238000010801 machine learning Methods 0.000 abstract description 10
- 238000000605 extraction Methods 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Classifications
-
- 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
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/732—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/732—Query formulation
- G06F16/7343—Query language or query format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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/40—Extraction of image or video 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/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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Library & Information Science (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种训练模型方法、视频查询方法和装置,涉及人工智能的机器学习领域。该模型训练方法包括:获取第一视频数据,并从该第一视频数据中提取至少两个视频帧;将该至少两个视频帧中的第一视频帧输入第一编码网络,提取第一视频帧的第一视觉特征,其中,所述第一编码网络包括视觉编码器;将该至少两个视频帧中的第二视频帧输入第二编码网络,提取第二视频帧的第二视觉特征,第二编码网络的参数由第一编码网络的参数基于动量的移动值进行更新;根据第一视觉特征和第二视觉特征,计算损失;根据该损失,对第一编码网络的参数进行更新,得到训练后的视觉编码器。本申请实施例能够增强视觉编码器的特征提取能力,进而提高视频查询的准确性。
Description
技术领域
本申请实施例涉及人工智能技术领域,尤其涉及一种训练模型方法、视频查询方法和装置。
背景技术
随着互联网技术的快速发展,多媒体的应用越来越广泛,视频数量也急剧增长,用户需要在海量视频中筛选需要的视频。目前,视频相关应用可以提供视频查询的功能,用户在查询栏中输入查询信息后,可以召回与用户输入的查询信息相匹配的视频并展示给用户。
相关技术中,用户自主上传的视频容易出现其描述或标签与实际视频内容关联较小的情况,此时利用用户输入的查询信息去匹配视频的描述或标签可能出现检索到不相关视频的结果。基于此,可以通过视觉编码器获取视频帧包含的视频语义信息,然后根据用户输入的查询信息的语义信息去匹配视频帧的语义信息进行视频筛选,提高视频查询的准确度。
传统的视觉编码器通常利用有标签的数据集进行有监督的预训练。使用有标签的数据集进行训练虽然可以一定程度上挖掘视频的语义信息,但是由于给数据集人为打标签的人力开销比较大,同时也受制于这种大的开销,有标签的数据集一般很难达到比较大的规模。而使用较少的有标签数据集进行预训练会影响模型的性能。
发明内容
本申请提供一种模型训练方法、视频查询方法和装置,能够增强视觉编码器的特征提取能力,进而提高视频查询的准确性。
第一方面,本申请实施例提供一种模型训练方法,包括:
获取第一视频数据,并从所述第一视频数据中提取至少两个视频帧;
将所述至少两个视频帧中的第一视频帧输入第一编码网络,提取所述第一视频帧的第一视觉特征,其中,所述第一编码网络包括视觉编码器;
将所述至少两个视频帧中的第二视频帧输入第二编码网络,提取所述第二视频帧的第二视觉特征,其中,所述第一编码网络与所述第二编码网络包括相同的网络结构,所述第二编码网络的参数由所述第一编码网络的参数基于动量的移动值进行更新;
根据所述第一视觉特征和所述第二视觉特征,计算损失;
根据所述损失,对所述第一编码网络的参数进行更新,得到训练后的所述视觉编码器
第二方面,本申请实施例提供一种视频查询方法,包括:
获取查询文本,并对所述查询文本进行语义特征提取,得到查询语义特征;
获取至少一个候选视频;
利用视觉编码器提取所述候选视频的视频帧的视觉特征,其中,所述视觉编码器根据第一方面所述的方法训练得到;
根据所述视觉特征和所述查询语义特征,在所述至少一个候选视频中确定所述查询文本对应的目标视频。
第三方面,本申请实施例提供了一种模型训练装置,包括:
获取单元,用于获取第一视频数据,并从所述第一视频数据中提取至少两个视频帧;
第一编码网络,用于输入所述至少两个视频帧中的第一视频帧,提取所述第一视频帧的第一视觉特征,其中,所述第一编码网络包括视觉编码器;
第二编码网络,用于输入所述至少两个视频帧中的第二视频帧,提取所述第二视频帧的第二视觉特征,其中,所述第一编码网络与所述第二编码网络包括相同的网络结构,所述第二编码网络的参数由所述第一编码网络的参数基于动量的移动值进行更新;
计算单元,用于根据所述第一视觉特征和所述第二视觉特征,计算损失;
更新单元,用于根据所述损失,对所述第一编码网络的参数进行更新,得到训练后的所述视觉编码器。
第四方面,本申请实施例提供了一种视频查询装置,包括:
获取单元,用于获取查询文本,并对所述查询文本进行语义特征提取,得到查询语义特征;
所述获取单元还用于获取至少一个候选视频;
视觉编码器,用于提取所述候选视频的视频帧的视觉特征,其中,所述视觉编码器根据第一方面所述的方法训练得到;
确定单元,用于根据所述视觉特征和所述查询语义特征,在所述至少一个候选视频中确定所述查询文本对应的目标视频。
第五方面,本申请实施例提供一种电子设备,包括:处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行如第一方面或第二方面中的方法。
第六方面,本申请实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时使得计算机执行如第一方面或第二方面中的方法。
第七方面,本申请实施例提供一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行如第一方面或第二方面中的方法。
第八方面,本申请实施例提供一种计算机程序,计算机程序使得计算机执行如第一方面或第二方面中的方法。
通过上述技术方案,通过将从视频数据中提取的至少两个视频帧作为无标签的训练样本,利用第一编码网络和第二编码网络提取该至少两个视频帧中不同视频帧的视觉特征,通过对该不同视频帧的视觉特征进行对比学习,挖掘视频数据的语义信息而不依赖于人为标注的标签,从而能够以较低的开销扩展训练数据集以实现大规模的自监督预训练得到视觉编码器,增强视觉编码器的特征提取能力。
进一步的,本申请实施例能够在使用用户输入的查询文本的语义信息匹配该视觉编码器获取的视频帧的语义信息时,不再依赖视频的标题或简介,从而有助于避免检索到不相关的视频内容,实现更加准确的文本-视频检索,进而提高用户的产品体验。
附图说明
图1为本申请实施例的方案的系统架构的一个示意图;
图2为在视频号进行视频搜索的相关界面的示意图;
图3为根据本申请实施例的一种模型训练方法的示意性流程图;
图4为根据本申请实施例的一种训练模型的网络架构的示意图;
图5为根据本申请实施例的一种视频查询方法的示意性流程图;
图6为根据本申请实施例的一种训练模型装置的示意性框图;
图7为根据本身实施例的一种视频查询装置的示意性框图;
图8为根据本申请实施例的电子设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
应理解,在本申请实施例中,“与A对应的B”表示B与A相关联。在一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
在本申请的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”是指两个或多于两个。另外,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A 和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
还应理解,本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。
还应理解,说明书中与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例应用于人工智能技术领域。
其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例可涉及人工智能技术中的计算机视觉(Computer Vision, CV)技术,计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
本申请实施例也可以涉及人工智能技术中的机器学习(Machine Learning, ML),ML是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
下面对本申请实施例涉及的相关术语进行描述。
预训练(pre-training):包括有监督预训练和自监督预训练两种方式。有监督预训练方式中,将分类任务作为上游任务,在大规模的带标签分类数据集上预训练一个有监督的分类模型,然后将该分类模型的最后层分类全连接神经元去除,余下部分作为预训练的特征编码器,迁移至下游任务。自监督预训练将不同的自监督任务作为上游任务,在大规模的无标签数据集上预训练一个自监督模型,之后保留该模型中的骨干网络作为预训练的特征编码器,迁移至下游任务。
特征编码器(feature encoder):用于将高维度输入图像映射到低维度的特征向量的神经网络模型。示例性的,该神经网络模型可以为卷积神经网络 (convolutionalneural network,CNN),即由多个卷积操作组成的计算网络。
视觉编码器(visual encoder):作为特征编码器的一种,主要用于对视频帧的数据进行特征提取,得到视觉特征。视觉编码器可以通过预训练得到。
图1为本申请实施例涉及的一种系统架构的示意图。如图1所示,系统架构可以包括用户设备101、数据采集设备102、训练设备103、执行设备104、数据库105和内容库106。
其中,数据采集设备102用于从内容库106中读取训练数据,并将读取的训练数据存储至数据库105中。本申请实施例涉及的训练数据包括无标签样本数据。示例性的,该样本数据可以包括从视频中提取的视频帧,不作限定。
训练设备103基于数据库105中维护的训练数据,对机器学习模型进行训练。训练设备103得到的模型可以有效地提取样本(例如视频帧)的特征。并且该模型还可以进一步连接其他下游模型。训练设备103得到的模型(比如视觉编码器)可以应用到不同的系统或设备中。
另外,参考图1,执行设备104配置有I/O接口107,与外部设备进行数据交互。比如通过I/O接口接收用户设备101发送的待预测的数据,例如图像数据。执行设备104中的计算模块109使用训练好的机器学习模型对输入的数据进行处理,输出数据的预测结果,并通过I/O接口将相应的结果发送至用户设备101。
其中,用户设备101可以包括手机、平板电脑、笔记本电脑、掌上电脑、车载终端、移动互联网设备(mobile internet device,MID)或其他具有安装浏览器功能的终端设备。
执行设备104可以为服务器。示例性的,服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备。该服务器可以是独立的服务器,也可以是多个服务器所组成的服务器集群。
本实施例中,执行设备104通过网络与用户设备101连接。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobilecommunication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
需要说明的是,图1仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。在一些实施例中,上述数据采集设备102与用户设备101、训练设备103和执行设备104 可以为同一个设备。上述数据库105可以分布在一个服务器上也可以分布在多个服务器上,上述的内容库106可以分布在一个服务器上也可以分布在多个服务器上。
相关技术中,通过视觉编码器获取视频帧的视觉特征来表征视频语义信息。而传统的视觉编码器通常利用有标签的视频数据集进行有监督的预训练。使用有标签的视频数据集进行训练虽然可以一定程度上挖掘视频的语义信息,但是由于给数据集人为打标签的人力开销比较大,同时也受制于这种大的开销,有标签的数据集一般很难达到比较大的规模。而使用较少的有标签数据集进行预训练会影响模型的性能。
基于此,本申请实施例提供了一种模型训练方法和装置,通过将从视频数据中提取的至少两个视频帧作为无标签的训练样本,利用第一编码网络和第二编码网络提取该至少两个视频帧中不同视频帧的视觉特征,通过对该不同视频帧的视觉特征进行对比学习,挖掘视频数据的语义信息而不依赖于人为标注的标签,从而能够以较低的开销扩展训练数据集以实现大规模的自监督预训练得到视觉编码器,增强视觉编码器的特征提取能力。
本申请实施例可以应用于任何需要视觉语义的应用场景,包括但不限于视频号的视频搜索业务、图片或者视频形式的新闻搜索等。示例性的,对于视频搜索业务,可以应用本申请预训练得到的视觉编码器快速准确的对视频帧进行视觉特征提取,获取视频包含的语义信息,结合用户输入的查询信息的语义信息匹配视频帧的语义信息进行视频筛选。示例性的,对于新闻搜索业务,可以应用本申请预训练得到的视觉编码器快速准确的对图片或视频帧进行视觉特征提取,获取图片或视频帧包含的语义信息,在根据用户输入的新闻关键词的语义信息匹配新闻文字内容的语义信息的同时,进一步可以结合新闻图片或视频帧的语义信息进行新闻筛选。
图2示出了在视频号进行视频搜索的相关界面的示意图。如图2所示, (a)图中应用界面包括中视频号的主要入口210,(b)图为点击该入口210 进入后的主界面,包括搜索入口220,(c)图为在该搜索入口220输入查询语句“篮球教学”之后搜索到的可能感兴趣的视频。
对于搜索类产品而言,搜索结果的相关度是非常重要的一个指标。相关技术中使用用户输入查询文本去匹配视频的标题或简介,该方式依赖于用户上传的标题或简介与视频内容必须很相关或者能够充分描述视频内容。比如用户输入查询文本“篮球教学”,却返回了一个视频标题确实是“篮球教学”但是视频内容却是卖篮球的宣传,视频本身内容和视频标题或简介的关联不大,这大大影响了视频搜索的准确度,用户产品体验较差。
而本申请实施例中,利用从视频数据中提取的至少两个视频帧作为无标签的训练样本,能够以较低的开销扩展训练数据集以实现大规模的自监督预训练得到视觉编码器,该视觉编码器能够不依赖于人为标注的标签充分挖掘视频数据的语义信息,提取的视觉特征的语义表征更加丰富贴切。因此,在使用用户输入的查询文本的语义信息去匹配该视觉编码器获取的视频帧的语义信息时,不再依赖视频的标题或简介,从而有助于避免检索到不相关的视频内容,实现更加准确的文本-视频检索,进而提高用户的产品体验。
下面通过一些实施例对本申请实施例的技术方案进行详细说明。下面这几个实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
首先结合图3对本申请实施例涉及的模型的训练过程进行介绍。
图3为根据本申请实施例的训练模型的方法300的示意性流程图,该训练模型的方法300可以由任何具有数据处理能力的电子设备执行,例如,该电子设备可实施为服务器,又例如,该电子设备可实施为图1中的训练设备 103,本申请对此不做限定。
如图3所示,方法300包括步骤310至350。
310,获取第一视频数据,并从第一视频数据中提取至少两个视频帧。
示例性的,可以从待处理的第一视频数据中,等间隔提取m个视频帧,其中,m为正整数。
应注意,从第一视频数据提取的该m个视频帧具有语义相关性。具体而言,视频文件中包含丰富的语义信息,例如一条篮球比赛的短视频,在播放的过程中虽然视觉、球员位置和镜头会有所变化,但是视频帧之间的语义一般都比较相关,都是与篮球比赛有关的画面,比如球场上球员运球上篮的画面,或者运球被抢断的画面,亦或是进球后观众席欢呼的画面。作为具体的例子,视频中时间上相邻的视频帧之间的语义联系更为密切,例如相邻视频帧之间具有语义连续性。
因此,本申请实施例通过将从视频数据中提取至少两个视频帧作为无标签的训练样本,使得视觉编码器从视频数据自带的语义信息进行学习,相比使用数据增强的方式产生的样本更加丰富多样。
320,将该至少两个视频帧中的第一视频帧输入第一编码网络,提取该第一视频帧的第一视觉特征。其中,该第一编码网络包括视觉编码器。该第一编码网络的参数通过梯度反向传播进行更新。
330,将该至少两个视频帧中的第二视频帧输入第二编码网络,提取该第二视频帧的第二视觉特征。其中,第一编码网络与第二编码网络包括相同的网络结构,第二编码网络的参数由第一编码网络的参数基于动量的移动值进行更新。例如,第二编码网络的参数可以由第一编码网络的参数基于动量的移动平均值进行缓慢更新。
在一些实施例中,第一视频帧和第二视频帧可以为从第一视频数据中提取的至少两个视频帧中任意的视频帧,本申请对此不做限定。由于第一视频帧和第二视频帧均为从第一视频数据中提取的视频帧,二者之间的语义比较相关,因此可以利用第一视频帧和第二视频帧之间的语义相关性来进行自监督预训练,使视觉编码器具有更好的视觉语义理解能力。
在一些实施例中,第一视频帧和第二视频帧可以为从第一视频数据中提取的至少两个视频帧中相邻的两个视频帧。由于第一视频帧和第二视频帧为从第一视频数据中提取的相邻的视频帧,二者之间的语义连接更为密切,因此可以利用第一视频帧和第二视频帧之间的语义连续性来进行自监督预训练,进一步提高视觉编码器的视觉语义理解能力。
在一些实施例中,第一视频帧和第二视频帧可以为从第一视频数据中提取的至少两个视频帧中相邻的视频帧聚类。其中,视频帧聚类是根据至少两个相邻的视频帧得到的。由于相邻的视频帧聚类之间也具有语义相关性或语义连续性,因此采用相邻的视频帧聚类进行自监督训练,也能够使视觉编码器具有更好的语义理解能力。
在一些实施例中,电子设备中可以包括(比如部署)训练模型的网络架构,用于执行该训练模型的方法300,即根据无标签的视频数据进行自监督训练。
图4示出了训练模型的网络架构的一个示意图,可以用于执行方法300。如图4所示,该网络架构中包含两个主要模块:查询(Query)网络410和关键字(Key)网络420。其中,Query网络410可以作为第一编码网络的一个示例,Key网络420可以作为第二编码网络的一个示例。在一些实施例中, Query网络410进一步可以包括第一视觉编码器(VisualEncoder)411、第一映射器(Projector)412和预测器(Predictor)413,Key网络420进一步可以包括第二视觉编码器421和第二映射器422。
应理解,图4示出了用于进行模型训练的网络架构的一个示例,该示例仅仅是为了帮助本领域技术人员理解和实现本申请的实施例,而非限制本申请实施例的范围。本领域技术人员可以根据这里给出的例子进行等价变换或修改,这样的变换或修改仍然应落入本申请实施例的保护范围内。
在一些实施例中,Query网络410中的第一视觉编码器411和第一映射器412与Key网络420中的第二视觉编码器421和第二映射器422具有相同的网络结构但网络参数的更新方式不同。
具体而言,第一视觉编码器411和第一映射器412通过梯度反向传播进行更新,第二视觉编码器421和第二映射器422分别根据对应的第一视觉编码器411和第一映射器412停止梯度(stopgrad)更新而进行动量更新 (momentum update)的,例如第二视觉编码器421的参数由第一视觉编码器 411的参数基于动量的移动平均值进行缓慢更新,第二映射器422的参数由第一映射器412的参数基于动量的移动平均值进行缓慢更新。
其中,动量最初是一个物理学的概念,等于物体质量乘以物体当前速度,用来表示物体的运动状态P。当前物体运动状态Pt由物体的上一状态Pt-1以及物体受力产生的动量变化量ΔP两部分共同构成,即:
Pt=ξPt-1+(1-ξ)ΔP
其中,ξ∈[0,1]是动量更新系数,用来控制上一时刻Pt-1所占的比重。
物理学中动量可以引入到机器学习领域。具体而言,Query网络410的参数可以表示为θq,Key网络420的参数可以表示为θk,可以将Key网络420 的参数θk类比为动量,Key网络420的参数θk进行动量更新即当前Key网络 420的参数θk取决于上一时刻Key网络420的参数θk和当前Query网络410 的参数θq的加权和,即θk由Query网络410对应部分的参数θq基于动量的移动平均值进行更新,具体可以如以下公式(1)所示:
θk←ξθk+(1-ξ)θq (1)
其中,ξ为动量更新系数,用来控制上一时刻θk所占的比重,通常为0.99~1。作为具体例子,可以设置为0.99-0.9999。
应注意,在通过反向传播的方式对网络参数进行更新时,模型参数必须加载到图形处理器(graphics processing unit,GPU)显存以进行快速并行运算,并且GPU显存还需要保存反向传播对应的梯度等数据,这部分数据量往往比较大。而本申请实施例通过动量更新的方式对第二编码网络(比如Key 网络)的参数进行更新,便不需要保存反向传播对应的梯度等数据和进行快速并行运算,仅需要按照动量更新公式更新网络参数即可,因此本申请实施例能够有助于降低预训练所需的大量内存开销,节省计算资源,比如使用较少的GPU硬件即可进行训练。
在一些实施例中,第一视觉编码器411和第二视觉编码器421分别可以包括相同网络结构的视觉Transformer(visual Transformer)。视觉Transformer 主要用于对视频帧进行特征提取,得到视觉特征。示例性的,视觉Transformer 包括多头注意力机制、跳跃连接、层归一化和前向神经网络等模块。
在另一些实施例中,第一视觉编码器411和第二视觉编码器421可以分别包括相同网络结构的CNN,即由多个卷积操作组成的计算网络。CNN主要用于对视频帧进行特征提取,得到视觉特征。
需要说明的是,本申请实施例中视觉编码器可以为任何能够提取图像或视频特征的网络结构,本申请对其具体形式不做限定,比如视觉编码器还可以包括相同网络结构的视觉Transformer和CNN的组合。
示例性的,视觉编码器的编码流程可以表示为如下公式(2):
vfi=visual_enc(vi) (2)
其中,vi为输入视觉编码器的视频帧,visual_enc表示视觉编码器,vfi为视觉编码器从视频帧中提取的视觉特征。作为一个具体的例子,vfi的维度为 512。
可选的,第一映射器412和第二映射器422可以分别包括多层感知机 (MultilayerPerceptron,MLP),比如两层的MLP。在编码网络中引入映射器可以有助于减小上下游任务对编码网络的影响,有助于提高视觉编码器的迁移能力,缓解在预训练即的过拟合(overfit)。
可选的,预测器413可以包括MLP,比如两层的MLP。在编码网络中引入预测器可以让Query网络410和Key网络420不对称,防止学习坍塌。
继续参见图4,Query网络410和Key网络420的编码流程如下:给定一个视频,并从该视频中采样m帧,即v={v1,v2,…,vm}。然后将第i个视频帧数据vi输入Query网络410,依次经过第一视觉编码器411、第一映射器412 和预测器编码得到vqi,vqi为第一视觉特征的一个示例。同时,将第i+1个视频帧数据vi+1依次输入Key网络420,依次经过第二视觉编码器421和第二映射器422编码得到vki+1,vki+1为第二视觉特征的一个示例。
作为示例,vqi和vki+1可以如下公式(3)和(4)所示。
vqi=Pred(Proj(visual_enc(vi))) (3)
vki+1=Proj_k(visual_enc_k(vi+1)) (4)
其中,visual_enc、Proj和Pred分别表示Query网络410的第一视觉编码器411、第一映射器412和预测器413,visual_enc_k和Proj_k分别表示Key 网络420的第二视觉编码器421和第二映射器422。
作为一个具体的例子,第一映射器412、预测器413和第二映射器的输入输出维度均为512,vqi和vki+1均为512维的特征向量。
440,根据第一视觉特征和第二视觉特征,计算损失。
在一些实施例中,可以将上述第一视频帧和第二视频帧作为正样本对,训练模型过程中拉近正样本和对应正样本之间的距离。此时,可以根据第一视觉特征和第二视觉特征的最小距离计算损失。
在一些实施例中,可以将上述第一视频帧和第二视频帧作为正样本对,将第二视频数据(即不同于上文中步骤310的第一视频数据的其他视频数据) 中的第三视频帧作为负样本,训练模型过程中拉近正样本和对应正样本之间的距离的同时,推远样本和负样本之间的距离。此时,可以根据第一视觉特征和第二视觉特征的最小距离,以及第一视觉特征和根据第三视频帧得到的第三视觉特征的最大距离计算损失。
作为一种可能的实现方式,在方法300中,还可以获取第二视频数据,并从该第二视频数据中提取第三视频帧,以及将该第三视频帧输入上述第二编码网络,提取该第三视频帧的第三视觉特征。此时,可以根据该第一视觉特征、第二视觉特征和第三视觉特征,计算损失。其中,第一视觉特征和第二视觉特征为正样本特征,第三视觉特征为负样本特征。
需要说明的是,本申请实施例对第三视频帧的数量不做限定。例如,第三视频帧可以包括多个视频帧,或多个视频帧聚类。
可选的,还可以维护一个负样本队列,该负样本队列用于存储多个负样本特征。可选的,可以将第二编码网络输出的视觉特征加入该负样本队列中作为负样本特征,实现向负样本队列中增加负样本特征。示例性的,可以将第三视觉特征加入该负样本队列中。
示例性的,参见图4,可以将Key网络420输出的特征vki+1加入负样本队列430中。当输入Query网络410和Key网络420的视频为其他视频时,可以从负样本队列430中获取该特征vki+1作为负样本特征。
因此,本申请实施例通过动量更新的方式对第二编码网络进行参数更新时,第二编码网络生成的视觉特征可以存储到负样本队列而不是GPU显存,这样在降低预训练所需的大量内存开销的同时,还可以维护一个比较大的视觉特征的负样本队列,引入更多的负样本用于对比学习能够帮助提升模型性能。
另外,本申请实施例通过动量更新的方式对第二编码网络的参数进行缓慢更新,能够有助于保证负样本队列中的特征保持一致性。如果第二编码网络更新的太快,可能导致进入到负样本队列中的特征差别太大会导致无法进行学习。
在一些实施例中,当第一视觉特征和第二视觉特征为正样本特征,第三视觉特征为负样本特征时,可以采用对比学习方法计算对比损失来进行模型训练。作为示例,对于图4中的网络架构,可以根据以下公式(5)确定噪声对比估计(noise-contrastiveestimation,NCE)损失,即对比损失
其中,τ为温度超参数,q表示Query网络输出的特征表示,k+表示Key 网络输出的与q匹配的正样本的特征表示,{k-}表示Key网络输出的对应q的负样本的特征表示集合。
在一些实施例中,还可以将第二视频帧输入第一编码网络,提取该第二视频帧的第四视觉特征,将第一视频帧输入第二编码网络,提取该第一视频帧的第五视觉特征。然后,根据上述第一视觉特征、第二视觉特征、第四视觉特征和第五视觉特征,计算对称损失,并将该对称损失确定为模型训练的损失。
作为一种可能的实现方式,在根据第一视觉特征、第二视觉特征和第三视觉特征计算对比损失#1之后,还可以根据第四视觉特征、第五视觉特征和第三视觉特征计算对比损失#2。然后将该对比损失#1与对比损失#2之和作为对称损失,即模型训练的损失。
其中,以第四视觉特征和第五视觉特征作为正样本特征,第三视觉特征作为负样本特征,具体的计算过程与根据第一视觉特、第二视觉特征和第三视觉特征计算对比损失#1的过程类似,可以参考上文中的描述,这里不再赘述。
作为示例,对于图4中的网络架构,在计算相邻帧匹配的损失时,使用 Query网络410编码的第i个视频帧的视觉特征vqi和Key网络420编码的第 i+1个视频帧的视觉特征vki+1作为正样本对,Query网络410编码的第i+1个视频帧的视觉特征vqi+1和Key网络420编码的第i个视频帧的视觉特征vki作为正样本对,Key网络编码的其它视频中的视频帧作为负样本队列,根据以下公式(6)计算帧相邻匹配(Frame Adjacency Matching,FAM)损失,即对称损失
其中,m是每个视频中采样的视频帧的数量;vqi和vqi+1是Query网络编码的同一个视频中第i个和第i+1个视频帧的视觉特征;vki和vki+1是Key 网络编码的同一个视频中第i个和第i+1个视频帧的视觉特征;V-是Key网络编码的其他视频中的视频帧的视觉特征所构成的负样本队列。
350,根据损失,对第一编码网络的参数进行更新,得到训练后的所述视觉编码器。
具体的,可以根据损失,利用梯度反向传播更新算法对第一编码网络中各网络模块的参数进行更新,直至满足停止训练的条件。将满足该停止训练条件所确定的第一编码网络中的视觉编码器输出为训练后的视觉编码器。
示例性的,对于图4中的网络架构,在模型训练完成之后,可以保留Query 网络420中的第一视觉编码器411用于后续提取视觉特征,丢弃Query网络 420中的第一映射器412和预测器413,以及整个Key网络420。
因此,本申请实施例通过将从视频数据中提取至少两个视频帧作为无标签的训练样本,利用第一编码网络和第二编码网络提取该至少两个视频帧中不同视频帧的视觉特征,通过对该不同视频帧的视觉特征进行对比学习,挖掘视频数据的语义信息而不依赖于人为标注的标签,以较低的开销扩展训练数据集以实现大规模的自监督预训练得到视觉编码器,能够增强视觉编码器的特征提取能力。
进一步的,本申请实施例通过将第一视频帧和第二视频帧具体实施为相邻的视频帧,利用第一视频帧和第二视频帧之间的语义连续性来进行自监督预训练,能够使视觉编码器具有更好的视觉语义理解能力。
进一步的,本申请实施例通过使用动量对比学习方法维护负样本队列,能够降低预训练所需的大量内存开销,同时可以引入更多的负样本用于对比学习,帮助提升模型性能。
本申请实施例训练得到的视觉编码器可以用于基于视觉语义的视频查询。图5示出了本申请实施例提供的一种视频查询的方法500的示意性流程图。如图5所示,方法500包括步骤510至540。
510,获取查询文本,并对该查询文本进行语义特征提取,得到查询语义特征。
其中,查询文本可以为根据查询数据生成的查询文本,查询数据可以为文本格式、音频格式或图像格式,不做限定。当查询数据为文本格式时,可以对查询数据进行文本清洗得到查询文本;当查询数据为音频格式时,可以对查询数据进行语音识别得到查询文本;当查询数据为图像格式时,可以对查询数据进行图像文字识别得到查询文本。
在一些实施例中,获取查询文本后,可以采用语义表征模型对查询文本的语义特征进行提取,得到查询语义特征。示例性的,该语义表征模型可以为基于Transformer的双向编码器表示(BidirectionalEncoder Representations fromTransformer,BERT)模型,本申请对此不做限定。
520,获取至少一个候选视频。
示例性的,可以从候选视频库中至少一个候选视频。这里,候选视频库可以为预设的视频库,可以包含视频应用对应在视频应用服务器中的所有视频。
可选的,步骤520具体可以实施为在候选视频库中获取上述查询文本对应的至少一个候选视频。具体而言,可以根据查询文本先对候选视频库中大量的视频进行初步的筛选,得到该至少一个候选视频。
530,利用视觉编码器提取候选视频的视频帧的视觉特征,其中,该视觉编码器是利用从视频数据中提取的至少两个视频帧作为无标签的训练样本进行训练得到的。具体的,该视觉编码器可以根据上文本申请实施例提供的模型训练方法300训练得到。
示例性的,可以对步骤520中的至少一个候选视频中的每个视频提取m 个视频帧,然后利用视觉编码器对每个视频的每个视频帧提取视觉特征,获取视频包含的语义信息。也就是说,视频帧的视觉特征中包含了视频的语义信息。这里,该视觉编码器根据本申请实施例提供的模型训练方法训练得到,该视觉编码器能够挖掘视频数据的语义信息而不依赖于人为标注的标签,获取的视觉特征的语义表征更加丰富贴切。
540,根据上述视觉特征和查询语义特征,在至少一个候选视频中确定查询文本对应的目标视频。
在一些实施例中,可以根据每个视频的视频帧的视觉特征与查询语义特征的相似度评分,在至少一个候选视频中确定查询文本对应的目标视频。例如,可以至少一个候选视频的视频帧的视觉特征与查询语义特征的相似度评分由高至低进行排序,得到排序后的至少一个候选视频,并将排序后的至少一个候选视频中的前若干个视频作为目标视频推荐给用户。
因此,本申请实施例利用视频数据中提取的至少两个视频帧作为无标签的训练样本进行自监督预训练得到的视觉编码器,能够不依赖于人为标注的标签充分挖掘视频数据的语义信息,从而能够在视频数据的描述或标签与视频实际内容关联不大的情况下,通过用户输入查询文本的查询语义特征匹配视觉编码器提取的视频帧的视觉特征,不再依赖视频的标题或简介,有助于避免检索到不相关的视频内容,实现更加准确的文本-视频检索,进而提高用户的产品体验。
以上结合附图详细描述了本申请的具体实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。应理解这些序号在适当情况下可以互换,以便描述的本申请的实施例能够以除了在图示或描述的那些以外的顺序实施。
上文详细描述了本申请的方法实施例,下文结合图6至图8,详细描述本申请的装置实施例。
图6是本申请实施例的模型训练装置600的示意性框图。如图6所示,所述模型训练装置600可包括获取单元610、第一编码网络620、第二编码网络630、计算单元640和更新单元650。
获取单元610,用于获取第一视频数据,并从所述第一视频数据中提取至少两个视频帧;
第一编码网络620,用于输入所述至少两个视频帧中的第一视频帧,提取所述第一视频帧的第一视觉特征,其中,所述第一编码网络包括视觉编码器;
第二编码网络630,用于输入所述至少两个视频帧中的第二视频帧,提取所述第二视频帧的第二视觉特征,其中,所述第一编码网络与所述第二编码网络包括相同的网络结构,所述第二编码网络的参数由所述第一编码网络的参数基于动量的移动值进行更新;
计算单元640,用于根据所述第一视觉特征和所述第二视觉特征,计算损失;
更新单元650,用于根据所述损失,对所述第一编码网络的参数进行更新,得到训练后的所述视觉编码器。
在一些实施例中,所述第一视频帧和所述第二视频帧为相邻的两个视频帧。
在一些实施例中,所述第一视频帧和所述第二视频帧为相邻的两个视频帧聚类,其中,所述视频帧聚类是根据至少两个相邻的视频帧得到的。
在一些实施例中,获取单元610还用于:获取第二视频数据,并从所述第二视频数据中提取第三视频帧;
第二编码网络630还用于:将所述第三视频帧输入所述第二编码网络,提取所述第三视频帧的第三视觉特征;
计算单元640具体用于:根据所述第一视觉特征、所述第二视觉特征和所述第三视觉特征,计算所述损失,其中,所述第一视觉特征和所述第二视觉特征为正样本特征,所述第三视觉特征为负样本特征。
在一些实施例中,装置600还包括负样本队列,用于存储第二视觉特征。
在一些实施例中,第一编码网络620还用于输入所述第二视频帧,提取所述第二视频帧的第四视觉特征;
第二编码网络630还用于输入所述第一视频帧输入,提取所述第一视频帧的第五视觉特征;
其中,计算单元640具体用于:根据所述第一视觉特征、所述第二视觉特征、所述第四视觉特征和所述第五视觉特征,计算对称损失,以及将所述对称损失确定为所述损失。
在一些实施例中,所述视频编码器包括视觉Transformer或卷积神经网络 CNN。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图6所示的装置600 可以执行上述方法实施例,并且装置600中的各个模块的前述和其它操作和/ 或功能分别为了实现上述方法300中的相应流程,为了简洁,在此不再赘述。
图7是本申请实施例的视频查询装置700的示意性框图。如图7所示,所述模型训练装置700可包括获取单元710、视觉编码器720和确定单元730。
获取单元710,用于获取查询文本,并对所述查询文本进行语义特征提取,得到查询语义特征;
所述获取单元710还用于获取至少一个候选视频;
视觉编码器720,用于提取所述候选视频的视频帧的视觉特征,其中,所述视觉编码器根据本申请实施例提供的训练模型方法200训练得到;
确定单元730,用于根据所述视觉特征和所述查询语义特征,在所述至少一个候选视频中确定所述查询文本对应的目标视频。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图7所示的装置700 可以执行上述方法实施例,并且装置700中的各个模块的前述和其它操作和/ 或功能分别为了实现上述方法500中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图8是本申请实施例提供的电子设备800的示意性框图。
如图8所示,该电子设备800可包括:
存储器810和处理器820,该存储器810用于存储计算机程序,并将该程序代码传输给该处理器820。换言之,该处理器820可以从存储器810中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器820可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请的一些实施例中,该处理器820可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器810包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM, PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM, DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleData Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器810中,并由该处理器820执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图8所示,该电子设备800还可包括:
收发器830,该收发器830可连接至该处理器820或存储器810。
其中,处理器820可以控制该收发器830与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器830可以包括发射机和接收机。收发器830还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等) 方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc, DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
可以理解的是,在本申请的具体实施方式中,当本申请以上实施例运用到具体产品或技术中并涉及到用户信息等相关的数据时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关法律法规和标准。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (13)
1.一种模型训练方法,其特征在于,包括:
获取第一视频数据,并从所述第一视频数据中提取至少两个视频帧;
将所述至少两个视频帧中的第一视频帧输入第一编码网络,提取所述第一视频帧的第一视觉特征,其中,所述第一编码网络包括视觉编码器;
将所述至少两个视频帧中的第二视频帧输入第二编码网络,提取所述第二视频帧的第二视觉特征,其中,所述第一编码网络与所述第二编码网络包括相同的网络结构,所述第二编码网络的参数由所述第一编码网络的参数基于动量的移动值进行更新;
根据所述第一视觉特征和所述第二视觉特征,计算损失;
根据所述损失,对所述第一编码网络的参数进行更新,得到训练后的所述视觉编码器。
2.根据权利要求1所述的方法,其特征在于,所述第一视频帧和所述第二视频帧为相邻的两个视频帧。
3.根据权利要求1所述的方法,其特征在于,所述第一视频帧和所述第二视频帧为相邻的两个视频帧聚类,其中,所述视频帧聚类是根据至少两个相邻的视频帧得到的。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
获取第二视频数据,并从所述第二视频数据中提取第三视频帧;
将所述第三视频帧输入所述第二编码网络,提取所述第三视频帧的第三视觉特征;
其中,所述根据所述第一视觉特征和所述第二视觉特征,计算损失,包括:
根据所述第一视觉特征、所述第二视觉特征和所述第三视觉特征,计算所述损失,其中,所述第一视觉特征和所述第二视觉特征为正样本特征,所述第三视觉特征为负样本特征。
5.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
将所述第二视觉特征加入负样本队列中,其中,所述负样本队列用于存储负样本特征。
6.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
将所述第二视频帧输入所述第一编码网络,提取所述第二视频帧的第四视觉特征;
将所述第一视频帧输入所述第二编码网络,提取所述第一视频帧的第五视觉特征;
其中,所述根据所述第一视觉特征和所述第二视觉特征,计算损失,包括:
根据所述第一视觉特征、所述第二视觉特征、所述第四视觉特征和所述第五视觉特征,计算对称损失;
将所述对称损失确定为所述损失。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述视频编码器包括视觉Transformer或卷积神经网络CNN。
8.一种视频查询方法,其特征在于,包括:
获取查询文本,并对所述查询文本进行语义特征提取,得到查询语义特征;
获取至少一个候选视频;
利用视觉编码器提取所述候选视频的视频帧的视觉特征,其中,所述视觉编码器根据如权利要求1-7任一项所述的方法训练得到;
根据所述视觉特征和所述查询语义特征,在所述至少一个候选视频中确定所述查询文本对应的目标视频。
9.一种模型训练装置,其特征在于,包括:
获取单元,用于获取第一视频数据,并从所述第一视频数据中提取至少两个视频帧;
第一编码网络,用于输入所述至少两个视频帧中的第一视频帧,提取所述第一视频帧的第一视觉特征,其中,所述第一编码网络包括视觉编码器;
第二编码网络,用于输入所述至少两个视频帧中的第二视频帧,提取所述第二视频帧的第二视觉特征,其中,所述第一编码网络与所述第二编码网络包括相同的网络结构,所述第二编码网络的参数由所述第一编码网络的参数基于动量的移动值进行更新;
计算单元,用于根据所述第一视觉特征和所述第二视觉特征,计算损失;
更新单元,用于根据所述损失,对所述第一编码网络的参数进行更新,得到训练后的所述视觉编码器。
10.一种视频查询装置,其特征在于,包括:
获取单元,用于获取查询文本,并对所述查询文本进行语义特征提取,得到查询语义特征;
所述获取单元还用于获取至少一个候选视频;
视觉编码器,用于提取所述候选视频的视频帧的视觉特征,其中,所述视觉编码器根据如权利要求1-7任一项所述的方法训练得到;
确定单元,用于根据所述视觉特征和所述查询语义特征,在所述至少一个候选视频中确定所述查询文本对应的目标视频。
11.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有指令,所述处理器执行所述指令时,使得所述处理器执行权利要求1-8任一项所述的方法。
12.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序包括用于执行权利要求1-8中任一项所述的方法。
13.一种计算机程序产品,其特征在于,包括计算机程序代码,当所述计算机程序代码被电子设备运行时,使得所述电子设备执行权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211194124.9A CN116992947A (zh) | 2022-09-28 | 2022-09-28 | 模型训练方法、视频查询方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211194124.9A CN116992947A (zh) | 2022-09-28 | 2022-09-28 | 模型训练方法、视频查询方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116992947A true CN116992947A (zh) | 2023-11-03 |
Family
ID=88520141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211194124.9A Pending CN116992947A (zh) | 2022-09-28 | 2022-09-28 | 模型训练方法、视频查询方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116992947A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113849645A (zh) * | 2021-09-28 | 2021-12-28 | 平安科技(深圳)有限公司 | 邮件分类模型训练方法、装置、设备及存储介质 |
-
2022
- 2022-09-28 CN CN202211194124.9A patent/CN116992947A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113849645A (zh) * | 2021-09-28 | 2021-12-28 | 平安科技(深圳)有限公司 | 邮件分类模型训练方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110866140B (zh) | 图像特征提取模型训练方法、图像搜索方法及计算机设备 | |
CN112164391B (zh) | 语句处理方法、装置、电子设备及存储介质 | |
CN111581510A (zh) | 分享内容处理方法、装置、计算机设备和存储介质 | |
WO2021139191A1 (zh) | 数据标注的方法以及数据标注的装置 | |
CN111797893A (zh) | 一种神经网络的训练方法、图像分类系统及相关设备 | |
CN110737783A (zh) | 一种推荐多媒体内容的方法、装置及计算设备 | |
WO2021139415A1 (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
CN113011172B (zh) | 文本处理方法、装置、计算机设备和存储介质 | |
CN115131638B (zh) | 视觉文本预训练模型的训练方法、装置、介质和设备 | |
CN114550053A (zh) | 一种交通事故定责方法、装置、计算机设备及存储介质 | |
CN112231347A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN113515669A (zh) | 基于人工智能的数据处理方法和相关设备 | |
CN115203471B (zh) | 一种基于注意力机制的多模融合视频推荐方法 | |
WO2024041483A1 (zh) | 一种推荐方法及相关装置 | |
CN116524593A (zh) | 一种动态手势识别方法、系统、设备及介质 | |
CN111930981A (zh) | 一种草图检索的数据处理方法 | |
CN116955730A (zh) | 一种特征提取模型的训练方法、内容推荐的方法及装置 | |
CN116992947A (zh) | 模型训练方法、视频查询方法和装置 | |
CN115640449A (zh) | 媒体对象推荐方法、装置、计算机设备和存储介质 | |
CN113761280A (zh) | 媒体数据处理方法、装置、电子设备及计算机存储介质 | |
CN112417260B (zh) | 本地化推荐方法、装置及存储介质 | |
CN113822291A (zh) | 一种图像处理方法、装置、设备及存储介质 | |
CN114626520B (zh) | 训练模型的方法、装置、设备以及存储介质 | |
CN116150428B (zh) | 视频标签获取方法、装置、电子设备及存储介质 | |
CN117011650B (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 |