CN116486195B - 视频推荐模型的训练方法、视频推荐方法和装置 - Google Patents
视频推荐模型的训练方法、视频推荐方法和装置 Download PDFInfo
- Publication number
- CN116486195B CN116486195B CN202310287017.9A CN202310287017A CN116486195B CN 116486195 B CN116486195 B CN 116486195B CN 202310287017 A CN202310287017 A CN 202310287017A CN 116486195 B CN116486195 B CN 116486195B
- Authority
- CN
- China
- Prior art keywords
- video
- training
- task
- recommended
- sample
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012549 training Methods 0.000 title claims abstract description 248
- 238000000034 method Methods 0.000 title claims abstract description 128
- 230000008569 process Effects 0.000 claims abstract description 26
- 239000013598 vector Substances 0.000 claims description 72
- 238000000605 extraction Methods 0.000 claims description 33
- 230000003993 interaction Effects 0.000 claims description 22
- 230000015654 memory Effects 0.000 claims description 10
- 238000013528 artificial neural network Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000000977 initiatory effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000004927 fusion Effects 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000010354 integration Effects 0.000 description 2
- 206010027175 memory impairment Diseases 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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/09—Supervised learning
-
- 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
-
- 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/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了视频推荐模型的训练方法、视频推荐方法和装置,涉及计算机技术领域,尤其涉及神经网络、视频推荐领域。具体实现方案为:将训练样本输入待训练的视频推荐模型,训练样本包括视频样本和与视频样本相关的文本样本;在待训练的视频推荐模型中利用视频样本和文本样本,确定训练样本的多模信息;对训练样本的多模信息进行编码,以得到训练样本的特征序列;利用训练样本的特征序列对待训练的视频推荐模型进行训练;训练过程中,在至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对该任一任务进行训练,N为大于1的整数;直至该至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。本公开提高了视频推荐模型的准确度。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及神经网络、视频推荐领域。
背景技术
近年来,随着软硬件技术的快速发展,视频成为信息传递的主要方式之一,在视频的分发推荐场景中,经常会出现从多个角度对视频进行推荐的情况。
发明内容
本公开提供了视频推荐模型的训练方法、视频推荐方法和装置。
根据本公开的一方面,提供了一种视频推荐模型的训练方法,包括:
将训练样本输入待训练的视频推荐模型,训练样本包括视频样本和与视频样本相关的文本样本;待训练的视频推荐模型支持至少2个任务;
在待训练的视频推荐模型中利用视频样本和文本样本,确定训练样本的多模信息;对训练样本的多模信息进行编码,以得到该训练样本的特征序列;以及,
利用训练样本的特征序列对待训练的视频推荐模型进行训练;训练过程中,在至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对该任一任务进行训练,N为大于1的整数;直至该至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
根据本公开的另一方面,提供了一种视频推荐方法,包括:
将待推荐任务输入训练完成的视频推荐模型,该待推荐任务包括待推荐视频和与该待推荐视频相关的文本信息;该训练完成的视频推荐模型支持至少2个任务;
由该训练完成的视频推荐模型得到针对至少2个任务的视频推荐结果;
其中,训练完成的视频推荐模型通过本公开中任一视频推荐模型的训练方法训练得到。
根据本公开的另一方面,提供了一种视频推荐模型的训练装置,包括:
第一输入模块,用于将训练样本输入待训练的视频推荐模型,训练样本包括视频样本和与视频样本相关的文本样本;待训练的视频推荐模型支持至少2个任务;
确定模块,用于在该待训练的视频推荐模型中利用视频样本和文本样本,确定训练样本的多模信息;对训练样本的多模信息进行编码,以得到训练样本的特征序列;以及,
训练模块,用于利用训练样本的特征序列对待训练的视频推荐模型进行训练;训练过程中,在至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对该任一任务进行训练,N为大于1的整数;直至该至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
根据本公开的另一方面,提供了一种视频推荐装置,包括:
第二输入模块,用于将待推荐任务输入训练完成的视频推荐模型,待推荐任务包括待推荐视频和与该待推荐视频相关的文本信息;该训练完成的视频推荐模型支持至少2个任务;
推荐模块,用于由该训练完成的视频推荐模型对待推荐任务进行视频推荐,以得到针对至少2个任务的视频推荐结果;
其中,训练完成的视频推荐模型通过本公开的视频推荐模型的训练装置训练得到。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本公开中任一实施例的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,该计算机指令用于使该计算机执行根据本公开中任一实施例的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现根据本公开中任一实施例的方法。
本公开提出的视频推荐模型的训练方法,在对支持至少2个任务的视频推荐模型进行训练时,当一个任务收敛后,每执行N次(N大于1)迭代针对该任务进行一次训练;对于尚未收敛的其他任务则按照常规方式,每次迭代过程都训练一次。这种方式主要是为了应对多任务模型中不同任务训练进度不一致而造成的潜在问题;具体地,多任务模型的不同任务训练进度不一致,在迭代过程中会出现有些任务已经收敛、有些任务尚未收敛的情况。采用本公开提出的方式,对于已经收敛的任务,采用间隔训练的方式来减少收敛后的训练次数,这样既避免了一个任务收敛后每次迭代仍进行训练(这种情况训练的次数过多)可能造成的过拟合现象、又降低了收敛之后完全停止训练而带来的灾难性遗忘风险,从而从整体上提高视频推荐模型的准确度。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1A是多任务模型的训练方式一示意图;
图1B是多任务模型的训练方式二示意图;
图2是根据本公开实施例的应用场景示意图;
图3是根据本公开实施例视频推荐模型的训练方法300的实现流程图;
图4是根据本公开实施例中确定训练样本的多模信息的示例性流程图;
图5是根据本公开实施例的视频推荐模型结构示意图;
图6是根据本公开实施例的视频编码模块结构示意图;
图7是根据本公开实施例的视频推荐模型训练方法的示例性示意图;
图8是根据本公开实施例视频推荐方法800的实现流程图;
图9是根据本公开实施例视频推荐模型的训练装置900的结构示意图;
图10是根据本公开实施例视频推荐模型的训练装置1000的结构示意图;
图11是根据本公开实施例视频推荐装置1100的结构示意图;
图12示出了可以用来实施本公开的实施例的示例电子设备1200的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。本文中术语“第一”、“第二”表示指代多个类似的技术用语并对其进行区分,并不是限定顺序的意思,或者限定只有两个的意思,例如,第一特征和第二特征,是指代有两类/两个特征,第一特征可以为一个或多个,第二特征也可以为一个或多个。
随着计算机技术的快速发展,在实际场景中,往往存在多种需要解决的任务。以视频推荐场景为例,经常会出现从多个角度对视频进行推荐的情况,例如除了针对视频类别进行推荐外,也需要针对视频标题和视频内容等其他方面对视频进行推荐。如果采用针对每个推荐任务单独训练一个模型的方法,会造成提高研发成本,以及增加后续维护成本的问题。
因此基于上述问题,多任务模型应运而生。该多任务模型能够达到采用一个模型解决多个任务的目的。目前现有技术中存在多种多任务模型的训练方法,但是基于现有的训练方法得到的训练后的多任务模型普遍存在准确度不高以及灾难性遗忘的问题。其中,灾难性遗忘问题可以指多任务模型在学习新任务的过程中遗忘旧任务的问题。灾难性遗忘问题会严重影响多任务模型的性能。具体地,现有技术一般采用并行训练方法和串行训练方法对多任务模型进行训练。例如,如图1A所示,如果采用并行训练方法来实现多任务模型的训练时,因为训练样本和训练目标不同,并行训练方法实际上无法实现;或者,如图1B所示,如果串行训练方法来实现多任务模型的训练时,因为需要依次针对不同任务进行训练,在学习新任务的过程中容易遗忘旧任务,也正因如此,在训练到最后一个任务时,多任务模型难以保留早期学习到的信息。
因此,针对上述问题,本公开实施例提出了一种多任务模型的训练方法,该多任务模型的训练方法可以应用于视频推荐场景。本申请实施例以下将对应用于视频推荐场景的多任务模型的训练方法(以下简称视频推荐模型的训练方法)进行详细说明。
本公开实施例提出的视频推荐模型的训练方法,可以用于支持至少2个视频推荐任务。图2是根据本公开实施例的应用场景示意图。如图2所示,该应用场景包括:服务器210、数据存储设备220和终端设备230。在一些实施方式中,服务器210在完成视频推荐模型的训练之后,将视频推荐模型部署到终端设备230中;数据存储设备220用于存储大量待推荐视频和与待推荐视频相关的文本信息;终端设备230用于利用视频推荐模型对终端设备230中的大量待推荐视频和与待推荐视频相关的文本信息进行处理,以得到至少2个任务的视频推荐结果。
在一些实施方式中,该终端设备230可以包括用户使用的电子设备,例如,个人计算机、手机、平板电脑、笔记本、以及电子书阅读器等具有一定计算能力的计算机设备;该服务器210可以包括独立的物理服务器、多个物理服务器构成的服务器集群、分布式系统,以及能够提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务的分发网络(Content Delivery Network,CDN)。其中,该应用场景中的一个或多个组件(例如,服务器210、数据存储设备220、或者终端设备230)可以通过网络发送视频推荐结果、或者待推荐视频和与该待推荐视频相关的文本信息给应用场景中的其他组件。需要说明的是,该网络可以包括任意类型的有线或无线网络。
图3是根据本公开实施例视频推荐模型的训练方法300的实现流程图,该方法可以应用于视频推荐模型的训练装置,例如,该装置可以部署于单机、多机或集群系统中的终端或服务器或其它处理设备。其中,终端可以为用户设备(UE,User Equipment)、移动设备、个人数字处理(PDA,Personal Digital Assistant)手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该方法还可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。如图3所示,该视频推荐模型的训练方法包括:
S310、将训练样本输入待训练的视频推荐模型,训练样本包括视频样本和与视频样本相关的文本样本;待训练的视频推荐模型支持至少2个任务;
S320、在待训练的视频推荐模型中利用视频样本和所文本样本,确定训练样本的多模信息;对训练样本的多模信息进行编码,以得到训练样本的特征序列;以及,
S330、利用训练样本的特征序列对待训练的视频推荐模型进行训练;训练过程中,在至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对任一任务进行训练,N为大于1的整数;直至至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
进一步地,训练过程中,在至少2个任务中的任一任务不收敛的情况下,在每次迭代过程中针对该任一任务进行训练。这种方式与常规的训练方式一致。
本公开提出的视频推荐模型的训练方法,在对支持至少2个任务的视频推荐模型(也就是用于视频推荐的多任务模型)进行训练时,当一个任务收敛后,每执行N次迭代针对该任务进行一次训练;对于尚未收敛的其他任务则按照常规方式,每次迭代过程都训练一次。这种方式能够很好地应对多任务模型中不同任务训练进度不一致而造成的潜在问题;采用本公开实施例提出的方式,对于已经收敛的任务,采用间隔训练的方式(即每迭代N次训练一次,而不是每次迭代都进行训练),能够减少收敛后的训练次数,这样避免对该任务造成过拟合;同时,对于已经收敛的任务,又不会完全停止对该任务的训练,避免模型只针对其他任务训练、而造成对该之前已经收敛的任务出现灾难性遗忘问题。由于视频推荐模型经常需要完成多个不同的下游任务,对于用于视频推荐的多任务统一模型,采用本公开实施例提出的训练方法,能够从整体上提高视频推荐模型的准确度。
本公开实施例提出的视频推荐模型的训练方法,通过至少2个任务中任一任务的收敛状态,确定该待训练的视频推荐模型针对该任一任务的训练方式,有效地提高了训练后的视频推荐模型针对至少2个任务的准确度,一定程度上避免了视频推荐模型产生过拟合、或者灾难性遗忘的问题。
需要说明的是,本公开实施例提出的不同任务对应的N可以相同或不同。也就是说,不同任务对应的N可以根据该任务的具体情况决定,例如,可以根据该任务的训练样本、训练目标、训练难度等相关因素决定。并且,不同的任务可以设置不同的N值,使得不同任务在收敛之后继续训练的间隔大小不同。
本公实施例提出的视频推荐模型的训练方法针对不同任务设置相同和/或不同的N,能够在一定程度上保证训练完成后的视频推荐模型针对不同的任务均具有较高的准确率,能够有效地避免训练完成后的视频推荐模型遗忘至少2个任务中的任一任务。
在一些实施方式中,本公开实施例提出的与该视频样本相关的文本样本可以包括与视频样本相关的全部文本信息和部分文本信息。例如,在该视频样本对应的全部文本信息的内容较多时,该与视频样本相关的文本样本可以包括该视频样本的字幕、标题、摘要、文本互动信息、以及语音互动信息对应的文本信息中的至少之一。
另外,该至少2个任务包括视频分类、视频标签抽取、视频字幕提取、视频标题提取、视频内容提取和视频互动信息提取中的至少之一。
本公开实施例提出的视频推荐模型的训练方法能够均衡处理至少2个不同的任务,在保障至少2个任务处理效果的同时,还提升了多任务处理的效率。
进一步地,在对视频推荐模型进行训练之前,还可以预先获取大量训练样本,该训练样本包括视频样本和与该视频样本相关的文本样本。
其中,该视频样本可以包括至少一个标准视频片段,或者至少2帧图像。与该视频样本相关的文本样本可以包括该视频样本的字幕、标题、摘要、文本互动信息、以及语音互动信息对应的文本信息中的至少之一。
本公开实施例提出的视频推荐模型的训练方法采用多种类型的文本样本,对该待训练的视频推荐模型进行训练,能够提高视频推荐模型的精度,从而得出最优的视频推荐结果。
在一些实施方式中,为了提高视频推荐模型的训练方法的效率,保证视频推荐模型能够高准确度地对视频进行推荐,本公开实施例还提出了利用训练样本的多模信息对待训练的视频推荐模型进行训练。如图4所示,利用该视频样本和文本样本,确定训练样本的多模信息,包括:
S410、确定文本样本的字向量;
S420、抽取视频样本中的多帧图像,并提取多帧图像的向量表示;
S430、将多帧图像的向量表示与字向量进行拼接,得到多模信息,多模信息中包含文本特征序列和视频特征序列。
其中,该多模信息可以用于针对至少2个任务,对该待训练的视频推荐模型进行训练。以图5所示,至少2个任务可以包括视频标签提取、视频标题提取、以及视频主题提取等。
在一些实施方式中,本公开实施例提出的字向量还可以称为字嵌入(wordembedding),可以指将文本样本转换到实数向量空间所得到的该文本样本对应的向量化表示。例如,该文本样本对应的向量化表示可以为W=[w1,w2,...,wm],其中,W表示该文本样本对应的全部字向量的集合,wm表示该文本样本中第m个字所对应的字向量。以图5为例,本公开实施例可以采用基于变换器的双向编码器(BERT,Bidirectional EncoderRepresentation from Transformers)、知识增强的语义表示模型(ERNIE,EnhancedRepresentation through Knowledge Integration)、以及分布词向量(Word2Vec)等语言模型生成文本样本对应的字向量。需要说明的是,本公开实施例并不限制字向量的表示形式,例如该字向量的表示形式还可以包括独热向量编码(one-hot encoding)。
以图6所示,本公开实施例可以采用VIT(Vision Transformer)网络抽取视频样本中的多帧图像,并提取该多帧图像的向量表示。例如,本公开实施例可以采用VIT网络对视频样本进行抽取,以得到该视频样本中的多帧图像,即Img=[img1,img2,...,imgn],其中,Img表示该视频样本中多帧图像的集合,imgi表示该视频样本中的第i个图像帧。需要说明的是,本公开实施例还可以根据Img提取该视频样本所对应的向量表示(例如vi=f(imgi),其中,向量vi表示该视频样本中第i个图像帧所对应的向量表示,f表示预训练视觉模型,该预训练视觉模型能够确定各个图像帧中的向量表示)。另外,本公开实施例还可以将该多帧图像的向量表示与字向量进行拼接,以得到多模信息(例如H=[CLS;W;V],其中,H用于表示该多帧图像的向量表示与字向量进行拼接后得到的多模信息,W用于表示该多模信息的文本特征序列,V用于表示该多模信息的视频特征序列,XLS可以指混合标识向量,该混合标识向量用于表征该向量为多帧图像的向量表示与字向量进行拼接后得到的向量)。
另外,在本公开实施例中,将该多帧图像的向量表示与向量进行拼接时,各个字向量在拼接特征中的拼接顺序可以为各个字向量所对应的字在文本样本中的顺序。
多模信息可以聚合训练样本中视频样本和文本样本的信息,从而使得待训练的视频推荐模型学习到的信息更加完整和准确。以视频分类任务为例,利用文本信息(例如视频字幕和视频标题等)和音频信息同时训练的视频推荐模型的推荐效果在一定程度上优于只利用以上任意一种信息进行训练的视频推荐模型。
进一步地,本公开实施例还可以通过特征融合网络将多帧图像的向量表示与字向量进行特征融合,从而提高训练样本对应的多模信息的准确度。例如,可以通过特征融合网络将H=[XLS;W;V]转换为其中,该/>可以表征该多帧图像的向量表示与字向量进行特征融合后得到的多模信息。在一些实施方式中,特征融合网络可以包括深度双向转换器神经网络(BERT,Bidirectional Encoder Representations fromTransformers)模型、转换器(Transformer)模型、以及双向长短时记忆神经网络(BLSTM,Bidirectional Long Short Term Memory)等,本公开实施例并不对此做具体限定。
如图6所示,本公开实施例还可以采用VIT网络,抽取该视频样本中的多帧图像,并提取该多帧图像的向量表示。具体包括:
根据预设条件,对该视频样本进行抽取,以得到该视频样本对应的多帧图像;其中,该预设条件包括预设时间间隔和预设帧数间隔中的至少之一;
分别对多帧图像中的各帧图像进行向量提取,以得到该多帧图像的向量表示。
本公开实施例提出的提取多帧图像向量表示的方法,能够准确地反映该视频样本所包含的主要信息,有利于提高后续视频推荐模型的准确率。
当然,本公开实施例还可以根据视频样本的属性,确定该视频样本对应的预设条件;
其中,该视频样本的属性包括视频样本时长、视频样本帧率和视频样本分辨率中的至少之一。
本公开实施例提出的获取预设条件的方法,通过综合考虑视频样本多方面的属性,确定预设条件,能够提高该多帧图像涵盖视频样本全部信息的可能性。
以上简单介绍了如何得到训练样本的特征序列。以下内容将对本公开实施例中利用训练样本的特征序列、对该待训练视频推荐模型进行训练做详细说明。
本公开实施例提出的利用训练样本的特征序列,对待训练的视频推荐模型进行训练的过程包括:利用训练样本的特征序列对待训练的视频推荐模型进行训练;训练过程中,在至少2个任务中的任一任务不收敛的情况下,在每次迭代过程中针对该任一任务进行训练;在任一任务收敛的情况下,每执行N次迭代、针对该任一任务进行训练,N为大于1的整数;直至至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
进一步地,在至少2个任务中的任一任务不收敛的情况下,在每次迭代过程中针对该任一任务进行训练;在该任一任务收敛的情况下,每执行N次迭代、针对任一任务进行训练,包括:
为任一任务设置训练启动标签,在任一任务不收敛的情况下,将该训练启动标签的值设置为开启;
在任一任务收敛的情况下,将训练启动标签的值设置为关闭;并为该任一任务设置计数器,计数器用于记录训练启动标签的值被设置为关闭后所经历的迭代次数;
在每次迭代过程中,在任一任务的训练启动标签的值为开启的情况下,针对该任一任务进行训练;在任一任务的训练启动标签的值为关闭、并且计数器记录的次数等于或大于N的情况下,针对该任一任务进行训练。
计数器的初始值可以设置为0。每次迭代过程中,在任一任务的训练启动标签的值为关闭、并且计数器记录的次数等于或大于N的情况下,针对该任一任务进行训练,同时将计数器的计数值增加1;在任一任务的训练启动标签的值为开启的情况下,针对该任一任务进行训练,同时将计数器的计数值恢复为初始值(如0)。
举例说明,图7是根据本公开一实施例的视频推荐模型训练方法的示例性示意图。如图7所示,该待训练的视频推荐模型可以支持M个任务(如任务1至任务M);其中,M为大于1的整数。初始状态下,为该待训练的视频推荐模型的各个任务分别设置一个训练启动标签(即图7所示的“train_trigger”),由于初始状态下每个任务都不收敛,因此将各个任务的训练启动标签的值均设置为开启(即图7所示的“train_trigger=ON”)。
以任务1为例,经过多次迭代训练,如图7所示,到达第x次迭代时,任务1的状态变为收敛,此时将任务1的训练启动标签的值设置为关闭(如图7所示的“train_trigger=OFF”),并为任务1设置一个训练间隔(如上述N),在图7中以“iter_gap”表示,假定将任务1的训练间隔设置为3,即“iter_gap=3”;并且,可以为任务1设置一个计数器,该计数器的初始值为0。
下一次迭代过程中,针对任务1,由于任务1的“train_trigger=OFF”,并且计数器的计数值为0,没有超过预先设置的“iter_gap”,因此不对任务1进行训练,而仅将任务1的计数器的计数值增加1(即由0增加至1)。对于其他任务,由于其他任务的训练启动标签的值为开启,因此正常训练其他任务。
再经过2次迭代过程,针对任务1,由于任务1的“train_trigger=OF F”,并且计数器的计数值仍然没有超过预先设置的“iter_gap”,因此仍然不对任务1进行训练,而仅将任务1的计数器的计数值增加1。对于其他任务,由于其他任务的训练启动标签的值为开启,因此正常训练其他任务。
当任务1的计数器的计数值被增加至3时,在新一次的迭代过程中,针对任务1,由于任务1的“train_trigger=OFF”,并且计数器的计数值等于预先设置的“iter_gap”(即3),因此对任务1进行训练,并将任务1的计数器的计数值恢复为初始值(即0),重新开始新一轮的间隔训练。
对于其他任务,可以采用同样的方式进行训练。例如,如图7所示,当到达第y次迭代时,任务2收敛,可以将任务2的训练启动标签的值设置为关闭,并为任务2设置训练间隔(如图7中的“iter_gap”),该训练间隔与任务1的训练间隔可以相同或不同,如在图7中,任务2的“iter_gap”被设置为5。
采用上述方式,当一个任务收敛之后,可以采用间隔训练的方式,每隔几个迭代次数训练一次,这样避免过拟合,并降低灾难性遗忘的风险。为了进一步降低灾难性遗忘风险,可以在每次迭代后对各个任务的收敛状态进行检查,如果发现一个已经收敛的任务重新变为不收敛,则将该任务的训练启动标签的值重新设置为开启,以重新开始每次迭代都对其进行训练。如图7所示,当到达第z次迭代时,之前已经收敛的任务1重新变为不收敛,其训练启动标签的值被设置为开启,即“ON”,此时重新开始每次迭代都对任务1进行训练。
具体地,本公开实施例可以针对不同的任务分别计算损失函数,根据各个任务的损失函数确定该任务的收敛状态。例如,如果该任务的损失函数的值持续上升(如连续3次出现上升),但是该任务损失函数的值上升幅度较小(例如,该任务在第二次迭代时损失函数的值相较于第一次迭代时损失函数的值上升的幅度小于5%,则表示该任务损失函数的值上升幅度较小,需要说明的是,该数值可以根据具体情况设定),则认为该待训练的视频推荐模型针对该任务收敛,简称该任务收敛;如果该任务损失函数的值上升幅度较大(例如,该任务在第二次迭代时损失函数的值相较于第一次迭代时损失函数的值上升的幅度大于10%,则表示该任务损失函数的值上升幅度较大,要说明的是,该数值可以根据具体情况设定),则认为该待训练的视频推荐模型针对该任务不收敛,简称该任务不收敛。
进一步地,在每次迭代时,确定各个任务的收敛状态后,还需要针对已收敛任务和未收敛任务进行不同的训练。
具体地,在任一任务不收敛的情况下,将其对应的训练启动标签的值设置为开启;在任一任务收敛的情况下,将其对应的训练启动标签的值设置为关闭,并为该任一任务设置计数器。
其中,计数器可以用于记录训练启动标签的值被设置为关闭后所经历的迭代次数,也就是该任务没有被训练的次数。具体包括:
在每次迭代过程中,在任一任务的训练启动标签的值为关闭、并且该计数器记录的次数小于N的情况下,将该任一任务的计数器的计数值增加1。
本公开实施例提出的视频推荐模型的训练方法,通过采用计数器记录待训练的视频推荐模型,没有对已收敛的任务进行训练的次数,能够有效地对已收敛任务的进行监控,在一定程度上避免该待训练的视频推荐模型对已收敛的任务产生灾难性遗忘的问题。
当然在本公开实施例中,为了避免该待训练的视频推荐模型对已收敛的任务产生灾难性遗忘的问题,还需要针对该已收敛的任务,重复上述“每执行N次迭代、针对该任一任务进行训练,N为大于1的整数”的步骤。
因此,为了能够重复执行上述“每执行N次迭代、针对任一任务进行训练,N为大于1的整数”的步骤,本公开实施例提出的在任一任务的训练启动标签的值为关闭、并且计数器记录的次数等于或大于N的情况下,还可以包括:将该任一任务的计数器的计数值恢复为初始值。
本公开实施例提出的视频推荐模型的训练方法,还可以为待训练的视频推荐模型支持的任务设置状态标签,如设置“convergence”。例如,当该任务的状态标签“convergence=1”时,则表示该任务收敛;当该任务的状态标签“convergence=0”时,则表示该任务不收敛。
本公开实施例提出的模型训练方法,能够实现对已收敛任务的高效记忆存储,兼顾所有任务的性能,提高视频推荐的效果,并且可以实现更多任务的整合。
本公开实施例还提出一种视频推荐方法,图8是根据本公开实施例视频推荐方法800的实现流程图,包括:
S810、将待推荐任务输入训练完成的视频推荐模型,待推荐任务包括待推荐视频和与待推荐视频相关的文本信息;训练完成的视频推荐模型支持至少2个任务;
S820、由训练完成的视频推荐模型对待推荐任务进行视频推荐,以得到针对至少2个任务的视频推荐结果;
其中,训练完成的视频推荐模型通过本公开实施例提出的任意一种模型训练方法训练得到。
由于采用本公开实施例提出的模型训练方法,训练支持多个任务的视频推荐模型,并将该视频推荐模型用于视频推荐任务,以得到针对多个任务的视频推荐结果,能够提高视频推荐的准确性和多样性。
在一些实施方式中,由训练完成的视频推荐模型对待推荐任务进行视频推荐,包括:
由训练完成的视频推荐模型利用待推荐视频和文本信息,确定待推荐任务的多模信息;
对该待推荐任务的多模信息进行编码,以得到待推荐任务的特征序列;
利用该特征序列对待推荐任务进行视频推荐。
在一些实施方式中,利用该待推荐视频和文本信息,确定该待推荐任务的多模信息,包括:
确定文本信息的字向量;
抽取该待推荐视频中的多帧图像,并提取该多帧图像的向量表示;
将该多帧图像的向量表示与该字向量进行拼接,得到多模信息,该多模信息中包含文本特征序列和视频特征序列。
在一些实施方式中,抽取该待推荐视频中的多帧图像,并提取该多帧图像的向量表示,包括:
根据预设条件,对该待推荐视频进行抽取,以得到待推荐视频对应的多帧图像;其中,预设条件包括预设时间间隔和预设帧数间隔中的至少之一;
分别对多帧图像中的各帧图像进行向量提取,以得到多帧图像的向量表示。
在一些实施方式中,还包括:
根据待推荐视频的属性,确定待推荐视频对应的预设条件;
其中,待推荐视频的属性包括待推荐视频时长、待推荐视频帧率和待推荐视频分辨率中的至少之一。
在一些实施方式中,与待推荐视频相关的文本信息包括待推荐视频的字幕、标题、文本互动信息、以及语音互动信息对应的文本信息中的
在一些实施方式中,至少2个任务包括视频分类、视频标签抽取、视频字幕提取、视频标题提取、视频内容提取和视频互动信息提取中的至少之一。
本公开实施例公开一种视频推荐模型的训练装置,图9是根据本公开实施例的视频推荐模型的训练装置900的结构示意图,包括:
第一输入模块910,用于将训练样本输入待训练的视频推荐模型,训练样本包括视频样本和与视频样本相关的文本样本;待训练的视频推荐模型支持至少2个任务;
确定模块920,用于在待训练的视频推荐模型中利用视频样本和文本样本,确定训练样本的多模信息;对训练样本的多模信息进行编码,以得到训练样本的特征序列;以及,
训练模块930,用于利用训练样本的特征序列对待训练的视频推荐模型进行训练;训练过程中,在至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对任一任务进行训练,N为大于1的整数;直至至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
在一些实施方式中,该训练模块930,还用于在至少2个任务中的任一任务不收敛的情况下,在每次迭代过程中针对任一任务进行训练。
图10是根据本公开实施例的视频推荐模型的训练装置1000的结构示意图,如图10所示,在一些实施方式中,本公开实施例提出的训练模块930,包括:
设置子模块931,用于为任一任务设置训练启动标签,在任一任务不收敛的情况下,将训练启动标签的值设置为开启;在任一任务收敛的情况下,将训练启动标签的值设置为关闭;并为任一任务设置计数器,计数器用于记录训练启动标签的值被设置为关闭后所经历的迭代次数;
训练子模块932,用于在每次迭代过程中,在任一任务的训练启动标签的值为开启的情况下,针对任一任务进行训练;在任一任务的训练启动标签的值为关闭、并且计数器记录的次数等于或大于N的情况下,针对任一任务进行训练。
在一些实施方式中,训练子模块932,还用于在每次迭代过程中,在任一任务的训练启动标签的值为关闭、并且计数器记录的次数小于N的情况下,将任一任务的计数器的计数值增加1。
在一些实施方式中,训练模子块932,还用于将任一任务的计数器的计数值恢复为初始值。
在一些实施方式中,不同任务对应的N相同或不同。
在一些实施方式中,确定模块920,用于:
确定文本样本的字向量;
抽取视频样本中的多帧图像,并提取多帧图像的向量表示;
将多帧图像的向量表示与字向量进行拼接,得到多模信息,多模信息中包含文本特征序列和视频特征序列。
在一些实施方式中,确定模块920,用于:
根据预设条件,对视频样本进行抽取,以得到视频样本对应的多帧图像;其中,预设条件包括预设时间间隔和预设帧数间隔中的至少之一;
分别对多帧图像中的各帧图像进行向量提取,以得到多帧图像的向量表示。
在一些实施方式中,确定模块920,还用于:
根据视频样本的属性,确定视频样本对应的预设条件;
其中,视频样本的属性包括视频样本时长、视频样本帧率和视频样本分辨率中的至少之一。
在一些实施方式中,与视频样本相关的文本样本包括视频样本的字幕、标题、摘要、文本互动信息、以及语音互动信息对应的文本信息中的至少之一。
在一些实施方式中,至少2个任务包括视频分类、视频标签抽取、视频字幕提取、视频标题提取、视频内容提取和视频互动信息提取中的至少之一。
本公开实施例公开一种视频推荐装置,图11是根据本公开实施例的视频推荐装置1100,包括:
第二输入模块1110,用于将待推荐任务输入训练完成的视频推荐模型,待推荐任务包括待推荐视频和与待推荐视频相关的文本信息;训练完成的视频推荐模型支持至少2个任务;
推荐模块1120,用于由训练完成的视频推荐模型对待推荐任务进行视频推荐,以得到针对至少2个任务的视频推荐结果;其中,训练完成的视频推荐模型通过任一方法训练得到。
在一些实施方式中,推荐模块1120,用于:
训练完成的视频推荐模型利用待推荐视频和文本信息,确定待推荐任务的多模信息;
对待推荐任务的多模信息进行编码,以得到待推荐任务的特征序列;
利用特征序列对待推荐任务进行视频推荐。
在一些实施方式中,推荐模块1120,用于:
确定文本信息的字向量;
抽取待推荐视频中的多帧图像,并提取多帧图像的向量表示;
将多帧图像的向量表示与字向量进行拼接,得到多模信息,多模信息中包含文本特征序列和视频特征序列。
在一些实施方式中,推荐模块1120,用于:
根据预设条件,对待推荐视频进行抽取,以得到待推荐视频对应的多帧图像;其中,预设条件包括预设时间间隔和预设帧数间隔中的至少之一;
分别对多帧图像中的各帧图像进行向量提取,以得到多帧图像的向量表示。
在一些实施方式中,推荐模块1120,还用于:
根据待推荐视频的属性,确定待推荐视频对应的预设条件;
其中,待推荐视频的属性包括待推荐视频时长、待推荐视频帧率和待推荐视频分辨率中的至少之一。
在一些实施方式中,与待推荐视频相关的文本信息包括待推荐视频的字幕、标题、文本互动信息、以及语音互动信息对应的文本信息中的至少之一。
在一些实施方式中,其中,至少2个任务包括视频分类、视频标签抽取、视频字幕提取、视频标题提取、视频内容提取和视频互动信息提取中的至少之一。
本公开实施例的装置的各模块、子模块的具体功能和示例的描述,可以参见上述方法实施例中对应步骤的相关描述,在此不再赘述。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图12示出了可以用来实施本公开的实施例的示例电子设备1200的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图12所示,设备1200包括计算单元1201,其可以根据存储在只读存储器(ROM)1202中的计算机程序或者从存储单元1208加载到随机访问存储器(RAM)1203中的计算机程序,来执行各种适当的动作和处理。在RAM 1203中,还可存储设备1200操作所需的各种程序和数据。计算单元1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。
设备1200中的多个部件连接至I/O接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许设备1200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如视频推荐模型的训练方法、视频推荐方法。例如,在一些实施例中,视频推荐模型的训练方法、视频推荐方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1202和/或通信单元1209而被载入和/或安装到设备1200上。当计算机程序加载到RAM 1203并由计算单元1201执行时,可以执行上文描述的视频推荐模型的训练方法、视频推荐方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行视频推荐模型的训练方法、视频推荐方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种视频推荐模型的训练方法,包括:
将训练样本输入待训练的视频推荐模型,所述训练样本包括视频样本和与所述视频样本相关的文本样本;所述待训练的视频推荐模型支持至少2个任务;
在所述待训练的视频推荐模型中利用所述视频样本和所述文本样本,确定所述训练样本的多模信息;对所述训练样本的多模信息进行编码,以得到所述训练样本的特征序列;所述多模信息根据所述文本样本的字向量和所述视频样本中多帧图像的向量表示拼接得到,所述多模信息中包含文本特征序列和视频特征序列;以及,
利用所述训练样本的特征序列对所述待训练的视频推荐模型进行训练;训练过程中,在所述至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对所述任一任务进行训练,所述N为大于1的整数,不同所述任务对应的所述N相同或不同;直至所述至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
2.根据权利要求1所述的方法,还包括,训练过程中,在所述至少2个任务中的任一任务不收敛的情况下,在每次迭代过程中针对所述任一任务进行训练。
3.根据权利要求2所述的方法,其中,所述在所述至少2个任务中的任一任务不收敛的情况下,在每次迭代过程中针对所述任一任务进行训练;以及在所述任一任务收敛的情况下,每执行N次迭代、针对所述任一任务进行训练,包括:
为所述任一任务设置训练启动标签,在所述任一任务不收敛的情况下,将所述训练启动标签的值设置为开启;
在所述任一任务收敛的情况下,将所述训练启动标签的值设置为关闭;并为所述任一任务设置计数器,所述计数器用于记录所述训练启动标签的值被设置为关闭后所经历的迭代次数;
在每次迭代过程中,在所述任一任务的训练启动标签的值为开启的情况下,针对所述任一任务进行训练;在所述任一任务的训练启动标签的值为关闭、并且所述计数器记录的次数等于或大于所述N的情况下,针对所述任一任务进行训练。
4.根据权利要求3所述的方法,还包括:
在每次迭代过程中,在所述任一任务的训练启动标签的值为关闭、并且所述计数器记录的次数小于所述N的情况下,将所述任一任务的计数器的计数值增加1。
5.根据权利要求3或4所述的方法,在所述任一任务的训练启动标签的值为关闭、并且所述计数器记录的次数等于或大于所述N的情况下,还包括:
将所述任一任务的计数器的计数值恢复为初始值。
6.根据权利要求5所述的方法,其中,在所述确定所述训练样本的多模信息之前,还包括:
确定所述文本样本的字向量;
抽取所述视频样本中的多帧图像,并提取所述多帧图像的向量表示。
7.根据权利要求6所述的方法,其中,所述抽取所述视频样本中的多帧图像,并提取所述多帧图像的向量表示,包括:
根据预设条件,对所述视频样本进行抽取,以得到所述视频样本对应的多帧图像;其中,所述预设条件包括预设时间间隔和预设帧数间隔中的至少之一;
分别对所述多帧图像中的各帧图像进行向量提取,以得到所述多帧图像的向量表示。
8.根据权利要求7所述的方法,还包括:
根据所述视频样本的属性,确定所述视频样本对应的所述预设条件;
其中,所述视频样本的属性包括视频样本时长、视频样本帧率和视频样本分辨率中的至少之一。
9.根据权利要求8所述的方法,其中,所述与所述视频样本相关的文本样本包括所述视频样本的字幕、标题、摘要、文本互动信息、以及语音互动信息对应的文本信息中的至少之一。
10.根据权利要求9所述的方法,其中,所述至少2个任务包括视频分类、视频标签抽取、视频字幕提取、视频标题提取、视频内容提取和视频互动信息提取中的至少之一。
11.一种视频推荐方法,包括:
将待推荐任务输入训练完成的视频推荐模型,所述待推荐任务包括待推荐视频和与所述待推荐视频相关的文本信息;所述训练完成的视频推荐模型支持至少2个任务;
由所述训练完成的视频推荐模型对所述待推荐任务进行视频推荐,以得到针对所述至少2个任务的视频推荐结果;
其中,所述训练完成的视频推荐模型通过权利要求1-10中任一所述的方法训练得到。
12.根据权利要求11所述的方法,其中,所述由所述训练完成的视频推荐模型对所述待推荐任务进行视频推荐,包括:
由所述训练完成的视频推荐模型利用所述待推荐视频和所述文本信息,确定所述待推荐任务的多模信息;所述多模信息根据所述文本信息的字向量和所述待推荐视频中多帧图像的向量表示拼接得到,所述多模信息中包含文本特征序列和视频特征序列;
对所述待推荐任务的多模信息进行编码,以得到所述待推荐任务的特征序列;
利用所述特征序列对所述待推荐任务进行视频推荐。
13.根据权利要求12所述的方法,其中,在所述确定所述待推荐任务的多模信息之前,还包括:
确定所述文本信息的字向量;
抽取所述待推荐视频中的多帧图像,并提取所述多帧图像的向量表示。
14.根据权利要求13所述的方法,其中,所述抽取所述待推荐视频中的多帧图像,并提取所述多帧图像的向量表示,包括:
根据预设条件,对所述待推荐视频进行抽取,以得到所述待推荐视频对应的多帧图像;其中,所述预设条件包括预设时间间隔和预设帧数间隔中的至少之一;
分别对所述多帧图像中的各帧图像进行向量提取,以得到所述多帧图像的向量表示。
15.根据权利要求14所述的方法,还包括:
根据所述待推荐视频的属性,确定所述待推荐视频对应的预设条件;
其中,所述待推荐视频的属性包括待推荐视频时长、待推荐视频帧率和待推荐视频分辨率中的至少之一。
16.根据权利要求15所述的方法,其中,所述与所述待推荐视频相关的文本信息包括所述待推荐视频的字幕、标题、文本互动信息、以及语音互动信息对应的文本信息中的至少之一。
17.根据权利要求16所述的方法,其中,所述至少2个任务包括视频分类、视频标签抽取、视频字幕提取、视频标题提取、视频内容提取和视频互动信息提取中的至少之一。
18.一种视频推荐模型的训练装置,包括:
第一输入模块,用于将训练样本输入待训练的视频推荐模型,所述训练样本包括视频样本和与所述视频样本相关的文本样本;所述待训练的视频推荐模型支持至少2个任务;
确定模块,用于在所述待训练的视频推荐模型中利用所述视频样本和所述文本样本,确定所述训练样本的多模信息;对所述训练样本的多模信息进行编码,以得到所述训练样本的特征序列;所述多模信息根据所述文本样本的字向量和所述视频样本中多帧图像的向量表示拼接得到,所述多模信息中包含文本特征序列和视频特征序列;以及,
训练模块,用于利用所述训练样本的特征序列对所述待训练的视频推荐模型进行训练;训练过程中,在所述至少2个任务中的任一任务收敛的情况下,每执行N次迭代、针对所述任一任务进行训练,所述N为大于1的整数,不同所述任务对应的所述N相同或不同;直至所述至少2个任务均收敛的情况下,得到训练完成的视频推荐模型。
19.一种视频推荐装置,包括:
第二输入模块,用于将待推荐任务输入训练完成的视频推荐模型,所述待推荐任务包括待推荐视频和与所述待推荐视频相关的文本信息;所述训练完成的视频推荐模型支持至少2个任务;
推荐模块,用于由所述训练完成的视频推荐模型对所述待推荐任务进行视频推荐,以得到针对所述至少2个任务的视频推荐结果;
其中,所述训练完成的视频推荐模型通过权利要求18所述的装置训练得到。
20.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10或11-17中任一项所述的方法。
21.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-10或11-17中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310287017.9A CN116486195B (zh) | 2023-03-22 | 2023-03-22 | 视频推荐模型的训练方法、视频推荐方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310287017.9A CN116486195B (zh) | 2023-03-22 | 2023-03-22 | 视频推荐模型的训练方法、视频推荐方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116486195A CN116486195A (zh) | 2023-07-25 |
CN116486195B true CN116486195B (zh) | 2024-04-16 |
Family
ID=87216113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310287017.9A Active CN116486195B (zh) | 2023-03-22 | 2023-03-22 | 视频推荐模型的训练方法、视频推荐方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116486195B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111581437A (zh) * | 2020-05-07 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种视频检索方法及装置 |
CN112541122A (zh) * | 2020-12-23 | 2021-03-23 | 北京百度网讯科技有限公司 | 推荐模型的训练方法、装置、电子设备及存储介质 |
CN112905839A (zh) * | 2021-02-10 | 2021-06-04 | 北京有竹居网络技术有限公司 | 模型训练方法、模型使用方法、装置、存储介质及设备 |
CN113360711A (zh) * | 2021-06-29 | 2021-09-07 | 北京百度网讯科技有限公司 | 视频理解任务的模型训练和执行方法、装置、设备及介质 |
CN113378784A (zh) * | 2021-07-01 | 2021-09-10 | 北京百度网讯科技有限公司 | 视频标签推荐模型的训练方法和确定视频标签的方法 |
CN113395708A (zh) * | 2021-07-13 | 2021-09-14 | 东南大学 | 基于全局环境预测的多自主体集中式区域覆盖方法与系统 |
CN113641896A (zh) * | 2021-07-23 | 2021-11-12 | 北京三快在线科技有限公司 | 一种模型训练以及推荐概率预测方法及装置 |
CN114169418A (zh) * | 2021-11-30 | 2022-03-11 | 北京百度网讯科技有限公司 | 标签推荐模型训练方法及装置、标签获取方法及装置 |
CN115062166A (zh) * | 2022-06-30 | 2022-09-16 | 杭州网易云音乐科技有限公司 | 一种推荐模型的训练方法、装置、电子设备及存储介质 |
CN115545114A (zh) * | 2022-10-21 | 2022-12-30 | 微梦创科网络科技(中国)有限公司 | 多任务模型的训练方法、内容推荐方法及装置 |
-
2023
- 2023-03-22 CN CN202310287017.9A patent/CN116486195B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111581437A (zh) * | 2020-05-07 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种视频检索方法及装置 |
CN112541122A (zh) * | 2020-12-23 | 2021-03-23 | 北京百度网讯科技有限公司 | 推荐模型的训练方法、装置、电子设备及存储介质 |
CN112905839A (zh) * | 2021-02-10 | 2021-06-04 | 北京有竹居网络技术有限公司 | 模型训练方法、模型使用方法、装置、存储介质及设备 |
CN113360711A (zh) * | 2021-06-29 | 2021-09-07 | 北京百度网讯科技有限公司 | 视频理解任务的模型训练和执行方法、装置、设备及介质 |
CN113378784A (zh) * | 2021-07-01 | 2021-09-10 | 北京百度网讯科技有限公司 | 视频标签推荐模型的训练方法和确定视频标签的方法 |
CN113395708A (zh) * | 2021-07-13 | 2021-09-14 | 东南大学 | 基于全局环境预测的多自主体集中式区域覆盖方法与系统 |
CN113641896A (zh) * | 2021-07-23 | 2021-11-12 | 北京三快在线科技有限公司 | 一种模型训练以及推荐概率预测方法及装置 |
CN114169418A (zh) * | 2021-11-30 | 2022-03-11 | 北京百度网讯科技有限公司 | 标签推荐模型训练方法及装置、标签获取方法及装置 |
CN115062166A (zh) * | 2022-06-30 | 2022-09-16 | 杭州网易云音乐科技有限公司 | 一种推荐模型的训练方法、装置、电子设备及存储介质 |
CN115545114A (zh) * | 2022-10-21 | 2022-12-30 | 微梦创科网络科技(中国)有限公司 | 多任务模型的训练方法、内容推荐方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116486195A (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113378784B (zh) | 视频标签推荐模型的训练方法和确定视频标签的方法 | |
US11436863B2 (en) | Method and apparatus for outputting data | |
US11023716B2 (en) | Method and device for generating stickers | |
CN109740018B (zh) | 用于生成视频标签模型的方法和装置 | |
CN112559800B (zh) | 用于处理视频的方法、装置、电子设备、介质和产品 | |
US11164004B2 (en) | Keyframe scheduling method and apparatus, electronic device, program and medium | |
CN113360700B (zh) | 图文检索模型的训练和图文检索方法、装置、设备和介质 | |
CN111368551B (zh) | 一种确定事件主体的方法和装置 | |
CN113378855A (zh) | 用于处理多任务的方法、相关装置及计算机程序产品 | |
CN113254712B (zh) | 视频匹配方法、视频处理方法、装置、电子设备及介质 | |
CN116486195B (zh) | 视频推荐模型的训练方法、视频推荐方法和装置 | |
CN115098729A (zh) | 视频处理方法、样本生成方法、模型训练方法及装置 | |
CN113873323B (zh) | 视频播放方法、装置、电子设备和介质 | |
CN112651449B (zh) | 确定视频的内容特征的方法、装置、电子设备及存储介质 | |
CN113779934B (zh) | 多模态信息提取方法、装置、设备及计算机可读存储介质 | |
CN115496734A (zh) | 视频内容的质量评价方法、网络训练方法和装置 | |
CN113688938A (zh) | 确定对象情感的方法、训练情感分类模型的方法及装置 | |
CN113760162A (zh) | 用于显示信息的方法、装置、设备以及存储介质 | |
CN113705548B (zh) | 题目类型识别方法和装置 | |
CN116778006B (zh) | 图片编码器的建模方法、装置、电子设备及存储介质 | |
CN113569092B (zh) | 一种视频分类方法、装置、电子设备及存储介质 | |
CN114501112B (zh) | 用于生成视频笔记的方法、装置、设备、介质和产品 | |
CN115482809B (zh) | 关键词检索方法、装置、电子设备以及存储介质 | |
CN114664307A (zh) | 语音识别方法、装置、电子设备和存储介质 | |
CN117275460A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |