CN117036833A - 一种视频分类方法、装置、设备和计算机可读存储介质 - Google Patents

一种视频分类方法、装置、设备和计算机可读存储介质 Download PDF

Info

Publication number
CN117036833A
CN117036833A CN202311296302.3A CN202311296302A CN117036833A CN 117036833 A CN117036833 A CN 117036833A CN 202311296302 A CN202311296302 A CN 202311296302A CN 117036833 A CN117036833 A CN 117036833A
Authority
CN
China
Prior art keywords
mode
data
video
features
layer
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.)
Granted
Application number
CN202311296302.3A
Other languages
English (en)
Other versions
CN117036833B (zh
Inventor
胡克坤
董刚
曹其春
杨宏斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202311296302.3A priority Critical patent/CN117036833B/zh
Publication of CN117036833A publication Critical patent/CN117036833A/zh
Application granted granted Critical
Publication of CN117036833B publication Critical patent/CN117036833B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及多模态数据分析技术领域,公开了一种视频分类方法、装置、设备和计算机可读存储介质,按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征。利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;利用预训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别,提高了视频分类的准确度。

Description

一种视频分类方法、装置、设备和计算机可读存储介质
技术领域
本发明涉及多模态数据分析技术领域,特别是涉及一种视频分类方法、装置、设备和计算机可读存储介质。
背景技术
随着互联网技术的快速普及、多媒体技术的蓬勃发展和社交网络的日新月异,“视频社交”作为一种新型社交形式,正快速流行。与传统的社交网络不同,视频社交网络中的社交形式不再拘泥于文本和图片,还可以通过发布视频甚至直播。
视频是一种包含丰富信息的多模态数据,常见的有视觉(visual)模态、音频(acoustic)模态和文本(textual)模态等。目前的视频分类方法可分为传统视频分类方法和深度神经网络方法。得益于深度神经网络的快速发展,卷积神经网络(ConvolutionalNeural Networks,CNN)在静态的图像识别、分割、检测、语义理解和检索等方面取得令人惊叹的性能,国内外研究者开始将CNN等深度网络应用到视频分类任务中。然而,这些传统视频分类方法和基于CNN的视频分类方法仅利用了视频的视觉特征,忽略了音频和文本特征,导致学习到的视频嵌入式表示不准确,影响视频分类的准确性。
可见,如何提升视频分类的准确性,是本领域技术人员需要解决的问题。
发明内容
本发明实施例的目的是提供一种视频分类方法、装置、设备和计算机可读存储介质,可以解决无法准确实现视频分类的问题。
为解决上述技术问题,本发明实施例提供一种视频分类方法,包括:
按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;
利用单模态编码器对各所述单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征;
利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;
基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;
利用所述预训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
一方面,所述按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据包括:
按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征;其中,所述模态包括视觉模态、音频模态和/或文本模态;
对所述单模态特征进行序列化和位置编码,以得到单模态序列化数据。
一方面,所述按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征包括:
按照设定的时间间距从所述视频样本中提取出图片帧;
将各所述图片帧剪裁成设定尺寸,利用残差神经网络对剪裁后的各图片帧进行特征提取,以得到视觉模态对应的视觉特征。
一方面,所述按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征包括:
从所述视频样本中分离出音频模态数据;
按照时间维度将所述音频模态数据划分为多个音频段;
利用训练好的音频神经网络对多个所述音频段进行特征提取,以得到音频模态对应的音频特征。
一方面,所述按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征包括:
提取所述视频样本中的文本数据;
按照所述文本数据对应的语言类型,从所述文本数据中清洗掉与所述语言类型不匹配的字符以及停用词;
将清洗后的各文本数据按照设定的文本长度进行对齐处理,以得到文本模态对应的文本特征。
一方面,所述对所述单模态特征进行序列化和位置编码,以得到单模态序列化数据包括:
按照时间顺序将所述单模态特征划分为多个分片数据;
根据多个所述分片数据对应的时间,设置多个所述分片数据各自的位置编码;
基于每种模态下的分片数据及其对应的位置编码,构建出单模态序列化数据。
一方面,所述利用单模态编码器对各所述单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征包括:
基于目标模态下当前编码层的输入特征以及待学习的参数矩阵,构建出输入参数;其中,所述输入参数包括查询、键和值;第一个编码层的输入特征为所述单模态序列化数据;每种模态有其对应的一个单模态编码器;所述目标模态为所有模态中的任意一种模态;
利用多头自注意力机制对所述输入参数进行相关性分析,以得到新的单模态序列化数据;
对所述新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征;
将所述当前编码层的输出特征作为下一个编码层的输入特征,直至所述当前编码层为最后一个编码层,则将最后一个编码层的输出特征作为所述目标模态的编码特征。
一方面,所述对所述新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征包括:
对所述新的单模态序列化数据以及所述输入特征进行残差连接和正则化处理,以得到缩放后的单模态序列化数据;
对所述缩放后的单模态序列化数据进行线性变换,以得到线性化数据;
将所述缩放后的单模态序列化数据和所述线性化数据进行残差连接和正则化处理,以得到当前编码层的输出特征。
一方面,所述利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征包括:
选取任意一种模态的编码特征作为主模态数据,剩余模态的编码特征作为辅模态数据;
基于所述主模态数据和所述辅模态数据构建多模态输入参数;
对所述多模态输入参数进行相关性分析,以得到共性特征;
对所述多模态输入参数进行差异性分析,以得到个性特征;
将所述共性特征和所述个性特征进行融合,以得到多模态融合特征。
一方面,所述多模态编码融合器包括与模态种类匹配的协同编码器,每种主模态有其对应的一个协同编码器,各所述协同编码器包括主协同编码器和辅协同编码器;
相应的,所述基于所述主模态数据和所述辅模态数据构建多模态输入参数包括:
将线性变换后的主模态数据作为所述主协同编码器的多模态查询;
将线性变换后的辅模态数据作为所述主协同编码器的多模态键和多模态值;
将线性变换后的辅模态数据作为所述辅协同编码器的多模态查询;
将线性变换后的主模态数据作为所述辅协同编码器的多模态键和多模态值。
一方面,所述对所述多模态输入参数进行相关性分析,以得到共性特征包括:
利用多头自注意力机制对当前协同编码层的协同输入参数进行分析,以得到多模态关联特征;其中,每个协同编码层包括与模态种类的数量匹配的分支,每个分支有其输出的共性特征和个性特征;当前协同编码层的协同输入参数为上一个协同编码层输出的共性特征和个性特征进行拼接和线性变化得到的协同输出特征;第一个协同编码层的协同输入参数为所述多模态输入参数;
对所述多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征。
一方面,所述对所述多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征包括:
对所述多模态关联特征以及所述当前协同编码层的协同输入参数包含的多模态查询进行残差连接和正则化处理,以得到多模态序列化数据;
对所述多模态序列化数据进行线性变换,以得到多模态线性化数据;
将所述多模态序列化数据和所述多模态线性化数据进行残差连接和正则化处理,以得到所述当前协同编码层输出的共性特征。
一方面,所述对所述多模态输入参数进行差异性分析,以得到个性特征包括:
将所述当前协同编码层的协同输入参数包含的值与所述多模态关联特征相减,以得到区别特征;其中,第一个协同编码层的协同输入参数为所述多模态输入参数;
对所述区别特征进行规范化处理,以得到所述当前协同编码层输出的个性特征。
一方面,所述对所述区别特征进行规范化处理,以得到所述当前协同编码层输出的个性特征包括:
对所述区别特征进行正则化处理,以得到序列化区别数据;
对所述序列化区别数据进行线性变换,以得到线性区别数据;
将所述序列化区别数据和所述线性区别数据进行残差连接和正则化处理,以得到当前协同编码层输出的个性特征。
一方面,所述将所述共性特征和所述个性特征进行融合,以得到多模态融合特征包括:
将最后一个协同编码层输出的所述共性特征和所述个性特征进行拼接,以得到拼接特征;
对所述拼接特征进行线性变化,以得到协同输出特征;
利用单模态编码器对所述协同输出特征进行相关性分析,以得到多模态输出特征;
将各所述多模态输出特征进行拼接,以得到多模态拼接特征;
利用单模态编码器对所述多模态拼接特征进行相关性分析,以得到多模态融合特征。
一方面,所述基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型包括:
基于所述单模态序列化数据对所述多模态融合特征进行解码,以得到每种模态对应的重构特征;
利用所述单模态序列化数据和所述重构特征对所述视频分类模型中待学习的参数矩阵进行参数调整,以得到预训练好的视频分类模型。
一方面,所述基于所述单模态序列化数据对所述多模态融合特征进行解码,以得到每种模态对应的重构特征包括:
根据目标模态下当前解码层的待解码特征以及当前解码层的第一参数矩阵,构建出初始待解码参数;其中,第一个解码层的待解码特征为所述单模态序列化数据;每种模态有其对应的一个单模态解码器;所述目标模态为所有模态中的任意一种模态;
利用多头自注意力机制以及掩码矩阵对所述初始待解码参数进行分析,以得到第一解码参数;
对所述第一解码参数以及所述当前解码层的待解码特征进行残差连接和正则化处理,以得到当前解码层的第一输出特征;
根据所述第一输出特征、所述多模态融合特征以及当前解码层的第二参数矩阵,构建出目标待解码参数;
利用多头自注意力机制对所述目标待解码参数进行分析,以得到第二解码参数;
对所述第二解码参数进行规范化处理,以得到当前解码层输出的解码特征;
将所述当前解码层输出的解码特征作为下一个解码层的待解码特征,直至所述当前解码层为最后一个解码层,则将最后一个解码层输出的解码特征作为目标模态下的重构特征。
一方面,在所述基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型之后,还包括:
利用分类器对所述多模态融合特征进行分析,以得到预测类别;
基于所述预测类别以及所述视频样本对应的实际样本类别,对所述预训练好的视频分类模型进行参数调整,以得到训练好的视频分类模型。
一方面,还包括:
利用训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
本发明实施例还提供了一种视频分类装置,包括提取单元、单模态分析单元、多模态分析单元、训练单元和分类单元;
所述提取单元,用于按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;
所述单模态分析单元,用于利用单模态编码器对各所述单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征;
所述多模态分析单元,用于利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;
所述训练单元,用于基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;
所述分类单元,用于利用所述预训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
一方面,所述提取单元包括特征提取子单元和序列化子单元;
所述特征提取子单元,用于按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征;其中,所述模态包括视觉模态、音频模态和/或文本模态;
所述序列化子单元,用于对所述单模态特征进行序列化和位置编码,以得到单模态序列化数据。
一方面,所述特征提取子单元用于按照设定的时间间距从所述视频样本中提取出图片帧;
将各所述图片帧剪裁成设定尺寸,利用残差神经网络对剪裁后的各图片帧进行特征提取,以得到视觉模态对应的视觉特征。
一方面,所述特征提取子单元用于从所述视频样本中分离出音频模态数据;
按照时间维度将所述音频模态数据划分为多个音频段;
利用训练好的音频神经网络对多个所述音频段进行特征提取,以得到音频模态对应的音频特征。
一方面,所述特征提取子单元用于提取所述视频样本中的文本数据;
按照所述文本数据对应的语言类型,从所述文本数据中清洗掉与所述语言类型不匹配的字符以及停用词;
将清洗后的各文本数据按照设定的文本长度进行对齐处理,以得到文本模态对应的文本特征。
一方面,所述序列化子单元用于按照时间顺序将所述单模态特征划分为多个分片数据;
根据多个所述分片数据对应的时间,设置多个所述分片数据各自的位置编码;
基于每种模态下的分片数据及其对应的位置编码,构建出单模态序列化数据。
一方面,所述单模态分析单元包括构建子单元、分析子单元、规范化子单元和作为子单元;
所述构建子单元,用于基于目标模态下当前编码层的输入特征以及待学习的参数矩阵,构建出输入参数;其中,所述输入参数包括查询、键和值;第一个编码层的输入特征为所述单模态序列化数据;每种模态有其对应的一个单模态编码器;所述目标模态为所有模态中的任意一种模态;
所述分析子单元,用于利用多头自注意力机制对所述输入参数进行相关性分析,以得到新的单模态序列化数据;
所述规范化子单元,用于对所述新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征;
所述作为子单元,用于将所述当前编码层的输出特征作为下一个编码层的输入特征,直至所述当前编码层为最后一个编码层,则将最后一个编码层的输出特征作为所述目标模态的编码特征。
一方面,所述规范化子单元用于对所述新的单模态序列化数据以及所述输入特征进行残差连接和正则化处理,以得到缩放后的单模态序列化数据;
对所述缩放后的单模态序列化数据进行线性变换,以得到线性化数据;
将所述缩放后的单模态序列化数据和所述线性化数据进行残差连接和正则化处理,以得到当前编码层的输出特征。
一方面,所述多模态分析单元包括选取子单元、构建子单元、相关性分析子单元、差异性分析子单元和融合子单元;
所述选取子单元,用于选取任意一种模态的编码特征作为主模态数据,剩余模态的编码特征作为辅模态数据;
所述构建子单元,用于基于所述主模态数据和所述辅模态数据构建多模态输入参数;
所述相关性分析子单元,用于对所述多模态输入参数进行相关性分析,以得到共性特征;
所述差异性分析子单元,用于对所述多模态输入参数进行差异性分析,以得到个性特征;
所述融合子单元,用于将所述共性特征和所述个性特征进行融合,以得到多模态融合特征。
一方面,所述多模态编码融合器包括与模态种类匹配的协同编码器,每种主模态有其对应的一个协同编码器,各所述协同编码器包括主协同编码器和辅协同编码器;
相应的,所述构建子单元用于将线性变换后的主模态数据作为所述主协同编码器的多模态查询;
将线性变换后的辅模态数据作为所述主协同编码器的多模态键和多模态值;
将线性变换后的辅模态数据作为所述辅协同编码器的多模态查询;
将线性变换后的主模态数据作为所述辅协同编码器的多模态键和多模态值。
一方面,所述相关性分析子单元用于利用多头自注意力机制对当前协同编码层的协同输入参数进行分析,以得到多模态关联特征;其中,每个协同编码层包括与模态种类的数量匹配的分支,每个分支有其输出的共性特征和个性特征;当前协同编码层的协同输入参数为上一个协同编码层输出的共性特征和个性特征进行拼接和线性变化得到的协同输出特征;第一个协同编码层的协同输入参数为所述多模态输入参数;
对所述多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征。
一方面,所述相关性分析子单元用于对所述多模态关联特征以及所述当前协同编码层的协同输入参数包含的多模态查询进行残差连接和正则化处理,以得到多模态序列化数据;
对所述多模态序列化数据进行线性变换,以得到多模态线性化数据;
将所述多模态序列化数据和所述多模态线性化数据进行残差连接和正则化处理,以得到所述当前协同编码层输出的共性特征。
一方面,所述差异性分析子单元用于将所述当前协同编码层的协同输入参数包含的值与所述多模态关联特征相减,以得到区别特征;其中,第一个协同编码层的协同输入参数为所述多模态输入参数;
对所述区别特征进行规范化处理,以得到所述当前协同编码层输出的个性特征。
一方面,所述差异性分析子单元用于对所述区别特征进行正则化处理,以得到序列化区别数据;
对所述序列化区别数据进行线性变换,以得到线性区别数据;
将所述序列化区别数据和所述线性区别数据进行残差连接和正则化处理,以得到当前协同编码层输出的个性特征。
一方面,所述融合子单元用于将最后一个协同编码层输出的所述共性特征和所述个性特征进行拼接,以得到拼接特征;
对所述拼接特征进行线性变化,以得到协同输出特征;
利用单模态编码器对所述协同输出特征进行相关性分析,以得到多模态输出特征;
将各所述多模态输出特征进行拼接,以得到多模态拼接特征;
利用单模态编码器对所述多模态拼接特征进行相关性分析,以得到多模态融合特征。
一方面,所述训练单元包括解码子单元和调整子单元;
所述解码子单元,用于基于所述单模态序列化数据对所述多模态融合特征进行解码,以得到每种模态对应的重构特征;
所述调整子单元,用于利用所述单模态序列化数据和所述重构特征对所述视频分类模型中待学习的参数矩阵进行参数调整,以得到预训练好的视频分类模型。
一方面,所述解码子单元用于根据目标模态下当前解码层的待解码特征以及当前解码层的第一参数矩阵,构建出初始待解码参数;其中,第一个解码层的待解码特征为所述单模态序列化数据;每种模态有其对应的一个单模态解码器;所述目标模态为所有模态中的任意一种模态;
利用多头自注意力机制以及掩码矩阵对所述初始待解码参数进行分析,以得到第一解码参数;
对所述第一解码参数以及所述当前解码层的待解码特征进行残差连接和正则化处理,以得到当前解码层的第一输出特征;
根据所述第一输出特征、所述多模态融合特征以及当前解码层的第二参数矩阵,构建出目标待解码参数;
利用多头自注意力机制对所述目标待解码参数进行分析,以得到第二解码参数;
对所述第二解码参数进行规范化处理,以得到当前解码层输出的解码特征;
将所述当前解码层输出的解码特征作为下一个解码层的待解码特征,直至所述当前解码层为最后一个解码层,则将最后一个解码层输出的解码特征作为目标模态下的重构特征。
一方面,还包括预测单元和调整单元;
所述预测单元,用于利用分类器对所述多模态融合特征进行分析,以得到预测类别;
所述调整单元,用于基于所述预测类别以及所述视频样本对应的实际样本类别,对所述预训练好的视频分类模型进行参数调整,以得到训练好的视频分类模型。
一方面,所述分析单元用于利用训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
本发明实施例还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述视频分类方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述视频分类方法的步骤。
由上述技术方案可以看出,按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征。每种模态的编码特征用于表征视频样本在该模态下的嵌入式表示。为了充分挖掘不同模态下编码特征之间的关联性,可以利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;利用预训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。本发明的有益效果在于,在获取视频样本在不同模态下各自的编码特征的基础上,综合考虑视频样本在不同模态间的共性和个性特征以及它们之间的复杂交互关系,学习到更加准确的多模态融合特征,能极大提高视频多模态特征建模的准确度,进而提高视频分类的准确度。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种视频在不同模态下存在的共性特征和个性特征的示意图;
图2为本发明实施例提供的一种视频分类方法的流程图;
图3为本发明实施例提供的一种对单模态序列化数据进行相关性分析的方法的流程图;
图4为本发明实施例提供的一种对编码特征进行交叉分析的方法的流程图;
图5为本发明实施例提供的一种协同编码器的结构示意图;
图6为本发明实施例提供的一种对多模态融合特征进行解码的方法的流程图;
图7为本发明实施例提供的一种单模态解码器的结构示意图;
图8为本发明实施例提供的一种单模态编码器、多模态编码融合器以及单模态解码器的连接关系示意图;
图9为本发明实施例提供的一种视频分类装置的结构示意图;
图10为本发明实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”,以及与“包括”和“具有”相关的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
常见的视频社交软件有很多,用户在这些软件上观看、评论和分享视频,同时还可与视频创作者沟通交流,极大地丰富了用户的精神文化生活。但日渐繁杂的视频种类和不断增长的视频数量,在给用户带来更多选择的同时,也产生严重的信息过载问题,即用户难以在视频海洋中找到自己喜欢的内容。为缓解该问题,视频社交平台积极研究视频相关算法帮助人们更加容易地找到感兴趣内容的视频。视频分类方法作为一种可行的实现方式,能自动分析视频所包含的语义信息、理解其内容,对视频进行自动标注、分类和描述,以便于用户能够更快的在视频海洋中找到自己喜欢的内容。
视频是一种包含丰富信息的多模态数据,常见的有视觉模态、音频模态和文本模态等。其中,视觉模态是指构成视频的一系列静态图片帧;音频模态是指视频中包含的所有声音,如语音对话和背景音乐等;文本模态是指描述视频的文本文字,包括视频标题、视频简介、标签、字幕以及用户评论等。在视频的多种模态信息中,不同模态以不同方式刻画同一视频,因而存在冗余特征,即以不同形式共同存在于多个模态中的共性特征,也称模态不变特征。与此同时,每种模态还具备其他模态所没有的个性特征,并且单一模态的信息往往存在噪声且语义不完整。因此,如何充分利用视频不同模态间的共性和个性特征来融合视频多模态信息,以得到更全面的视频嵌入式表示,是提高视频分类准确度的关键和难点所在。
目前的视频分类方法可分为传统视频分类方法和深度神经网络方法。传统视频分类方法通过编码视频局部时空区域内的运动和表观信息来生成视频描述符,然后借助词袋模型等方法获取视频嵌入式表示,并基于这些表示训练分类器。而深度神经网络为视频分类提供新的思路和方法,此类方法的核心思想是从视频中提取一系列关键帧,通过预训练好的深度神经网络模型来生成每图片帧的特征,再汇聚所有帧的特征得到视频特征,作为分类器的输入进行训练和推理。然而,这些方式都仅利用了视频的视觉特征,忽略了音频和文本特征。最近,有学者将自注意力机制(Transformer)从自然语言处理(NaturalLanguage Processing,NLP)领域扩展到视频识别和分类任务中。但是该方法忽视了视频中不同模态间存在的共性和个性特征,学习到的视频嵌入式表示不准确,影响分类性能。
本发明实施例提供了一种视频分类方法、装置、设备和计算机可读存储介质,按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;将视频样本在不同模态下的单模态序列化数据分别输入到各模态所对应的单模态编码器中,分别学习同一模态下数据的局部联系,并将学习到的视频不同模态下的编码特征输入到多模态编码融合器中学习不同模态间的共性和个性特征。
图1为本发明实施例提供的一种视频在不同模态下存在的共性特征和个性特征的示意图,图1中带箭头的虚线用于表示提取共性特征,带箭头的实线表示提取个性特征,图1中是视觉、音频和文本三种模态为例。三个模态之间具有共性特征,图1中采用黑色三角形表示;三个模态有其各自独有的个性特征,图1中采用黑色圆形表示。
将学习到的共性和个性特征进行融合,以得到多模态融合特征。借助自监督学习方法,基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型,能够大大减少对视频样本类别标记数量的依赖度。利用预训练好的视频分类模型对获取的待分类视频进行分析,可以准确的确定出待分类视频所属的类别。
接下来,详细介绍本发明实施例所提供的一种视频分类方法。图2为本发明实施例提供的一种视频分类方法的流程图,该方法包括:
S201:按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据。
在本发明实施例中,主要对视频的视觉模态、音频模态和文本模态这三种模态进行分析。
单模态数据处理规则可以包括每种模态对应的特征提取方式以及单模态数据进行序列化和位置编码的方式。
在实际应用中,可以按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征。
为了便于区分,可以将视觉模态对应的单模态特征称作视觉特征;将音频模态对应的单模态特征称作音频特征;将文本模态对应的单模态特征称作文本特征。
在本发明实施例中,采用基于Transformer设置的单模态编码器对单模态特征进行后续的分析处理,单模态编码器也可以称作Transformer编码器或标准编码器。
单模态编码器识别的是序列化的数据,因此需要将单模态特征转化为序列化数据。在实际应用中,往往采用分片实施序列化,为了区分不同分片之间的顺序,需要对各分片设置位置编码。因此在得到每种模态对应的单模态特征之后,可以对单模态特征进行序列化和位置编码,以得到单模态序列化数据。
S202:利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征。
以视觉模态、音频模态和文本模态这三种模态为例,单模态编码器可以包括三路并行的单模态编码器,采用E-TrmE表示视觉模态对应的编码器,A-TrmE表示音频模态对应的编码器,T-TrmE表示文本模态对应的编码器。
每一路单模态编码器都由L1层Transformer编码器堆叠而成,分别负责学习视频在视觉、音频和文本三种模态下的嵌入式表示。在本发明实施例中,可以将每种模态下最后一个编码层输出的嵌入式表示统称为编码特征。
每一层Transformer编码器包括多头自注意力层、加法-正则化层、全连接层。通过L1层Transformer编码器的层层分析,最终可以得到编码特征,具体实现方式可以参见图3的介绍,在此不再赘述。
S203:利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征。
多模态编码融合器可以划分为多模态编码模块和多模态融合模块。
以三种模态为例,多模态编码模块可以包括三个拼接(concat)函数、三个协同编码器(C-TrmE)和三个单模态编码器。多模态融合模块可以包括一个拼接函数和一个单模态编码器,多模态融合模块可以实现对多模态编码模块的三路输出进行拼接以及相关性分析,从而最终得到多模态融合特征。
每个协同编码器可以包括两路输入,一路输入可以为单模态编码器输出的某一个单模态的编码特征,另一路输入可以为经由拼接函数对剩余单模态的编码特征进行拼接得到的编码特征。
在本发明实施例中,可以将所有模态下的编码特征之间以不同形式共同存在的特征称作共性特征,将每种模态下的编码特征所具备的其他模态所没有的特征称作个性特征。
为了充分挖掘不同模态间编码特征的共性和个性特征,每个协同编码器可以包括主协同编码器和辅协同编码器。主协同编码器和辅协同编码器均可以提取出个性特征和共性特性。主协同编码器和辅协同编码器的架构相同,只是输入的数据有所差异,关于输入数据的差异以及提取共性和个性特征的具体实现过程可以参见图4的介绍,在此不再赘述。
S204:基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型。
单模态序列化数据包括每种模态各自对应的序列化数据。模型训练阶段输入的数据类型需要统一,因此需要先对多模态融合特征进行解码,从而得到每种模态所对应的重构特征。
利用每种模态下的单模态序列化数据及其重构特征,可以实现对视频分类模型的训练,从而得到预训练好的视频分类模型。
S205:利用预训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。
预训练好的视频分类模型可以实现视频的准确分类,因此在获取到待分类视频时,可以将待分类视频输入到预训练好的视频分类模型中,视频分类模型会输出待分类视频所属的类别。
由上述技术方案可以看出,按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征。每种模态的编码特征用于表征视频样本在该模态下的嵌入式表示。为了充分挖掘不同模态下编码特征之间的关联性,可以利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;利用预训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。本发明的有益效果在于,在获取视频样本在不同模态下各自的编码特征的基础上,综合考虑视频样本在不同模态间的共性和个性特征以及它们之间的复杂交互关系,学习到更加准确的多模态融合特征,能极大提高视频多模态特征建模的准确度,进而提高视频分类的准确度。
结合上述介绍可知,视频包括多种模态,每种模态有其各自对应的特征提取方式。假设,视频样本包含的视频总数为n,视频集合V={v 1v 2,……,v n}。对于每个视频,它都包含视觉模态e、音频模态a和文本模态t共三种模态M={eat}的信息,这些信息经由不同特征提取方法分别得到视觉特征矩阵/>,音频特征矩阵/>以及文本特征矩阵/>
不同模态下数据的编解码处理方式类似,为了便于描述,可以采用m表示任意一种模态,,/>表示特定模态m下的序列长度,/>表示特定模态m下的特征维度。除此之外,部分视频有一个预定义的类别标签,可以采用热独标签向量(one-hot labelvector)/>表示,其中C为类别总数。
以视觉模态为例,可以按照设定的时间间距从视频样本中提取出图片帧;将各图片帧剪裁成设定尺寸,利用残差神经网络对剪裁后的各图片帧进行特征提取,以得到视觉模态对应的视觉特征。
在实际应用中,可以借助一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序(Fast Forward Mpeg,FFmpeg)所构建的FFmpeg工具软件来提取图片帧。
举例说明,可以按照等时间间距采样方式提取k e 帧图片帧,组成关键帧序列,/>,其中,下标i表示视频样本中的第i个视频,下标j表示提取出的第j帧图片帧,f i,j 表示第i个视频中提取出的第j帧图片帧,k e 表示一个视频样本所提取出的图片帧总数,F i 表示从第i个视频中提取出的所有图片帧的集合。
利用在计算机视觉数据集(ImageNet)上预训练好的残差神经网络(ResNet-152)来提取关键帧序列的内容特征。在具体实现中,首先将f i,j 的尺寸随机裁剪至224*224,并输入到ResNet-152进行特征提取,得到一个维的视觉特征向量,d e 可以取2048。因此,每个视频的视觉特征/>是一个k e ×d e 维的视觉特征矩阵,/>的上标e表示视觉模态,下标i表示第i个视频。
以音频模态为例,可以从视频样本中分离出音频模态数据;按照时间维度将音频模态数据划分为多个音频段;利用训练好的音频神经网络对多个音频段进行特征提取,以得到音频模态对应的音频特征。
在实际应用中,可以借助FFmpeg工具软件从视频中分离完整的音频模态数据,按照时间维度将其等分为k a 段,组成音频段序列,/>,利用在ImageNet数据集上预训练好的音频神经网络(SoundNet)提取/>维的音频特征向量,d a 可以取1024。因此,每个视频的音频特征/>是一个k a ×d a 维的音频特征矩阵,/>的上标a表示音频模态,下标i表示第i个视频。
以文本模态为例,可以提取视频样本中的文本数据;按照文本数据对应的语言类型,从文本数据中清洗掉与语言类型不匹配的字符以及停用词;将清洗后的各文本数据按照设定的文本长度进行对齐处理,以得到文本模态对应的文本特征。
视频的文本数据可以包括视频标题、视频简介、标签、字幕以及用户评论等,在本发明实施例中可以主要关注视频标题、视频简介和标签。
在实际应用中,首先对视频的文本数据T i 实施清洗,以文本数据为英语为例,可以去除非英语字符和停用词,并将文本长度对齐为。对于单词数n w 大于k t 的文本进行截断,仅保留前k t 个单词;而对于单词数n w 小于k t 的文本,用k t -n w 个“Null”填充。清洗后的文本数据T i 可表示为/>,其中,对于非“Null”单词,本发明实施例可以借助预训练好的词向量(Global Vectors for Word Representation,GloVe)模型生成一个d t =128维的词向量。因此,每个视频的文本特征/>是一个k t ×d t 维的音频特征矩阵,/>的上标t表示文本模态,下标i表示第i个视频。
在得到每种模态下的单模态特征之后,可以按照时间顺序将单模态特征划分为多个分片数据;根据多个分片数据对应的时间,设置多个分片数据各自的位置编码;基于每种模态下的分片数据及其对应的位置编码,构建出单模态序列化数据。
在具体实现中,可以对每种模态的单模态特征,通过分片实施序列化,将视频v i 模态为m的特征矩阵划分为τ个按时间有序、且尺寸为/>的分片数据(patch)/>(/>)。采用热独编码的时间τ作为相应patch的位置编码/>,则模态m下单模态序列化数据可通过如下公式(1)计算得到,/>(1);
其中,表示第i个视频在模态m下的单模态序列化数据,上标0表示单模态编码器的初始输入,下标s表示单模态,/>表示第i个视频在模态m下的第j个分片数据,表示待学习的参数矩阵。初始状态下,可以预先设定好待学习的参数矩阵的具体取值,在模型训练阶段可以对待学习的参数矩阵的参数进行调整。在实际应用中,d m 的取值可以相同,也可以不同,基于实际需求设置即可,在此不做限定。
因为单模态编码器由L1层Transformer编码器堆叠而成,每一层编码器的输出特征即为下一层编码器的输入特征,对于第一个编码层其输入特征为单模态序列化数据,因此中上标0可以用于表示单模态编码器的初始输入,也即单模态编码器中第一层编码器的输入。
随着编码器每一层输出的变化,可以对的上标进行调整,例如第l层编码器的输入表示为/>,其输出表示为/>
通过上述介绍的特征提取方式可以得到每种模态下的单模态特征,对各单模态特征进行序列化和位置编码,从而构建出单模态序列化数据,以便于利用单模态编码器对单模态序列化数据进行相关性分析。
图3为本发明实施例提供的一种对单模态序列化数据进行相关性分析的方法的流程图,该方法包括:
S301:基于目标模态下当前编码层的输入特征以及待学习的参数矩阵,构建出输入参数。
以三种模态为例,相应的单模态序列化数据包含三种模态各自对应的序列化数据,为了实现对这三种单模态序列化数据的处理,可以设置三路并行的单模态编码器,分别为E-TrmE,A-TrmE和T-TrmE。每一路编码器都由L1层Transformer编码器堆叠而成,分别负责学习视频在视觉、音频和文本三种模态下的嵌入式表示。每一层Transformer编码器可以看作一个编码层。
因不同模态的Transformer编码器工作原理相同,以下介绍不区分具体是哪一路Transformer编码器,统一采用符号“m”表示任意一种模态。为了便于描述,可以将任意一种模态称作目标模态,目标模态可以为视觉模态、音频模态或文本模态。
对于一路Transformer编码器而言,第一个编码层的输入特征为单模态序列化数据。该路Transformer编码器用于对视觉模态下的数据进行编码时,输入的单模态序列化数据为视觉模态的序列化数据;该路Transformer编码器用于对音频模态下的数据进行编码时,输入的单模态序列化数据为音频模态的序列化数据;该路Transformer编码器用于对文本模态下的数据进行编码时,输入的单模态序列化数据为文本模态的序列化数据。
每一层编码器的输入参数可以包括查询(Q)、键(K)和值(V)。
以第l层编码器为例,它读入上一层Transformer编码器输出的视频v i 模态为m的隐藏层表示,分别求出多头自注意力层(Multi-Head Attention,MHA)的三个输入参数即查询(Query),键(Key)和值(Value)。
按照如下公式(2)可以计算出输入参数,
(2);/>
其中,表示第l层编码器的查询,/>表示第l层编码器的键,/>表示第l层编码器的值,/>、/>和/>中的下标i表示第i个视频,下标s表示单模态,上标l表示第l层编码器,上标m表示模态为m,/>、/>和/>均为第l层编码器所对应的待学习的参数矩阵。
S302:利用多头自注意力机制对输入参数进行相关性分析,以得到新的单模态序列化数据。
结合上述介绍以第l层编码器为例,在实际应用中可以根据第l层编码器包含的多头自注意力层,计算视频v i 模态为m下的新的单模态序列化数据。
多层自注意力层对应的计算公式(3)如下,
(3);
其中,表示第l层编码器的新的单模态序列化数据,d k 表示/>和/>待学习的参数矩阵的列数。
S303:对新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征。
以第l层编码器为例,对新的单模态序列化数据进行规范化处理过程可以包括基于第l层编码器包含的加法-正则化层、全连接层以及加法-正则化层依次进行处理。
在实际应用中,可以对新的单模态序列化数据以及输入特征进行残差连接和正则化处理,以得到缩放后的单模态序列化数据;对缩放后的单模态序列化数据进行线性变换,以得到线性化数据;将缩放后的单模态序列化数据和线性化数据进行残差连接和正则化处理,以得到当前编码层的输出特征。
结合上述举例,在得到第l层编码器的新的单模态序列化数据之后,可以经由加法-正则化层按照如下公式(4)实施变换,
(4);
其中,表示缩放后的单模态序列化数据,LayerNorm函数用于将每一层神经元的输入转成服从相同的正态分布,用于加快网络模型的收敛。
接着对实施线性变换(Feed Forward Network,FFN)以及残差连接和正则化处理,即按照如下公式(5)处理以获取第l层编码器的输出特征,
(5);
其中,表示第l层编码器的输出特征。FFN由两层全连接层组成,第一层使用激活函数(Relu),第二层不使用激活函数。
S304:将当前编码层的输出特征作为下一个编码层的输入特征,直至当前编码层为最后一个编码层,则将最后一个编码层的输出特征作为目标模态的编码特征。
既是第l层编码器的输出特征,也是第l+1层编码器的输入特征。最后一层编码器的输出特征/>即为模态m的编码特征。
在本发明实施例中,采用三路并行的单模态编码器分别负责学习视频在视觉、音频和文本三种模态下的嵌入式表示,可以充分重视视频包含的视觉、音频和文本三种模态下的信息,为视频分类模型的训练奠定了良好基础。
图4为本发明实施例提供的一种对编码特征进行交叉分析的方法的流程图,该方法包括:
S401:选取任意一种模态的编码特征作为主模态数据,剩余模态的编码特征作为辅模态数据。
多模态编码融合器可以划分为多模态编码模块和多模态融合模块。
多模态编码模块可以由L2层多模态Transformer编码器堆叠而成,每层多模态Transformer编码器可以由三个concat函数、三个协同编码器(C-TrmE)和三个单模态编码器(E-TrmE、A-TrmE和T-TrmE)交叉或顺序连接而成,连接方式可以参见图8的介绍。对于每种主模态可以设置其对应的协同编码器。
对于第l层()多模态Transformer编码器,它读入上一层学习到的视频v i 三个模态的隐藏层表示/>、/>和/>,学习它们之间的交互以识别共性特征并且区分个性特性,并输出新的隐藏层表示/>、/>
上述利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征,最终输出的编码特征采用下标“s”表示单模态,当编码特征进入多模态编码模块后,可以将下标“s”切换成下标g表示多模态。
多模态编码器中每一编码层的工作原理一样,均是经由“concat函数、协同编码器、单模态编码器”的处理流程。以第l层多模态Transformer编码器为例,其对应的视觉模态的输入特征可以采用表示,其对应的音频模态的输入特征可以采用/>表示,其对应的文本模态的输入特征可以采用/>表示。
在本发明实施例中,可以选取任意一种模态的编码特征作为主模态数据,剩余模态的编码特征作为辅模态数据。对于三种模态,可以有三种组合方式,第一种是以视觉模态的编码特征作为主模态数据,以音频模态和文本模态的编码特征拼接作为辅模态数据;第二种以音频模态的编码特征作为主模态数据,以视觉模态和文本模态的编码特征拼接作为辅模态数据;第三种是以文本模态的编码特征作为主模态数据,以视觉模态和音频模态的编码特征拼接作为辅模态数据。
每种组合方式产生的主模态数据和辅模态数据的处理流程类似,因此为了便于介绍,均以视觉模态的编码特征作为主模态数据为例展开介绍。
在实际应用中,可以借助concat函数将视频中的音频模态和文本模态这两个辅助模态的编码特征拼接得到音频-文本联合辅模态特征,音频-文本联合辅模态特征以矩阵的形式呈现,可以按照如下公式(6)计算得到音频-文本联合辅模态特征,
(6);
其中,表示第l层多模态编码器的音频-文本联合辅模态特征矩阵,上标表示音频和文本的联合,k m 表示音频-文本联合辅模态特征矩阵的横向维度,2d l 表示音频-文本联合辅模态特征矩阵的纵向维度。
S402:基于主模态数据和辅模态数据构建多模态输入参数。
多模态编码融合器包括与模态种类匹配的协同编码器,每种主模态有其对应的一个协同编码器。
每个协同编码器可以包括一对能同时学习共性特征和个性特征的编码器,分别称作主协同编码器(主TrmE)和辅协同编码器(辅TrmE)。图5为本发明实施例提供的一种协同编码器的结构示意图,左侧为主协同编码器、右侧为辅协同编码器。
为了便于区分,可以采用下标“α”表示主协同编码器的输入特征,下标“β”表示辅协同编码器的输入特征。
以视觉模态的编码数据作为主模态数据为例,可以采用表示输入至主协同编码器的主模态数据,采用/>表示输入至主协同编码器的辅模态数据;采用/>表示输入至辅协同编码器的主模态数据,采用/>表示输入至辅协同编码器的辅模态数据。
主协同编码器和辅协同编码器有其各自对应的多模态输入参数,多模态输入参数包括多模态查询、多模态键和多模态值。多模态键和多模态值包括多模态键和多模态值。
在实际应用中,可以将线性变换后的主模态数据作为主协同编码器的多模态查询;将线性变换后的辅模态数据作为主协同编码器的多模态键和多模态值;将线性变换后的辅模态数据作为辅协同编码器的多模态查询;将线性变换后的主模态数据作为辅协同编码器的多模态键和多模态值。
待学习的参数矩阵可以包括待学习的查询矩阵、待学习的键参数矩阵、待学习的值参数矩阵。
对于主协同编码器,可以按照如下公式,将主模态数据与待学习的查询矩阵相乘作为多模态查询,
其中,表示主协同编码器的多模态查询,/>表示主协同编码器的主模态数据,/>表示视觉模态下主协同编码器的第l层对应的待学习的查询矩阵。
按照如下公式,将辅模态数据与待学习的键参数矩阵相乘作为多模态键,将辅模态数据与待学习的值参数矩阵相乘作为多模态值,
其中,表示主协同编码器的多模态键,/>表示主协同编码器的辅模态数据,/>表示音频-文本模态下主协同编码器的第l层对应的待学习的键参数矩阵,/>表示主协同编码器的多模态值,/>表示音频-文本模态下主协同编码器的第l层对应的待学习的值参数矩阵。
S403:对多模态输入参数进行相关性分析,以得到共性特征。
在本发明实施例中,可以利用多头自注意力机制对当前协同编码层的协同输入参数进行分析,以得到多模态关联特征;对多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征。其中,每个协同编码层包括与模态种类的数量匹配的分支,每个分支有其输出的共性特征和个性特征;当前协同编码层的协同输入参数为上一个协同编码层输出的共性特征和个性特征进行拼接和线性变化得到的协同输出特征;第一个协同编码层的协同输入参数为多模态输入参数。
规范化处理可以按照加法-正则化层、全连接层以及加法-正则化层的顺序依次对多模态关联特征进行处理,处理过程可以包括对多模态关联特征以及当前协同编码层的协同输入参数包含的多模态查询进行残差连接和正则化处理,以得到多模态序列化数据;对多模态序列化数据进行线性变换,以得到多模态线性化数据;将多模态序列化数据和多模态线性化数据进行残差连接和正则化处理,以得到当前协同编码层输出的共性特征。
S404:对多模态输入参数进行差异性分析,以得到个性特征。
在实际应用中,可以将当前协同编码层的协同输入参数包含的值与多模态关联特征相减,以得到区别特征;其中,第一个协同编码层的协同输入参数为多模态输入参数;对区别特征进行规范化处理,以得到当前协同编码层输出的个性特征。
区别特征的规范化处理过程可以包括对区别特征进行正则化处理,以得到序列化区别数据;对序列化区别数据进行线性变换,以得到线性区别数据;将序列化区别数据和线性区别数据进行残差连接和正则化处理,以得到当前协同编码层输出的个性特征。
S405:将共性特征和个性特征进行融合,以得到多模态融合特征。
结合图5所示的示意图可知,主协同编码器会输出共性特征和个性特征,辅协同编码器也会输出共性特征和个性特征。在实际应用中,可以按照图5所示的方式,将最后一个协同编码层输出的共性特征和个性特征通过协同编码层进行拼接,以得到拼接特征;通过全连接层对拼接特征进行线性变化,以得到协同输出特征。
在得到协同输出特征之后,可以利用单模态编码器对协同输出特征进行相关性分析,以得到多模态输出特征。
多模态输出特征会经由多模态融合模块的处理,最终得到多模态融合特征。
多模态融合模块的处理过程可以包括将各多模态输出特征进行拼接,以得到多模态拼接特征;利用单模态编码器对多模态拼接特征进行相关性分析,以得到多模态融合特征。
与标准编码器相比,图5中主TrmE和辅TrmE将多头自注意力层后的输出分为两路,分别用于学习视频v i 在模态m下的输入特征的共性和个性特征。其中,用于学习共性特征的一路可以称为共性分支,它与标准编码器的设计相同;用于学习个性特征的一路可以称为个性分支,它在多头自注意力层和紧邻其上的正则化层之间插入了减法层(SUB)。减法层用于计算当前协同编码层的协同输入参数包含的值与多头自注意力层的MHA函数输出的多模态关联特征之间的差值。
在具体实现中,可以按照如下公式(7)计算出区别特征,
(7);
其中,表示第l层主协同编码器计算出的区别特征,/>表示第l层主协同编码器的协同输入参数包含的值,/>表示第l层主协同编码器的多头自注意力层输出的多模态关联特征,/>表示第l层主协同编码器的多头自注意力层输出的多模态查询,/>表示第l层主协同编码器的多头自注意力层输出的多模态键,多模态关联特征以矩阵的形式呈现,/>表示多多模态查询矩阵和多模态键矩阵的列数。
以第l层协同编码器C-TrmE为例,可以将主模态数据和辅模态数据分别输入到主协同编码器和辅协同编码器,协同学习视频的共性和个性特征。将主协同编码器和辅协同编码器输出的共性特征和个性特性经concat函数拼接再经FFN层实施线性变换,最后得到协同输出特征。
主协同编码器和辅协同编码器的工作原理相同,以图5中主协同编码器为例介绍其处理流程:
a)以经过线性变换的视频v i 主模态特征作为多模态查询;以经过线性变换的音频-文本联合辅模态特征作为多模态键/>和多模态值
将多模态查询、多模态键和多模态值输入到多头自注意力层,结合公式(3),可以计算视频v i 在视觉模态下新的隐藏层表示
b)将送入学习共性特征的共性分支。在共性分支中/>先后经由加法-正则化层(AD&NM)、全连接层(FFN)和加法-正则化层(AD&NM),结合公式(4)和公式(5)得到共性特征。为了便于区分共性特征和个性特征,可以采用上标“u”表示共性(universality),上标“p”表示个性(personality),可以采用/>表示共性特征,采用/>表示个性特征。
送入学习个性特征的个性分支,利用减法层的SUB函数将/>与/>进行相减,以生成视频v i 在视觉模态下的新的隐藏层表示/>
先后送入正则化层(NM)、全连接层(FFN)和加法-正则化层(AD&NM),结合公式(4)和公式(5)得到个性特征/>
参照上述主协同编码器的处理流程,可以利用辅协同编码器得到共性特征和个性特征/>
按照如下公式(8)将主协同编码器和辅协同编码器学习到的共性特征和个性特征经concat函数进行拼接,再实施线性变换以得到协同输出特征,
(8);/>
其中,表示第l层协同编码器的协同输出特征,/>表示利用第l层主协同编码器得到的共性特征,/>表示利用第l层主协同编码器得到的个性特征,/>表示利用第l层辅协同编码器得到的共性特征,/>表示利用第l层辅协同编码器得到的个性特征。
将协同编码器输出的送入标准编码器以得到多模态编码模块最终学习到的视频v i 在以视觉模态为主模态,以音频模态和文本模态为辅模态的嵌入式表示/>
类似地,可以学习到的视频v i 在以音频模态为主模态,以视觉模态和文本模态为辅模态的嵌入式表示。可以学习到的视频v i 在以文本模态为主模态,以视觉模态和音频模态为辅模态的嵌入式表示/>
第L2层的三个协同编码器的输出分别为、/>和/>,将其合并作为多模态融合模块的输入。
多模态融合模块会将各多模态输出特征进行拼接,以得到多模态拼接特征
利用单模态编码器对多模态拼接特征H i,g 进行相关性分析,以得到多模态融合特征Z i,g 。对H i,g 进行相关性分析的过程可以参见公式(2)至公式(5)的处理流程,在此不再赘述。
在本发明实施例中,通过关注不同模态间的共性特征和个性特征以及它们之间的复杂交互关系,可以学习到更加准确的多模态融合特征,为提高视频分类准确度奠定了良好基础。
在得到多模态融合特征之后,为了实现对视频分类模型的训练,可以基于单模态序列化数据对多模态融合特征进行解码,以得到每种模态对应的重构特征;利用单模态序列化数据和重构特征对视频分类模型中待学习的参数矩阵进行参数调整,以得到预训练好的视频分类模型。
为了实现对多模态融合特征的解码,可以设置三路并行的单模态解码器,分别为E-TrmD、A-TrmD、T-TrmD。每一路单模态解码器都由L3层Transformer解码器堆叠而成,分别负责重建视频v i 在三种模态下的特征。
因不同模态的单模态解码器工作原理相同,以下介绍不区分具体是哪一路模态对应的单模态解码器。
图6为本发明实施例提供的一种对多模态融合特征进行解码的方法的流程图,该方法包括:
S601:根据目标模态下当前解码层的待解码特征以及当前解码层的第一参数矩阵,构建出初始待解码参数。
其中,第一个解码层的待解码特征为单模态序列化数据;每种模态有其对应的一个单模态解码器。目标模态为所有模态中的任意一种模态。
对于第l层单模态解码器,它以多模态编码融合器学习到的视频v i 的多模态融合特征Z i,g 和上一层单模态解码器输出的v i 在模态m的隐藏层表示,输出/>;当l=L3时,得到v i 在模态m下的重建特征/>。对于单模态解码器其对应的输入特征和输出特征均可以设置下标“d”表示解码,用于和单模态编码器以及多模态编码融合器的输入输出特征进行区分。
图7为本发明实施例提供的一种单模态解码器的结构示意图,每个单模态解码器由L3层Transformer解码器堆叠而成,图7所示的是一层Transformer解码器的结构示意图。一层Transformer解码器可以作为一个解码层。图7包含两路输入,对于第一个解码层其第一路输入为单模态序列化数据,对于后续解码层其第一路输入均为上一个解码层的输出特征。第二路输入是多模态编码融合器输出的多模态融合特征。
对于第一路输入其对应的参数矩阵称作第一参数矩阵,对于第二路输入其对应的参数矩阵称作第二参数矩阵。
在实际应用中,对于第一路输入,可以结合公式(2)将目标模态下当前解码层的待解码特征以及当前解码层的第一参数矩阵相乘,从而构建出初始待解码参数。
S602:利用多头自注意力机制以及掩码矩阵对初始待解码参数进行分析,以得到第一解码参数。
结合图7可知Transformer解码器包含两个多头自注意力层(MHA),其中第一层MHA以视频v i 的添加位置编码的原始特征作为输入,借助公式(2)可以计算出查询,键/>和值/>。其中,/> 、/>和/>均为第一参数矩阵。然后使用添加了掩码(Masked)操作的多头自注意力机制解码v i 在模态m下的隐藏层表示/>,在具体实现中可以按照如下公式(9)计算出第一解码参数,
(9);
其中,M是掩码矩阵,其主对角线上方元素全为0,主对角线上一级下方全为1,/>表示第一解码参数,/>表示第一参数矩阵的列数。
S603:对第一解码参数以及当前解码层的待解码特征进行残差连接和正则化处理,以得到当前解码层的第一输出特征。
实施残差连接和正则化处理可以得到新的隐藏层表示,可以将新的隐藏层表示称作第一输出特征/>
S604:根据第一输出特征、多模态融合特征以及当前解码层的第二参数矩阵,构建出目标待解码参数。
目标待解码参数包括目标待解码查询、目标待解码键和目标待解码值。
利用计算第二层MHA的目标待解码查处参数/>,利用多模态编码融合器学习到的多模态融合特征Z i,g ,计算目标待解码键/>和目标待解码值。其中,/>、/>和/>均为第二参数矩阵。/>
S605:利用多头自注意力机制对目标待解码参数进行分析,以得到第二解码参数。
在实际应用中,可以结合公式(3)对目标待解码参数进行处理,计算出第二解码参数
S606:对第二解码参数进行规范化处理,以得到当前解码层输出的解码特征。
第二解码参数进行规范化处理包括对第二解码参数实施残差连接和正则化处理以得到新的隐藏层表示
接着再对实施线性变换以及残差连接和正则化处理,以得到新的隐藏层表示
最后对再实施一次线性变换得到第l层单模态解码器的输出特征
S607:将当前解码层输出的解码特征作为下一个解码层的待解码特征,直至当前解码层为最后一个解码层,则将最后一个解码层输出的解码特征作为目标模态下的重构特征。
将最后一层即第L3层单模态解码器的输出特征作为最终的解码特征,可以采用符号表示解码特征,上标“o”表示最后一个解码层的输出,/>。其中,与单模态编码器的输出特征/>的维度相同。
需要说明的是,上述介绍中单模态编码器有L1层、多模态编码器有L2层、单模态解码器有L3层,其中,L1、L2和L3的取值可以相同,也可以不同,在此不做限定。
图8为本发明实施例提供的一种单模态编码器、多模态编码融合器以及单模态解码器的连接关系示意图。图8以三种模态为例,单模态编码器由三路并行的单模态编码器组成,为了便于区分可以将这三路单模态编码器分别称作视觉模态编码器、音频模态编码器和文本模态编码器。相对应,单模态解码器由三路并行的单模态解码器组成,为了便于区分可以将这三路单模态解码器分别称作视觉模态解码器、音频模态解码器和文本模态解码器。
多模态编码融合器包括多模态编码模块和多模态融合模块,其中,多模态编码模块由三个拼接函数、三个协同编码器和三个单模态编码器组成,三个单模态编码器分别用于处理不同模态的数据,因此为了便于区分,可以将这三个单模态编码器分别称作视觉模态编码器、音频模态编码器和文本模态编码器,其和单模态编码器中包含的三路并行的单模态编码器的结构相同。多模态融合模块包含一个拼接函数和一个单模态编码器,其中,拼接函数用于将视觉模态编码器、音频模态编码器和文本模态编码器输出的特征进行拼接。图8中的带箭头的线段表示了各模块之间的数据传输顺序。
在本发明实施例中,将视频三种模态特征分别输入到三个单模态编码器中,分别学习同一模态特征的局部联系,并将学习到的视频不同模态特征输入到多模态编码器中学习不同模态间的共性和个性特征,它们经由多模态融合模块进行融合,再由单模态解码器负责解耦多模态融合特征并对单模态特征进行重建,从而可以借助自监督学习方法,通过最小化视频三个模态的原始单模态特征和重建的单模态特征之间的均方误差值,预训练视频多模态特征融合网络。
基于单模态序列化数据以及重构特征对视频分类模型的训练过程可以作为预训练阶段。预训练阶段无需利用样本类别标签,属于自监督学习。
在实际应用中,可以通过网络下载公共微视频数据集,该数据集包含了用户在网站上传的视频的地址、文本以及用户的个人信息。对数据集进行预处理,仅保留同时包含图像、音频和文本模态的微视频,并删除出现次数小于10次的标签。最后得到的视频样本中包含40049个微视频和1935不同的标签。按照60%、20%和20%的比例可以将视频样本划分为训练集V train 、验证集V valid 和测试集V test
在本发明实施例中,可以设置自监督学习的损失函数,
(10);
其中,loss表示损失函数,表示单模态序列化数据,/>表示多模态融合特征解码得到的重构特征,V train 表示视频样本中的训练集,Dist表示用于度量两个输入元素误差值的函数。
Dist可以采用均方误差(Mean Squared Errors,MSEs)函数,则
借助随机梯度下降法对自监督学习损失函数进行优化,以预训练视频分类模型。
在基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型之后,为了进一步提升视频分类模型的准确性,可以利用分类器对多模态融合特征进行分析,以得到预测类别;基于预测类别以及视频样本对应的实际样本类别,对预训练好的视频分类模型进行参数调整,以得到训练好的视频分类模型。
相应的,在获取到待分类视频时,可以利用训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。
基于预测类别以及实际样本类别,对预训练好的视频分类模型进行参数调整的过程可以作为微调阶段。
当采用自监督学习方式预训练好视频多模态信息融合网络之后,对模型参数进行冻结,再采用监督学习方式对模型参数进行微调。在具体实现中,可以将多模态编码器学习到的视频v i 的多模态融合特征Z i,g 输入到分类器,以得到预测出的类别标签的概率分布
通过约束学习到的v i 的类别标签的概率分布与其实际样本类别y i 相似,设计有监督学习损失函数如下,
借助随机梯度下降法对监督学习损失函数进行优化,对预训练好的多模态信息融合网络模型参数进行调优
在本发明实施例中,采用预训练加微调的训练方式,一方面可以缓解视频类别标签匮乏对模型训练形成的重要挑战,大大减少了对标记样本数量的依赖度。另一方面可以大大提高视频分类的准确度,并且能够提高模型训练的效率。
图9为本发明实施例提供的一种视频分类装置的结构示意图,包括提取单元91、单模态分析单元92、多模态分析单元93、训练单元94和分类单元95;
提取单元91,用于按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;
单模态分析单元92,用于利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征;
多模态分析单元93,用于利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;
训练单元94,用于基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;
分类单元95,用于利用预训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。
在一些实施例中,提取单元包括特征提取子单元和序列化子单元;
特征提取子单元,用于按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征;其中,模态包括视觉模态、音频模态和/或文本模态;
序列化子单元,用于对单模态特征进行序列化和位置编码,以得到单模态序列化数据。
在一些实施例中,特征提取子单元用于按照设定的时间间距从视频样本中提取出图片帧;
将各图片帧剪裁成设定尺寸,利用残差神经网络对剪裁后的各图片帧进行特征提取,以得到视觉模态对应的视觉特征。
在一些实施例中,特征提取子单元用于从视频样本中分离出音频模态数据;
按照时间维度将音频模态数据划分为多个音频段;
利用训练好的音频神经网络对多个音频段进行特征提取,以得到音频模态对应的音频特征。
在一些实施例中,特征提取子单元用于提取视频样本中的文本数据;
按照文本数据对应的语言类型,从文本数据中清洗掉与语言类型不匹配的字符以及停用词;
将清洗后的各文本数据按照设定的文本长度进行对齐处理,以得到文本模态对应的文本特征。
在一些实施例中,序列化子单元用于按照时间顺序将单模态特征划分为多个分片数据;
根据多个分片数据对应的时间,设置多个分片数据各自的位置编码;
基于每种模态下的分片数据及其对应的位置编码,构建出单模态序列化数据。
在一些实施例中,单模态分析单元包括构建子单元、分析子单元、规范化子单元和作为子单元;
构建子单元,用于基于目标模态下当前编码层的输入特征以及待学习的参数矩阵,构建出输入参数;其中,输入参数包括查询、键和值;第一个编码层的输入特征为单模态序列化数据;每种模态有其对应的一个单模态编码器;目标模态为所有模态中的任意一种模态;
分析子单元,用于利用多头自注意力机制对输入参数进行相关性分析,以得到新的单模态序列化数据;
规范化子单元,用于对新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征;
作为子单元,用于将当前编码层的输出特征作为下一个编码层的输入特征,直至当前编码层为最后一个编码层,则将最后一个编码层的输出特征作为目标模态的编码特征。
在一些实施例中,规范化子单元用于对新的单模态序列化数据以及输入特征进行残差连接和正则化处理,以得到缩放后的单模态序列化数据;
对缩放后的单模态序列化数据进行线性变换,以得到线性化数据;
将缩放后的单模态序列化数据和线性化数据进行残差连接和正则化处理,以得到当前编码层的输出特征。
在一些实施例中,多模态分析单元包括选取子单元、构建子单元、相关性分析子单元、差异性分析子单元和融合子单元;
选取子单元,用于选取任意一种模态的编码特征作为主模态数据,剩余模态的编码特征作为辅模态数据;
构建子单元,用于基于主模态数据和辅模态数据构建多模态输入参数;
相关性分析子单元,用于对多模态输入参数进行相关性分析,以得到共性特征;
差异性分析子单元,用于对多模态输入参数进行差异性分析,以得到个性特征;
融合子单元,用于将共性特征和个性特征进行融合,以得到多模态融合特征。
在一些实施例中,多模态编码融合器包括与模态种类匹配的协同编码器,每种主模态有其对应的一个协同编码器,各协同编码器包括主协同编码器和辅协同编码器;
相应的,构建子单元用于将线性变换后的主模态数据作为主协同编码器的多模态查询;
将线性变换后的辅模态数据作为主协同编码器的多模态键和多模态值;
将线性变换后的辅模态数据作为辅协同编码器的多模态查询;
将线性变换后的主模态数据作为辅协同编码器的多模态键和多模态值。
在一些实施例中,相关性分析子单元用于利用多头自注意力机制对当前协同编码层的协同输入参数进行分析,以得到多模态关联特征;其中,每个协同编码层包括与模态种类的数量匹配的分支,每个分支有其输出的共性特征和个性特征;当前协同编码层的协同输入参数为上一个协同编码层输出的共性特征和个性特征进行拼接和线性变化得到的协同输出特征;第一个协同编码层的协同输入参数为多模态输入参数;
对多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征。
在一些实施例中,相关性分析子单元用于对多模态关联特征以及当前协同编码层的协同输入参数包含的多模态查询进行残差连接和正则化处理,以得到多模态序列化数据;
对多模态序列化数据进行线性变换,以得到多模态线性化数据;
将多模态序列化数据和多模态线性化数据进行残差连接和正则化处理,以得到当前协同编码层输出的共性特征。
在一些实施例中,差异性分析子单元用于将当前协同编码层的协同输入参数包含的值与多模态关联特征相减,以得到区别特征;其中,第一个协同编码层的协同输入参数为多模态输入参数;
对区别特征进行规范化处理,以得到当前协同编码层输出的个性特征。
在一些实施例中,差异性分析子单元用于对区别特征进行正则化处理,以得到序列化区别数据;
对序列化区别数据进行线性变换,以得到线性区别数据;
将序列化区别数据和线性区别数据进行残差连接和正则化处理,以得到当前协同编码层输出的个性特征。
在一些实施例中,融合子单元用于将最后一个协同编码层输出的共性特征和个性特征进行拼接,以得到拼接特征;
对拼接特征进行线性变化,以得到协同输出特征;
利用单模态编码器对协同输出特征进行相关性分析,以得到多模态输出特征;
将各多模态输出特征进行拼接,以得到多模态拼接特征;
利用单模态编码器对多模态拼接特征进行相关性分析,以得到多模态融合特征。
在一些实施例中,训练单元包括解码子单元和调整子单元;
解码子单元,用于基于单模态序列化数据对多模态融合特征进行解码,以得到每种模态对应的重构特征;
调整子单元,用于利用单模态序列化数据和重构特征对视频分类模型中待学习的参数矩阵进行参数调整,以得到预训练好的视频分类模型。
在一些实施例中,解码子单元用于根据目标模态下当前解码层的待解码特征以及当前解码层的第一参数矩阵,构建出初始待解码参数;其中,第一个解码层的待解码特征为单模态序列化数据;每种模态有其对应的一个单模态解码器;目标模态为所有模态中的任意一种模态;
利用多头自注意力机制以及掩码矩阵对初始待解码参数进行分析,以得到第一解码参数;
对第一解码参数以及当前解码层的待解码特征进行残差连接和正则化处理,以得到当前解码层的第一输出特征;
根据第一输出特征、多模态融合特征以及当前解码层的第二参数矩阵,构建出目标待解码参数;
利用多头自注意力机制对目标待解码参数进行分析,以得到第二解码参数;
对第二解码参数进行规范化处理,以得到当前解码层输出的解码特征;
将当前解码层输出的解码特征作为下一个解码层的待解码特征,直至当前解码层为最后一个解码层,则将最后一个解码层输出的解码特征作为目标模态下的重构特征。
在一些实施例中,还包括预测单元和调整单元;
预测单元,用于利用分类器对多模态融合特征进行分析,以得到预测类别;
调整单元,用于基于预测类别以及视频样本对应的实际样本类别,对预训练好的视频分类模型进行参数调整,以得到训练好的视频分类模型。
在一些实施例中,分析单元用于利用训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。
图9所对应实施例中特征的说明可以参见图1至图8所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;利用单模态编码器对各单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征。每种模态的编码特征用于表征视频样本在该模态下的嵌入式表示。为了充分挖掘不同模态下编码特征之间的关联性,可以利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;基于单模态序列化数据以及多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;利用预训练好的视频分类模型对获取的待分类视频进行分析,以确定出待分类视频所属的类别。本发明的有益效果在于,在获取视频样本在不同模态下各自的编码特征的基础上,综合考虑视频样本在不同模态间的共性和个性特征以及它们之间的复杂交互关系,学习到更加准确的多模态融合特征,能极大提高视频多模态特征建模的准确度,进而提高视频分类的准确度。
图10为本发明实施例提供的一种电子设备的结构图,如图10所示,电子设备包括:存储器10,用于存储计算机程序;
处理器11,用于执行计算机程序时实现如上述实施例视频分类方法的步骤。
本实施例提供的电子设备可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器11可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器11可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器11也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器11可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器11还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器10可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器10还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器10至少用于存储以下计算机程序101,其中,该计算机程序被处理器11加载并执行之后,能够实现前述任一实施例公开的视频分类方法的相关步骤。另外,存储器10所存储的资源还可以包括操作系统102和数据103等,存储方式可以是短暂存储或者永久存储。其中,操作系统102可以包括Windows、Unix、Linux等。数据103可以包括但不限于视频样本、单模态数据处理规则、待分类视频等。
在一些实施例中,电子设备还可包括有显示屏12、输入输出接口13、通信接口14、电源15以及通信总线16。
本领域技术人员可以理解,图10中示出的结构并不构成对电子设备的限定,可以包括比图示更多或更少的组件。
可以理解的是,如果上述实施例中的视频分类方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对目前技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、磁碟或者光盘等各种可以存储程序代码的介质。
基于此,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述视频分类方法的步骤。
以上对本发明实施例所提供的一种视频分类方法、装置、设备和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上对本发明所提供的一种视频分类方法、装置、设备和计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (22)

1.一种视频分类方法,其特征在于,包括:
按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;
利用单模态编码器对各所述单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征;
利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;
基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;
利用所述预训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
2.根据权利要求1所述的视频分类方法,其特征在于,所述按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据包括:
按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征;其中,所述模态包括视觉模态、音频模态和/或文本模态;
对所述单模态特征进行序列化和位置编码,以得到单模态序列化数据。
3.根据权利要求2所述的视频分类方法,其特征在于,所述按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征包括:
按照设定的时间间距从所述视频样本中提取出图片帧;
将各所述图片帧剪裁成设定尺寸,利用残差神经网络对剪裁后的各图片帧进行特征提取,以得到视觉模态对应的视觉特征。
4.根据权利要求2所述的视频分类方法,其特征在于,所述按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征包括:
从所述视频样本中分离出音频模态数据;
按照时间维度将所述音频模态数据划分为多个音频段;
利用训练好的音频神经网络对多个所述音频段进行特征提取,以得到音频模态对应的音频特征。
5.根据权利要求2所述的视频分类方法,其特征在于,所述按照每种模态对应的特征提取方式,从视频样本中提取出每种模态对应的单模态特征包括:
提取所述视频样本中的文本数据;
按照所述文本数据对应的语言类型,从所述文本数据中清洗掉与所述语言类型不匹配的字符以及停用词;
将清洗后的各文本数据按照设定的文本长度进行对齐处理,以得到文本模态对应的文本特征。
6.根据权利要求2所述的视频分类方法,其特征在于,所述对所述单模态特征进行序列化和位置编码,以得到单模态序列化数据包括:
按照时间顺序将所述单模态特征划分为多个分片数据;
根据多个所述分片数据对应的时间,设置多个所述分片数据各自的位置编码;
基于每种模态下的分片数据及其对应的位置编码,构建出单模态序列化数据。
7.根据权利要求1所述的视频分类方法,其特征在于,所述利用单模态编码器对各所述单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征包括:
基于目标模态下当前编码层的输入特征以及待学习的参数矩阵,构建出输入参数;其中,所述输入参数包括查询、键和值;第一个编码层的输入特征为所述单模态序列化数据;每种模态有其对应的一个单模态编码器;所述目标模态为所有模态中的任意一种模态;
利用多头自注意力机制对所述输入参数进行相关性分析,以得到新的单模态序列化数据;
对所述新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征;
将所述当前编码层的输出特征作为下一个编码层的输入特征,直至所述当前编码层为最后一个编码层,则将最后一个编码层的输出特征作为所述目标模态的编码特征。
8.根据权利要求7所述的视频分类方法,其特征在于,所述对所述新的单模态序列化数据进行规范化处理,以得到当前编码层的输出特征包括:
对所述新的单模态序列化数据以及所述输入特征进行残差连接和正则化处理,以得到缩放后的单模态序列化数据;
对所述缩放后的单模态序列化数据进行线性变换,以得到线性化数据;
将所述缩放后的单模态序列化数据和所述线性化数据进行残差连接和正则化处理,以得到当前编码层的输出特征。
9.根据权利要求1至8任意一项所述的视频分类方法,其特征在于,所述利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征包括:
选取任意一种模态的编码特征作为主模态数据,剩余模态的编码特征作为辅模态数据;
基于所述主模态数据和所述辅模态数据构建多模态输入参数;
对所述多模态输入参数进行相关性分析,以得到共性特征;
对所述多模态输入参数进行差异性分析,以得到个性特征;
将所述共性特征和所述个性特征进行融合,以得到多模态融合特征。
10.根据权利要求9所述的视频分类方法,其特征在于,所述多模态编码融合器包括与模态种类匹配的协同编码器,每种主模态有其对应的一个协同编码器,各所述协同编码器包括主协同编码器和辅协同编码器;
相应的,所述基于所述主模态数据和所述辅模态数据构建多模态输入参数包括:
将线性变换后的主模态数据作为所述主协同编码器的多模态查询;
将线性变换后的辅模态数据作为所述主协同编码器的多模态键和多模态值;
将线性变换后的辅模态数据作为所述辅协同编码器的多模态查询;
将线性变换后的主模态数据作为所述辅协同编码器的多模态键和多模态值。
11.根据权利要求10所述的视频分类方法,其特征在于,所述对所述多模态输入参数进行相关性分析,以得到共性特征包括:
利用多头自注意力机制对当前协同编码层的协同输入参数进行分析,以得到多模态关联特征;其中,每个协同编码层包括与模态种类的数量匹配的分支,每个分支有其输出的共性特征和个性特征;当前协同编码层的协同输入参数为上一个协同编码层输出的共性特征和个性特征进行拼接和线性变化得到的协同输出特征;第一个协同编码层的协同输入参数为所述多模态输入参数;
对所述多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征。
12.根据权利要求11所述的视频分类方法,其特征在于,所述对所述多模态关联特征进行规范化处理,以得到当前协同编码层输出的共性特征包括:
对所述多模态关联特征以及所述当前协同编码层的协同输入参数包含的多模态查询进行残差连接和正则化处理,以得到多模态序列化数据;
对所述多模态序列化数据进行线性变换,以得到多模态线性化数据;
将所述多模态序列化数据和所述多模态线性化数据进行残差连接和正则化处理,以得到所述当前协同编码层输出的共性特征。
13.根据权利要求11所述的视频分类方法,其特征在于,所述对所述多模态输入参数进行差异性分析,以得到个性特征包括:
将所述当前协同编码层的协同输入参数包含的值与所述多模态关联特征相减,以得到区别特征;其中,第一个协同编码层的协同输入参数为所述多模态输入参数;
对所述区别特征进行规范化处理,以得到所述当前协同编码层输出的个性特征。
14.根据权利要求13所述的视频分类方法,其特征在于,所述对所述区别特征进行规范化处理,以得到所述当前协同编码层输出的个性特征包括:
对所述区别特征进行正则化处理,以得到序列化区别数据;
对所述序列化区别数据进行线性变换,以得到线性区别数据;
将所述序列化区别数据和所述线性区别数据进行残差连接和正则化处理,以得到当前协同编码层输出的个性特征。
15.根据权利要求14所述的视频分类方法,其特征在于,所述将所述共性特征和所述个性特征进行融合,以得到多模态融合特征包括:
将最后一个协同编码层输出的所述共性特征和所述个性特征进行拼接,以得到拼接特征;
对所述拼接特征进行线性变化,以得到协同输出特征;
利用单模态编码器对所述协同输出特征进行相关性分析,以得到多模态输出特征;
将各所述多模态输出特征进行拼接,以得到多模态拼接特征;
利用单模态编码器对所述多模态拼接特征进行相关性分析,以得到多模态融合特征。
16.根据权利要求1所述的视频分类方法,其特征在于,所述基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型包括:
基于所述单模态序列化数据对所述多模态融合特征进行解码,以得到每种模态对应的重构特征;
利用所述单模态序列化数据和所述重构特征对所述视频分类模型中待学习的参数矩阵进行参数调整,以得到预训练好的视频分类模型。
17.根据权利要求16所述的视频分类方法,其特征在于,所述基于所述单模态序列化数据对所述多模态融合特征进行解码,以得到每种模态对应的重构特征包括:
根据目标模态下当前解码层的待解码特征以及当前解码层的第一参数矩阵,构建出初始待解码参数;其中,第一个解码层的待解码特征为所述单模态序列化数据;每种模态有其对应的一个单模态解码器;所述目标模态为所有模态中的任意一种模态;
利用多头自注意力机制以及掩码矩阵对所述初始待解码参数进行分析,以得到第一解码参数;
对所述第一解码参数以及所述当前解码层的待解码特征进行残差连接和正则化处理,以得到当前解码层的第一输出特征;
根据所述第一输出特征、所述多模态融合特征以及当前解码层的第二参数矩阵,构建出目标待解码参数;
利用多头自注意力机制对所述目标待解码参数进行分析,以得到第二解码参数;
对所述第二解码参数进行规范化处理,以得到当前解码层输出的解码特征;
将所述当前解码层输出的解码特征作为下一个解码层的待解码特征,直至所述当前解码层为最后一个解码层,则将最后一个解码层输出的解码特征作为目标模态下的重构特征。
18.根据权利要求1所述的视频分类方法,其特征在于,在所述基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型之后,还包括:
利用分类器对所述多模态融合特征进行分析,以得到预测类别;
基于所述预测类别以及所述视频样本对应的实际样本类别,对所述预训练好的视频分类模型进行参数调整,以得到训练好的视频分类模型。
19.根据权利要求18所述的视频分类方法,其特征在于,还包括:
利用训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
20.一种视频分类装置,其特征在于,包括提取单元、单模态分析单元、多模态分析单元、训练单元和分类单元;
所述提取单元,用于按照设定的单模态数据处理规则,从视频样本中提取出每种模态对应的单模态序列化数据;
所述单模态分析单元,用于利用单模态编码器对各所述单模态序列化数据进行相关性分析,以得到每种模态对应的编码特征;
所述多模态分析单元,用于利用多模态编码融合器对所有模态对应的编码特征进行交叉分析,以得到融合了共性特征和个性特征的多模态融合特征;
所述训练单元,用于基于所述单模态序列化数据以及所述多模态融合特征解码得到的重构特征,对视频分类模型进行训练以得到预训练好的视频分类模型;
所述分类单元,用于利用所述预训练好的视频分类模型对获取的待分类视频进行分析,以确定出所述待分类视频所属的类别。
21.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至19任意一项所述视频分类方法的步骤。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至19任意一项所述视频分类方法的步骤。
CN202311296302.3A 2023-10-09 2023-10-09 一种视频分类方法、装置、设备和计算机可读存储介质 Active CN117036833B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311296302.3A CN117036833B (zh) 2023-10-09 2023-10-09 一种视频分类方法、装置、设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311296302.3A CN117036833B (zh) 2023-10-09 2023-10-09 一种视频分类方法、装置、设备和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN117036833A true CN117036833A (zh) 2023-11-10
CN117036833B CN117036833B (zh) 2024-02-09

Family

ID=88602728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311296302.3A Active CN117036833B (zh) 2023-10-09 2023-10-09 一种视频分类方法、装置、设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN117036833B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117669738A (zh) * 2023-12-20 2024-03-08 苏州元脑智能科技有限公司 引擎更新方法、处理方法、装置、设备、介质及机器人

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018129650A1 (zh) * 2017-01-10 2018-07-19 中国科学院深圳先进技术研究院 多模态影像组学的分析方法、装置及终端
CN113762322A (zh) * 2021-04-22 2021-12-07 腾讯科技(北京)有限公司 基于多模态表示的视频分类方法、装置和设备及存储介质
CN116070169A (zh) * 2023-01-28 2023-05-05 天翼云科技有限公司 模型训练方法、装置、电子设备及存储介质
CN116661603A (zh) * 2023-06-02 2023-08-29 南京信息工程大学 复杂人机交互场景下的多模态融合的用户意图识别方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018129650A1 (zh) * 2017-01-10 2018-07-19 中国科学院深圳先进技术研究院 多模态影像组学的分析方法、装置及终端
CN113762322A (zh) * 2021-04-22 2021-12-07 腾讯科技(北京)有限公司 基于多模态表示的视频分类方法、装置和设备及存储介质
CN116070169A (zh) * 2023-01-28 2023-05-05 天翼云科技有限公司 模型训练方法、装置、电子设备及存储介质
CN116661603A (zh) * 2023-06-02 2023-08-29 南京信息工程大学 复杂人机交互场景下的多模态融合的用户意图识别方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117669738A (zh) * 2023-12-20 2024-03-08 苏州元脑智能科技有限公司 引擎更新方法、处理方法、装置、设备、介质及机器人
CN117669738B (zh) * 2023-12-20 2024-04-26 苏州元脑智能科技有限公司 引擎更新方法、处理方法、装置、设备、介质及机器人

Also Published As

Publication number Publication date
CN117036833B (zh) 2024-02-09

Similar Documents

Publication Publication Date Title
JP5128629B2 (ja) 品詞タグ付けシステム、品詞タグ付けモデルのトレーニング装置および方法
CN111858954A (zh) 面向任务的文本生成图像网络模型
WO2023065617A1 (zh) 基于预训练模型和召回排序的跨模态检索系统及方法
CN114048350A (zh) 一种基于细粒度跨模态对齐模型的文本-视频检索方法
CN109829499B (zh) 基于同一特征空间的图文数据融合情感分类方法和装置
CN114444516B (zh) 一种基于深度语义感知图卷积网络的粤语谣言检测方法
CN117036833B (zh) 一种视频分类方法、装置、设备和计算机可读存储介质
CN114443899A (zh) 视频分类方法、装置、设备及介质
CN115129934A (zh) 一种多模态视频理解方法
CN113239159A (zh) 基于关系推理网络的视频和文本的跨模态检索方法
CN117574904A (zh) 基于对比学习和多模态语义交互的命名实体识别方法
CN115408488A (zh) 用于小说场景文本的分割方法及系统
CN116958997B (zh) 一种基于异质图神经网络的图文摘要方法及系统
CN117235605A (zh) 一种基于多模态注意力融合的敏感信息分类方法及装置
CN111831829A (zh) 一种面向开放域的实体关系抽取方法、装置及终端设备
CN116775855A (zh) 基于Bi-LSTM的TextRank中文摘要自动生成方法
CN112069790A (zh) 文本相似度识别方法、装置及电子设备
CN115718904A (zh) 文本处理方法及装置
Qi et al. Video captioning via a symmetric bidirectional decoder
CN115273856A (zh) 语音识别方法、装置、电子设备及存储介质
Xiang et al. Aggregating local and global text features for linguistic steganalysis
CN113919338A (zh) 处理文本数据的方法及设备
Hammad et al. Characterizing the impact of using features extracted from pre-trained models on the quality of video captioning sequence-to-sequence models
CN112559750A (zh) 文本数据的分类方法、装置、非易失性存储介质、处理器
Liu et al. End-to-End Chinese Lip-Reading Recognition Based on Multi-modal Fusion

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