CN114328904A - 内容处理方法、装置、计算机设备和存储介质 - Google Patents
内容处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114328904A CN114328904A CN202111044767.0A CN202111044767A CN114328904A CN 114328904 A CN114328904 A CN 114328904A CN 202111044767 A CN202111044767 A CN 202111044767A CN 114328904 A CN114328904 A CN 114328904A
- Authority
- CN
- China
- Prior art keywords
- classification
- current
- training
- model
- feature extraction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种内容处理方法、装置、计算机设备和存储介质。所述方法包括:确定分类任务序列中的当前分类任务;获取当前训练类别,其中,分类任务序列中至少两个分类任务对应的训练类别不同;获取当前训练样本,基于待训练的特征提取模型对当前训练样本进行特征提取,得到当前样本提取特征;基于当前样本提取特征进行分类,得到当前分类结果;基于当前分类结果对待训练的特征提取模型进行训练,得到训练后的特征提取模型,待训练的特征提取模型是当前分类任务对应的前向分类任务进行训练得到的;将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型。采用本方法可以提高特征提取的准确度。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种内容处理方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了机器学习技术,通过机器学习可以训练用于各种任务的机器学习模型,例如,可以训练用于特征提取任务的特征提取模型,该特征提取模型可以提取得到内容对应的特征,可以基于该特征对内容进行识别,得到内容识别结果。举个实际的例子,可以对一段句子进行特征提取,得到表示该句子的特征向量,基于该特征向量对句子进行翻译。
传统技术中,可以通过训练样本对特征提取模型进行训练,然而经常存在训练得到的特征提取模型所提取得到的特征准确度比较低的情况。
发明内容
基于此,有必要针对上述技术问题,提供一种内容处理方法、装置、计算机设备和存储介质。
一种内容处理方法,所述方法包括:确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;基于所述当前样本提取特征进行分类,得到当前分类结果;基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
一种内容处理装置,所述装置包括:任务确定模块,用于确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;训练类别获取模块,用于获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;特征提取模块,用于获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;分类模块,用于基于所述当前样本提取特征进行分类,得到当前分类结果;训练模块,用于基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;模型获得模块,用于将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;基于所述当前样本提取特征进行分类,得到当前分类结果;基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;基于所述当前样本提取特征进行分类,得到当前分类结果;基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
在一些实施例中,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现以下步骤:确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;基于所述当前样本提取特征进行分类,得到当前分类结果;基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
上述内容处理方法、装置、计算机设备、存储介质和计算机程序产品,通过确定分类任务序列中的当前分类任务,获取所述当前分类任务对应的当前训练类别,获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征,基于所述当前样本提取特征进行分类,得到当前分类结果,基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,由于训练后的特征提取模型是基于分类结果训练得到的,并且由于将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,分类任务序列包括多个分类任务,其中至少两个分类任务对应的训练类别不同,因此,特征提取模型在训练过程中学习了变化式的分类任务,由于训练过程中分类任务的变化,使得内容特征提取模型在保持特征提取能力的同时,能够学习到区分不同类别内容的特征的能力,因此能够提高特征提取的准确度。
附图说明
图1为一些实施例中内容处理方法的应用环境图;
图2为一些实施例中内容处理方法的流程示意图;
图3为另一些实施例中内容处理步骤的流程示意图;
图4为另一些实施例中联合训练特征提取模型和分类模型的示意图;
图5为一些实施例中在目标任务下训练内容分类模型示意图;
图6为一些实施例中检索过程的示意图;
图7为一些实施例中为对图像进行检索的过程示意图
图8为一些实施例中内容处理装置的结构框图;
图9为一些实施例中计算机设备的内部结构图;
图10为另一些实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的内容处理方法涉及人工智能的计算机视角、机器学习等技术,其中:
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视角技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
计算机视角技术(Computer Vision,CV)计算机视角是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视角,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视角研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视角技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请涉及的计算机视角、机器学习等技术具体通过如下实施例进行说明:
本申请提供的内容处理方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104进行通信。其中的网络可以是有线网络获取是无线网络,无线网络可以是局域网、城域网以及广域网中的任意一种。终端102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能电视或者可穿戴设备中的其中一种,但并不局限于此。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
具体地,服务器确定分类任务序列中的当前分类任务,获取当前分类任务对应的当前训练类别,获取当前训练类别对应的当前训练样本,基于待训练的特征提取模型对当前训练样本进行特征提取,得到当前样本提取特征,基于当前样本提取特征进行分类,得到当前分类结果,基于当前分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型,将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于内容特征提取模型对内容进行特征提取,其中,分类任务序列中至少两个分类任务对应的训练类别不同,待训练的特征提取模型是基于分类任务序列中,当前分类任务对应的前向分类任务进行训练得到的。
在一些实施例中,服务器104在得到训练后的内容特征提取模型后,可以部署该内容特征提取模型,此后,服务器104可以接收终端102发送内容检索请求,通过部署的内容特征提取模型对内容检索请求中携带的内容进行提取特征,基于提取的特征进行分类,基于分类结果从分类阈值表中确定该分类结果对应的特征距离阈值,进而可以基于该特征距离阈值从内容数据库中进行检索,召回小于该距离阈值的内容作为检索结果并返回至终端。其中,终端102的内容检索请求可以由用户在终端界面输入检索内容并触发检索控件生成。内容数据库中,各个内容和各自对应的特征向量对应存储。
可以理解,上述应用场景仅是一种示例,并不构成对本申请实施例提供的用户数据处理方法的限定,本申请实施例提供的方法还可以应用在其他应用场景中,例如,终端可以预先生成分类任务序列,向服务器发送模型训练请求并携带分类任务序列,服务器从分类任务序列中确定分类任务序列中的当前分类任务,以基于当前分类任务进行模型训练,得到当前分类任务对应的训练后的特征提取模型,在分类任务序列中所有分类任务执行完成后,将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型返回终端,终端将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于内容特征提取模型对内容进行特征提取,从而根据提取的特征对内容进行分类,实现基于分类结果的业务流程。例如,终端可以对用户历史浏览的内容进行分类,以对用户推荐同类型的内容。
在一些实施例中,如图2所示,提供了一种内容处理方法。可以理解,该内容处理方法可以由终端或服务器单独执行,也可以由终端和服务器协同执行。在本实施例中,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,确定分类任务序列中的当前分类任务;其中分类任务序列包括多个分类任务。
其中,分类任务指的是对内容进行类别识别的任务,基于分类任务得到的分类结果可以对待训练的特征提取模型进行训练。其中的内容指的是包含语义信息的数据,内容可以是文本、音频或者图像中的任意一种。分类任务可以通过确定所要识别的类别来生成。分类任务序列指的是一轮(epoch)训练中所有分类任务组成的序列。分类任务序列中包括多个分类任务。多个分类任务可以排列得到分类任务序列。多个指的是至少两个。在一些实施例中,为确保模型训练的准确性,在整个训练过程中,可以执行多轮训练,每轮训练对应一个分类任务序列。当前分类任务指的是分类任务序列中当前时刻需要执行的分类任务。
在一些实施例中,分类任务序列可以是预先生成,即预先确定多个分类任务,将这些分类任务排列存储为分类任务序列。具体地,服务器可以获取包括多个训练类别的训练类别集合,预先将训练类别集合中的训练类别划分为多个训练类别子集合,每个训练类别子集合对应一个分类任务,将这些分类任务进行编号,并和训练类别子集合建立对应关系,其中训练类别指的是在基于分类任务进行训练的过程中所要识别的类别。服务器可以按照编号从小到大的顺序对分类任务进行排列得到分类任务序列,例如:任务1-任务2-任务3-……-任务N。在一些实施例中,服务器可以按照顺序依次执行分类任务序列中的分类任务,在基于当前分类任务进行训练完成后,将分类任务序列中下一个编号对应的分类任务确定为当前分类任务。在其他一些实施例中,服务器可以随机从分类任务序列中无放回地抽取分类任务作为当前分类任务,即在服务器在抽取到一个分类任务后,从分类任务序列中去除该抽取的分类任务。
在其他一些实施例中,分类任务序列可以是边训练边生成的,即每基于一个分类任务进行训练完成之后,确定下一个分类任务。具体地,在基于当前分类任务进行训练完成后,服务器可以从训练类别集合中抽取一个或者多个训练类别生成新的分类任务,将生成的分类任务确定为当前分类任务,在本轮训练结束后,所有的分类任务按照时间顺序进行排列可以得到分类任务序列。其中,服务器在抽取训练类别生成分类任务时,可以是有放回地抽取也可以是无放回的抽取。
步骤204,获取当前分类任务对应的当前训练类别,其中,分类任务序列中至少两个分类任务对应的训练类别不同。
其中,当前分类任务对应的当前训练类别指的是在基于当前分类任务进行训练的过程中所要识别的类别。当前分类任务对应的当前训练类别可以是一个训练类别,也可以是多个训练类别,多个指至少两个。在一些实施例中,分类任务序列中至少两个分类任务对应的训练类别不同可以是至少两个分类任务对应的训练类别完全不同,例如假设分类任务序列中存在两个分类任务为任务A和任务B,则对于任务A对应的多个训练类别中的每一个训练类别,在任务B对应的多个训练类别中均不存在与该训练类别相同的训练类别。在另一些实施例中,分类任务序列中至少两个分类任务对应的训练类别不同还可以是分类任务序列中至少两个分类任务对应的训练类别部分不同,例如假设分类任务序列中存在两个分类任务为任务A和任务B,则任务A对应的多个训练类别中至少存在一个训练类别与任务B对应的多个训练类别中任意一个训练类别都不相同。
在一些实施例中,分类任务序列是预先生成的,分类任务序列中的分类任务与训练类别子集合之间存在对应关系,服务器在确定了当前分类任务后,即可根据对应关系获取到当前分类任务对应的训练类别子集合,将获取到的训练类别子集合中的训练类别作为当前训练类别。
在其他一些实施例中,分类任务序列是边训练边生成的,服务器从训练类别集合中抽取训练类别生成当前分类任务,则服务器在确定当前分类任务的同时,即获取到了当前分类任务对应的当前训练类别。
步骤206,获取当前训练类别对应的当前训练样本,基于待训练的特征提取模型对当前训练样本进行特征提取,得到当前样本提取特征。
其中,当前训练类别对应的当前训练样本指的是类别标签为当前训练类别的训练样本,训练样本为内容样本,内容可以是文本、音频或者图像中的任意一种。特征提取模型为用于进行特征提取并输出特征向量的机器学习模型,特征提取模型中至少包括embedding(嵌入)模型,embedding模型用于输出特征向量,embedding模型输出的特征向量可以称为embedding。embedding模型可以是一层或者多层全连接层(full connection)构成的模型。待训练的特征提取模型指的是执行当前分类任务所要训练的特征提取模型。
在一些实施例中,特征提取模型可以仅包括embedding模型,embedding模型的输入端可以连接已训练的基础神经网络模型的输出端,接收基础神经网络模型的输出作为输入。其中的基础神经网络模型可以是用于提取内容所包含的特征信息的模型,基础神经网络模型可以是基于人工智能的神经网络,例如可以是卷积神经网络(ConvolutionalNeural Networks,CNN),还可以是ResNet101(深度残差网络101)或者ResNet18(深度残差网络18)等网络。其中卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks)。具体地,服务器在获取到当前训练类别对应的当前训练样本后,将当前训练样本输入已训练的基础神经网络模型中,通过已训练的基础神经网络模型提取特征信息,将提取的特征信息输入待训练的embedding模型中,得到特征向量,该特征向量即为当前训练样本对应的当前样本提取特征。举例说明,以当前训练样本为图像为例,可以将图像输入已训练的CNN模型中提取得到图像的深度特征,将提取的深度特征输入embedding模型中得到图像的特征向量。
在其他一些实施例中,特征提取模型可以包括基础神经网络模型和embedding模型,此时基础神经网络模型和embedding模型作为特征提取模型共同进行训练。具体地,服务器在获取到当前训练类别对应的当前训练样本后,将当前训练样本输入待训练的基础神经网络模型中,通过待训练的基础神经网络模型提取特征信息,将提取的特征信息输入待训练的embedding模型中,得到特征向量,该特征向量即为当前训练样本对应的当前样本提取特征。
步骤208,基于当前样本提取特征进行分类,得到当前分类结果。
其中,分类指的是基于当前样本提取特征对当前训练样本进行类别识别,以从当前分类任务对应的当前训练类别确定出当前训练样本所属的具体类别。当前分类结果是用于表征当前训练样本所属的具体类别的类别信息的。
具体地,服务器可以采用分类模型对当前样本提取特征进行分类,即将当前样本提取特征输入到分类模型中,获取分类模型的输出作为当前分类结果。其中,分类模型指的是可以进行类别识别的机器学习模型。在一些实施例中,分类模型可以包括一层或者多层全连接层,当分类模型包括多层全连接层时,前几层全连接层可以对当前样本提取特征抽取语义特征,因此称可以为语义层Semantic_layer,最后一层全连接层用于分类,称为分类层。语义层的数量可以根据需要进行确定,对于需要更多特征交叉的情况可以加深语义层。通过设置语义层,可以抽象出高阶特征从而更充分的挖掘分类信息。在一些实施例中,当前分类结果可以是用于表征当前训练样本所属类别的类别标识,例如,分类模型对N个类别进行分类,则可以用N维向量(1,0,0,0,……,0)表示第一个类别,用向量(0,1,0,0,……,0)表示第二个类别,依次类推。在另一些实施例中,当前分类结果可以是用于表征当前训练样本所属类别的概率,例如,分类模型可以用于对N个类别进行分类,那么分类模型可以输出包括一个N维的概率向量,其中,每一个维度的概率用于表征当前训练样本属于该类别的可能性大小。
在其他一些实施例中,服务器基于当前样本提取特征进行分类,可以是计算当前样本提取特征和各个当前训练类别对应的类别特征之间的特征距离,当当前样本提取特征与类别特征之间的特征距离小于距离阈值时,将该类别特征对应的当前训练类别确定为当前训练样本所属的分类类别,此时,当前分类结果可以是该分类类别的类别标识。其中当前训练类别对应的类别特征可以通过以下方式确定:收集多张该训练类别对应的内容样本,通过embedding模型提取得到这些内容样本的特征向量,然后计算一个平均向量,作为该训练类别对应的类别特征。
步骤210,基于当前分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型,其中,待训练的特征提取模型是基于分类任务序列中,当前分类任务对应的前向分类任务进行训练得到的。
其中,待训练的特征提取模型是基于分类任务序列中,当前分类任务对应的前向分类任务进行训练得到的。当前分类任务对应的前向分类任务指的是本轮训练中在当前分类任务之前执行的所有分类任务,例如,当分类任务序列中各个分类任务按照顺序执行时,当前分类任务对应的前向分类任务指的是排序在当前分类任务之前的所有分类任务,由于待训练的特征提取模型是基于分类任务序列中当前分类任务对应的前向分类任务进行训练得到的,待训练的特征提取模型提取的特征可以学习到前向分类任务对应的训练类别,可以很好地支持与前向分类任务对应的训练类别的分类任务。
具体地,当前训练样本为标注了类别标签的内容样本,服务器在得到当前训练样本对应的当前分类结果后,可以基于当前分类结果和类别标签之间的差异确定目标模型损失值,基于目标模型损失值调整待训练的特征提取模型的模型参数并继续训练,直至满足训练停止条件,得到当前分类任务对应的训练后的特征提取模型。其中训练停止条件可以是损失值达到最小值、训练时长达到预设时长或者训练次数达到预设次数中的任意一种。模型参数是指模型内部的变量参数,对于神经网络模型,也可以称为神经网络权重(weight)。可以理解的是,对于第一个执行的分类任务,待训练的特征提取模型可以是初始化的特征提取模型,或者是预训练的特征提取模型。当前分类任务对应的训练后的特征提取模型学习到了与前分类任务对应的当前训练类别,可以支持与当前训练类别对应的分类任务。
在一些实施例中,当前分类结果基于分类模型得到,服务器基于当前分类结果和类别标签之间的差异确定目标模型损失值具体可以是:基于当前分类结果中与类别标签对应的预测概率确定当前分类结果和类别标签之间的差异,进而确定目标模型损失值。在其他一些实施例中,当前分类结果基于当前样本提取特征和各个当前训练类别对应的类别特征之间的特征距离得到,服务器基于当前分类结果和类别标签之间的差异确定目标模型损失值具体可以是:获取当前分类结果对应类别的类别特征与类别标签对应的类别特征之间的特征距离,将该特征距离作为当前分类结果和类别标签之间的差异,进而确定目标模型损失值。
步骤212,将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于内容特征提取模型对内容进行特征提取。
具体地,对于分类任务序列中的每一个分类任务,服务器执行上述步骤204-步骤206得到该分类任务对应的训练后的特征提取模型,每执行一个分类任务并基于该分类任务训练完成后,将该分类任务对应的训练后的特征提取模型进行保存,并在执行下一个分类任务时,将当前保存的特征提取模型作为待训练的特征提取模型,如此循环进行直至所有分类任务执行完后,将最终得到的特征提取模型作为内容特征提取模型,以基于内容特征提取模型对内容进行特征提取。由于在循环执行的过程中,每一个分类任务对应的待训练的特征提取模型是基于分类任务序列中,当前分类任务对应的前向分类任务进行训练得到的,因此待训练的特征提取模型学习到的分类类别是一直累积的,在所有分类任务执行完成后得到的内容特征提取模型即学习到了分类任务序列中各个分类任务对应的训练类别。其中,在执行分类任务序列中的各个分类任务时,可以是按照分类任务序列中先后顺序依次执行的,也可以是随机抽取执行的。
上述内容处理方法中,通过确定分类任务序列中的当前分类任务,获取所述当前分类任务对应的当前训练类别,获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征,基于所述当前样本提取特征进行分类,得到当前分类结果,基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,由于训练后的特征提取模型是基于分类结果训练得到的,并且由于将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,分类任务序列包括多个分类任务,其中至少两个分类任务对应的训练类别不同,因此,特征提取模型在训练过程中学习了变化式的分类任务,由于训练过程中分类任务的变化,使得内容特征提取模型在保持特征提取能力的同时,能够学习到区分不同类别内容的特征的能力,因此能够提高特征提取的准确度。
在一些实施例中,获取当前分类任务对应的当前训练类别包括:获取当前分类任务对应的当前类别集合;其中,当前类别集合是从训练类别集合中去除前向训练类别得到的,前向训练类别是分类任务序列中,当前分类任务的前向分类任务对应的训练类别;从当前类别集合中抽取类别,将抽取得到的类别作为当前分类任务对应的当前训练类别。
其中,训练类别集合指的指本轮训练所要识别的所有类别组成的集合。去除指的是去掉,即不要的意思。举例说明,假设训练类别集合原有的训练类别为A、B、C、D,前向训练类别为A,则去除前向训练类别后,得到的当前类别集合中包括的类别为B、C、D。
具体地,本实施例中,分类任务序列是边训练边生成的,即每基于一个分类任务进行训练完成之后,接着抽取多个训练类别生成新的分类任务,在一轮训练结束后,所有的分类任务形成分类任务序列。对于分类任务序列中的每一个分类任务,服务器在抽取到用于生成该分类任务的训练类别后,都会从候选类别集合中去除抽取到的分类任务,实现无放回的抽取,随着分类任务的逐渐增多,候选类别集合中的训练类别逐渐减少,直至候选类别集合中所有训练类别抽取完毕后,本轮训练结束。
在一些实施例中,当最后一次抽取时候选类别集合的训练类别的数量少于分类任务的训练类别数量需求时,可以从已抽取过的类别中随机抽取进行补足。举例说明,假设每次分类任务的训练类别固定为10类,若最后一次抽取时候选类别集合的训练类别的数量为6,则从已抽取过的类别中随机抽取4个训练类别补足10类。
在其他一些实施例中,当最后一次抽取时候选类别集合的训练类别的数量少于分类任务的训练类别数量需求时,可将不足的类别设置为无效类别。举个例子,假设每次分类任务的训练类别固定为10类,若最后一次抽取时候选类别集合的训练类别的数量为6,则可将第7至第10类设置为无效类别。无效类别指的是不需要准备训练样本的类别。
上述实施例中,通过获取当前分类任务对应的当前类别集合,从当前类别集合中抽取类别,将抽取得到的类别作为当前分类任务对应的当前训练类别,在抽取完后,从当前类别集合中去除抽取的类别,将剩余的类别作为下一个分类任务的当前类别集合,从而实现无放回地抽取类别,保证候选类别集合所有的训练类别都可以学习到,使得得到的特征提取模型可以支持尽可能多的类别的分类。
在一些实施例中,上述方法还包括:将当前类别集合中未被抽取的类别划分至同一参考类别,参考类别为当前分类任务对应的屏蔽分类类别;获取参考类别对应的参考训练样本,基于待训练的特征提取模型对参考训练样本进行特征提取,得到参考样本提取特征;基于参考样本提取特征进行分类,得到参考分类结果;基于当前分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型包括:基于当前分类结果以及参考分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型。
其中,屏蔽分类类别指的是当前分类任务所不能识别的类别。例如,当前分类任务是识别内容属于类别A、类别B和类别C中具体哪一个类别的,则类别D为当前分类任务所不能识别的类别。参考训练样本可以是标注为参考类别下的任意一个类别的训练样本。例如,假设参考类别包括类别D、类别E和类别F,则参考训练样本可以是标注为类别D的训练样本、标注为类别E的训练样本或者标注为类别F的训练样本中的任意一种。
具体地,服务器在抽取用于生成当前分类任务的训练类别后,将当前类别集合中剩下的类别划分至同一参考类别,参考类别为当前分类任务对应的屏蔽分类类别,获取参考类别下的任意一个类别对应的训练样本作为参考训练样本,基于待训练的特征提取模型对参考训练样本进行特征提取,得到参考样本提取特征,然后基于参考样本提取特征进行分类,得到参考分类结果,进而服务器可以基于当前分类结果以及参考分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型。
在一些实施例中,当前分类结果包括当前训练样本为当前训练类别的当前类别可能度,参考分类结果包括参考训练样本为屏蔽分类类别对应的屏蔽类别可能度;基于当前分类结果以及参考分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型包括:基于当前类别可能度得到第一模型损失值,第一模型损失值与当前类别可能度成正相关关系;基于屏蔽类别可能度得到第二模型损失值,第二模型损失值与屏蔽类别可能度成正相关关系;基于第一模型损失值与第二模型损失值得到目标模型损失值;基于目标模型损失值对待训练的特征提取模型进行参数调整,得到当前分类任务对应的训练后的特征提取模型。
其中,可能度用于表征可能性大小,可以用概率进行表示。当前类别可能度用于表征当前训练样本为当前训练类别的可能性大小。屏蔽类别可能度用于表征参考训练样本为屏蔽分类类别的可能性大小。正相关关系指的是:在其他条件不变的情况下,两个变量变动方向相同,一个变量由大到小变化时,另一个变量也由大到小变化。可以理解的是,这里的正相关关系是指变化的方向是一致的,但并不是要求当一个变量有一点变化,另一个变量就必须也变化。例如,可以设置变量a为10至20时,变量b为100,当变量a为20至30时,变量b为120。这样,a与b的变化方向都是当a变大时,b也变大。但在a为10至20的范围内时,b可以是没有变化的。
具体地,当前训练样本为当前训练类别下的训练样本,则当前训练样本为前训练类别的正样本,其样本标签为1,服务器根据当前类别可能度与1之间的差异得到第一模型损失值,屏蔽训练样本为屏蔽训练类别下的训练样本,则屏蔽训练样本为屏蔽训练类别的正样本,其样本标签为同样为1,服务器可以根据屏蔽类别可能度与参考训练样本对应的样本标签之间的差异得到第二模型损失值,将第一模型损失值与第二模型损失值相加得到目标模型损失值,进而基于目标模型损失值对待训练的特征提取模型进行参数调整,得到当前分类任务对应的训练后的特征提取模型。
上述实施例中,通过将当前类别集合中未被抽取的类别划分至同一参考类别,进而服务器在训练过程中可以基于参考类别对应的参考训练样本来对待训练的特征提取模型进行训练,由于考虑到了屏蔽分类类别的样本特征,可以保证训练得到的特征提取模型的可靠性。
在一些实施例中,获取当前分类任务对应的当前训练类别包括:获取多个候选类别集合;从多个候选类别集合中去除前向候选类别集合,得到剩余的候选类别集合;前向候选类别集合是分类任务序列中,当前分类任务的前向分类任务对应的候选类别集合;从剩余的候选类别集合中抽取候选类别集合,将抽取得到的候选类别集合中的候选类别作为当前分类任务对应的当前训练类别。
其中,候选类别集合中包括多个类别,多个指的是至少两个。一个候选类别集合可以用于生成一个分类任务,生成的分类任务可以识别该候选类别集合中所有的类别。
具体地,本实施例中,分类任务序列是边训练边生成的,即每基于一个分类任务进行训练完成之后,抽取一个候选类别集合生成分类任务,在一轮训练结束后,所有的分类任务形成分类任务序列。对于分类任务序列中的每一个分类任务,服务器在抽取到用于生成该分类任务的候选类别集合后,都会从多个候选类别集合中去除抽取到的候选类别集合,实现无放回的抽取,随着分类任务的逐渐增多,候选类别集合的数量逐渐减少,直至所有的候选类别集合抽取完毕,本轮训练结束。
上述实施例中,在生成训练任务时,可以抽取候选类别集合来生成训练任务时,可以提高抽取效率,从而提高训练效率。
在一些实施例中,获取多个候选类别集合包括:获取用于分类训练的训练类别集合;获取分类任务序列中的任务数量,基于任务数量对训练类别集合进行划分,得到多个候选类别集合。
其中,任务数量指的是分类任务的数量。分类任务的数量是事先确定的,服务器可以基于任务数量对训练类别集合进行划分,得到多个候选类别集合。在一些实施例中,服务器可以基于分类任务的数量对训练类别集合进行等数量划分,得到多个候选类别集合。例如,分类任务数量是10,训练类别集合中包括1000个训练类别,则可以将训练类别集合划分为10个候选类别集合,每个候选类别集合中包括10个训练类别。在其他一些实施例中,服务器可以基于分类任务的数量对训练类别集合进行随机划分,得到多个候选类别集合,各个候选类别集合中的训练类别以及数量是随机的,各个候选类别集合中的训练类别的数量可以相同,也可以不同。
上述实施例中,通过获取分类任务序列中的任务数量,基于任务数量对训练类别集合进行划分,得到多个候选类别集合,保证训练过程中可以学习到训练类别集合所有的分类任务,提高特征提取模型的泛化性能。
在一些实施例中,基于当前分类结果对待训练的特征提取模型进行训练,得到当前分类任务对应的训练后的特征提取模型包括:获取当前训练样本的对比训练样本对应的对比样本提取特征,基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值;基于当前分类结果得到分类损失值;基于特征提取损失值以及分类损失值得到目标模型损失值;基于目标模型损失值对待训练的特征提取模型进行参数调整,得到当前分类任务对应的训练后的特征提取模型。
其中,对比训练样本指的是用于与当前训练样本进行对比以确定特征提取损失值的内容样本。对比训练样本可以包括正向对比训练样本或者负向对比训练样本中的至少一种,正向对比训练样本指的是与当前训练样本相似的内容样本,负向对比训练样本指的是与当前训练样本不相似的内容样本。
具体地,服务器可以基于待训练的特征提取模型对对比训练样本进行特征提取,得到对比训练样本对应的样本提取特征作为对比样本提取特征,基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值,基于当前分类结果与当前训练样本的类别标签之间的差异得到分类损失值,基于特征提取损失值以及分类损失值并参考以下公式(1)计算得到目标模型损失值,其中,Ltotal为目标模型损失值,Lem为特征提取损失值,Lclass为分类损失值,w1、w2分别为损失值权重。
Ltotal=w1Lem+w2Lclass 公式(1)
在一些实施例中,服务器基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值具体可以是:计算对比样本提取特征和当前样本提取特征之间的余弦相似度,用得到的余弦相似度表征当前样本提取特征与对比样本提取特征的差异,从而可以计算余弦相似度与训练标签之间的差值得到特征提取损失值。其中,当对比样本提取特征为正向对比训练样本时,训练标签为1,当当对比样本提取特征为负向对比训练样本时,训练标签为0。
在一些实施例中,服务器基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值具体可以是:对当前样本提取特征与对比样本提取特征进行相似度分类,分为两类,相似和不相似,得到相似的概率和不相似的概率,取概率较大值为分类结果,用分类结果的概率值表征当前样本提取特征与对比样本提取特征的差异,进而可以计算分类结果的概率和训练标签之间的差值得到特征提取损失值。其中,当对比样本提取特征为正向对比训练样本时,训练标签为1,当当对比样本提取特征为负向对比训练样本时,训练标签为0。
在一些实施例中,服务器基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值具体可以是:计算当前样本提取特征与对比样本提取特征之间的特征距离,用该特征距离表征当前样本提取特征与对比样本提取特征的差异,并将该特征距离作为特征提取损失值,其中特征距离例如可以是欧式距离或者是L2距离。
上述实施例中,服务器在对待训练的特征提取模型进行训练时,同时结合分类结果得到的分类损失值以及基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值来进行参数调整,使得的训练得到的特征提取模型提取的特征更加准确。
在一些实施例中,对比样本提取特征包括正向对比训练样本对应的正向样本提取特征以及负向对比训练训练样本对应的负向样本提取特征;基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值包括:获取正向特征差异值,正向特征差异值为当前样本提取特征与正向样本提取特征之间的特征差异值;获取负向特征差异值,负向特征差异值为当前样本提取特征与负向样本提取特征之间的特征差异值;基于正向特征差异值与负向特征差异值确定特征提取损失值。
具体地,服务器基于待训练的特征提取模型对正向对比训练样本提取特征,得到正向对比训练样本对应的正向样本提取特征,基于待训练的特征提取模型对负向对比训练样本提取特征,得到负向对比训练样本对应的负向样本提取特征,获取当前样本提取特征与正向样本提取特征之间的特征差异值得到正向特征差异值,获取当前样本提取特征与负向样本提取特征之间的特征差异值得到负向特征差异值,最后基于正向特征差异值与负向特征差异值确定特征提取损失值。
在一些实施例中,服务器可以参考以下公式(2)确定特征提取损失值,其中xa为当前样本提取特征,xp为正向样本提取特征,xn为负向特征差异值,||xa-xp||表示xa和xp之间的L2距离,即正向特征差异值,||xa-xn||表示xa和xn之间的L2距离,即负向特征差异值,公式(2)的目的是使得当前训练样本与负向对比训练样本的距离比该当前训练样本与正向对比训练样本的距离大α,α为margin(间隔项),α的取值可以根据需要进行设定,例如α可以为4。
Ltri=max(||xa-xp||-||xa-xn||+α,0) 公式(2)
由公式(2)可以看出,只有在当前训练样本与负向对比训练样本的距离比该当前训练样本与正向对比训练样本的距离大α时,特征提取损失值才为0,否则,特征提取损失值大于0,因此降低损失值的过程中,当前训练样本与负向对比训练样本的距离,向比当前训练样本与正向对比训练样本的距离大α的方向发展,从而使得特征提取模型提取的特征能够更好地注重分类特征的保持。
在一些实施例中,负向对比训练样本可以通过以下步骤获取:对当前训练样本所属的样本集合中其他训练样本进行特征提取,得到对比样本提取特征,计算当前训练样本对应的当前样本提取特征与各个对比样本提取特征之间的特征距离,按照特征距离从小到大对样本集合中其他训练样本进行排序,以选取特征距离相对较小的训练样本作为负向对比训练样本。其中当前训练样本所属的样本集合可以预先进行样本去重操作,通过选取特征距离相对较小的训练样本作为负向对比训练样本,可以选取到困难样本(Hard Sample),以缓解样本不均衡的问题,使得训练得到的模型准确性更高。其中,困难样本是指这些负向对比训练样本与当前训练样本属于不同的类别但是特征距离又小,对于分类而言比较困难。其中,去重操作指的是对于相似的一个或者多个训练样本,保留其中的一个,将其他的几个去掉。
上述实施例中,由于特征提取损失值是基于正向特征差异值与负向特征差异值确定的,使得特征提取模型在进行相似性的度量学习时,考虑到了类间特征距离过小对分类的影响,提高了特征提取模型用于分类时的准确性。
在一些实施例中,如图3所示,提供了一种内容处理方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤302,确定分类任务序列中的当前分类任务;其中分类任务序列包括多个分类任务。
步骤304,获取当前分类任务对应的当前训练类别,其中,分类任务序列中至少两个分类任务对应的训练类别不同。
步骤306,获取当前训练类别对应的当前训练样本,基于待训练的特征提取模型对当前训练样本进行特征提取,得到当前样本提取特征。
步骤308,获取当前分类任务对应的当前分类模型,基于当前分类模型对样本提取特征进行分类,得到分类结果。
其中,当前分类任务对应的当前分类模型可以为初始化的分类模型,或者是预训练得到的分类模型。具体地,服务器将样本提取特征输入当前分类模型,得到分类结果。
步骤310,基于当前分类结果对待训练的特征提取模型的模型参数及当前分类模型的模型参数进行联合调整,得到调整后的特征提取模型以及参数调整后的内容分类模型。
具体地,服务器基于分类结果确定目标模型损失值,然后反向传播该损失值,联合调整待训练的特征提取模型的模型参数及当前分类模型的模型参数,得到调整后的特征提取模型以及调整后的当前分类模型。在一些实施例中,可以使用随机梯度下降算法、Adagrad((Adaptive Gradient,自适应梯度)算法、Adadelta(AdaGrad算法的改进)、RMSprop(AdaGrad算法的改进)、Adam(Adaptive Moment Estimation,自适应矩估计)算法等来调整待训练的特征提取模型的模型参数及当前分类模型的模型参数。
步骤312,判断当前分类任务是否满足任务停止条件,若是,则进入步骤314,若否,则进入步骤306。
其中,任务停止条件指的是基于分类任务进行训练的训练停止条件,训练停止条件可以是损失值达到最小值、训练时长达到预设时长或者训练次数达到预设次数中的任意一种。当前分类任务是否满足任务停止条件指的是基于当前分类任务进行的训练满足训练停止条件。
步骤314,将调整后的特征提取模型作为当前分类任务对应的训练后的特征提取模型。
步骤316,将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于内容特征提取模型对内容进行特征提取。
在一些实施例中,如图4所示,为联合训练特征提取模型和分类模型的示意图。参考图4,服务器获取当前分类任务对应的三元组样本,三元组样本包括当前训练样本及当前训练样本对应的正向对比训练样本、负向对比训练样本,将三元组样本中各个样本输入卷积神经网络中提取基础特征信息,然后将提取的基础特征信息输入embedding模型中,基于embedding模型对三元组样本中各个样本进行特征提取得到各个样本各自的特征向量,然后参照上述公式(2)计算得到特征提取损失值,将三元组样本中任意一个样本的特征向量输入分类模型中,通过分类模型中的语义层进一步抽取语义特征后再通过分类层(Fc_class)进行分类,然后基于分类结果和类别标签之间的差异得到分类损失值,对特征提取损失值和分类损失值加权求和得到目标模型损失值,基于目标模型损失值联合训练卷积神经网络、embedding模型和分类模型,得到当前分类任务对应的训练后的embedding模型。其中,在基于分类任务进行训练地过程中,分类模型学习的是变化的分类任务,即每次学习不一样的分类任务。在一些实施例中,对于某个标注了类别标签的样本,服务器可以参照以下公式(3)计算得到分类损失值,其中,t[i]为真值标签向量,o[i]为分类模型对各个训练类别的预测概率值:
上述公式(3)中,当某个标签位真值为1时,加号左侧生效,当真值为0时,右侧生效,故可以学习到该样本在所有标签下监督信息。
上述实施例中,通过联合特征提取与分类任务同时学习,合并特征提取与分类任务,在同一模型结构中学习特征提取模型以及分类模型,可以通过梯度更新权重控制,避免分类影响特征提取模型的特征表达。
在一些实施例中,上述方法还包括:获取目标分类任务对应的目标分类类别;获取目标分类类别对应的目标分类模型;将内容特征提取模型与目标分类模型进行拼接,得到内容分类模型;基于内容分类模型对目标分类类别对应的目标训练样本进行分类,得到目标分类结果;在保持内容特征提取模型的模型参数不变的情况下,根据目标分类结果对内容分类模型中的目标分类模型进行参数调整,得到调整后的内容分类模型。
其中,目标分类任务指的是实际业务场景中需要执行的分类任务。目标分类任务对应的目标分类类别指的是在执行目标分类任务的过程中所要识别的类别。目标分类任务对应的目标分类类别可以与训练过程中分类任务序列所涉及的类别相同,也可以与训练过程中分类任务序列所涉及的类别不同。目标分类类别对应的目标分类模型可以是初始化的分类模型,也可以是预训练的分类模型。
具体地,服务器将内容特征提取模型与目标分类模型进行拼接,得到内容分类模型,内容特征提取模型的输入作为目标分类模型的输入,由目标分类模型输出分类结果。要使得目标分类任务能够准确地进行类别识别,需要先对内容分类模型进行训练,由于内容分类模型中的内容特征提取模型为根据分类任务序列训练得到的模型,在训练过程中,学习了变化式的分类任务,可以很好地支持任意类别组合的目标分类任务,因此在训练内容分类模型的过程中,可以固定内容特征提取模型的模型参数,只调整目标分类模型的模型参数。具体来说,服务器将目标分类类别对应的目标训练样本输入内容分类模型中,通过内容分类模型的内容特征提取模型提取得到特征向量,将得到的特征向量输入内容分类模型的目标分类模型中,得到目标分类结果,基于目标分类结果和目标训练样本的类别标签之间的差异得到目标模型损失值,在保持内容特征提取模型的模型参数不变的情况下,根据目标模型损失值对目标分类模型进行参数调整,重复将目标分类类别对应的目标训练样本输入内容分类模型中的步骤,直至满足训练停止条件,得到调整后的内容分类模型。该调整后的内容分类模型可以应用于实际的业务场景对内容进行类别识别。
在一些实施例中,如图5所示,为在目标任务下训练内容分类模型示意图。服务器获取目标分类任务对应的训练样本,该训练样本中包括了目标分类任务对应的各个目标分类类别的内容样本,将训练样本输入CNN中,提取基础特征信息,然后将提取的基础特征信息输入embedding模型中,基于embedding模型对训练样本提取得到特征向量,将特征向量输入分类模型中,通过分类模型中的语义层进一步抽取语义特征后再通过分类层(Fc_class)进行分类,然后基于分类结果和类别标签之间的差异得到分类损失值,将该分类损失值作为目标模型损失值,在固定CNN和embedding模型的模型参数的情况下,基于该目标模型损失值训练分类模型的语义层和分类层,得到训练后的内容分类模型。
上述实施例中,可以在不更新特征提取模型的模型参数的情况下仅学习分类任务即可训练得到内容分类模型,使得特征提取模型可以快速学习新语义类别,满足语义层面的需求变化。
在一些实施例中,上述方法还包括:获取检索内容,基于内容特征提取模型对检索内容进行特征提取,得到检索内容对应的检索特征;基于检索特征进行分类,得到检索分类结果,获取检索分类结果的分类类别对应的差异阈值;计算目标内容集合中各个目标内容的内容提取特征与检索特征之间的特征差异;从目标内容集合中选取特征差异小于差异阈值的目标内容,基于选取得到的目标内容得到检索内容对应的检索结果。
其中,检索内容指的是需要检索相似内容的内容。检索内容对应的检索特征指的是检索内容对应的特征向量。分类结果的分类类别指的是分类结果所表征的分类类别。分类类别对应的差异阈值指的是在检索相似内容时对内容进行筛选所依据的特征距离阈值。目标内容集合指的是检索数据库中保存的内容所组成的集合,检索数据库为预先建立的数据库,该数据库中存储了大量的目标内容和各个目标内容的内容提取特征,各个目标内容和目标内容的内容提取特征对应存储。目标内容的内容提取特征指的是对目标内容提取得到的特征向量。
具体地,在进行检索时,服务器获取到检索内容后,基于内容特征提取模型对检索内容进行特征提取,得到检索内容对应的特征向量作为检索内容对应的检索特征,基于检索特征进行分类,得到检索特征对应的分类结果作为检索分类结果,获取检索分类结果的分类类别对应的差异阈值,计算目标内容集合中各个目标内容的内容提取特征与检索特征之间的特征距离得到目标内容的内容提取特征与检索特征之间的特征向量距离作为特征差异,由于特征距离与相似度成负相关,即特征距离越小,相似度越大,因此,服务器从目标内容集合中选取特征差异小于差异阈值的目标内容,按照特征差异从小到大对各个目标内容进行排序,选取排序靠前的目标内容得到检索内容对应的检索结果。
在一些实施例中,服务器获取检索分类结果的分类类别对应的差异阈值可以是从预先建立的阈值表中获取的,预先建立的阈值表中预先存储了各个类别对应的特征距离阈值。
上述实施例中,通过训练得到的内容特征提取模型提取检索内容的特征向量,可以准确地检索出所需要的检索结果,通过由于检索过程中所依据的差异阈值是根据分类结果的分类类别获取的,可以满足不同业务场景的业务需求。
在其他一些实施例中,可以是理解的是,特征距离阈值在实际的检索应用中是可以动态变化的,以图像为例,如检索的图像是人物自拍类型的图像,则由于人物背景/表情装饰的变化,特征距离阈值要调高,如检索的图像篮球比赛、游戏类型等,则由于人物服装/环境相似度大等原因,特征距离阈值要调低以避免误匹配。另一方面由于业务需求不同,在检索应用中还需要面对不确定的定制化需求来调整特征距离阈值,同样以图像为例,如应用到某主题的图像检索中,需要对该主题(如古装剧类别)的特征距离阈值进行调高使得检索结果中有更多用户感兴趣的该主题图像等。基于此,需要根据不同的应用需求对特征距离阈值进行动态调整。
在其他一些实施例中,检索分类结果的分类类别对应的差异阈值的确定步骤包括:获取多个相似训练样本对;获取相似训练样本对中的训练样本之间的样本特征差异值,对样本特征差异值进行统计,得到差异统计值;确定检索分类结果的分类类别对应的阈值调整方向,基于阈值调整方向确定对应的调整值,基于调整值对差异值统计值进行调整,得到检索分类结果的分类类别对应的差异阈值。
其中,训练样本对中的训练样本之间的样本特征差异值可以是训练样本对中的训练样本之间的特征距离.统计具体可以是求平均、求中位数中的其中一种。
具体地,服务器可以从相似训练样本对数据集中获取多个相似训练样本对,获取相似训练样本对中的训练样本之间的样本特征差异值,对样本特征差异值进行统计,得到差异统计值,确定检索分类结果的分类类别对应的阈值调整方向,阈值调整方向可以是对特征距离阈值进行调高或对特征距离阈值进行调低中的其中一种,当阈值调整方向是对特征距离阈值进行调高时,基于阈值调整方向确定对应的调整值,基于调整值对差异值统计值进行调高,得到检索分类结果的分类类别对应的差异阈值;而当阈值调整方向是对特征距离阈值进行调低时,基于阈值调整方向确定对应的调整值,基于调整值对差异值统计值进行调低,得到检索分类结果的分类类别对应的差异阈值。
在一些实施例中,服务器可以从相似训练样本对数据集中获取所有的相似训练样本对,对所有相似样本对的样本特征差异值进行统计得到差异统计值,得到的差异统计值为全局特征距离阈值,可以用于表征整个数据集中相似训练样本对之间的相似情况,对于需要调高的特征距离阈值,可以确定调整值为全局特征距离阈值的1/2,则可以采用全局特征距离+1/2全局特征距离(thr/2+thr)作为调整后的差异阈值,对于需要调高的特征距离阈值,直接采用全局特征距离作为调整后的差异阈值,此时调整值为0。
上述实施例中,通过统计得到差异统计值,确定检索分类结果的分类类别对应的阈值调整方向,基于阈值调整方向确定对应的调整值,基于调整值对差异值统计值进行调整,得到检索分类结果的分类类别对应的差异阈值,实现了根据不同地业务需求自动化确定差异阈值,在满足业务需求的同时提高了检索效率。
在一些实施例中,如图6所示,为检索过程的示意图。服务器预先基于历史库存的特征向量及对新的内容提取得到的特征向量构建内容数据库,内容数据库中各个内容与对应的特征向量对应存储。在进行检索时,对检索内容提取特征向量并进行分类,基于分类结果获取相似度阈值,然后根据该阈值去内容数据库中进行检索,在检索的过程中计算检索内容的特征向量和内容数据库中的特征向量间的相似度,选取相似度大于相似度阈值的内容作为输出。其中,历史库存的特征向量可以从第三方服务器获取的,或者是服务器在历史时间段保存的。检索内容的特征向量和内容数据库中的特征向量之间的相似度可以通过余弦相似度进行计算。
本申请还提供一种应用场景,该应用场景可适用于上述的内容处理方法。在该应用场景中,内容为图像,该方法可以应用于图像检索,在图像检索的业务场景中,下游的分类需求是变化且不确定的,如何在embedding度量学习同时支持这些不确定性分类需求是业务拓展上一个问题,本申请实施例中,通过在学习阶段可变化式地学习随机分类任务,从而在保持embedding度量学习能力同时具备这些分类支持,下游应用面对新分类时模型只需要有限训练新分类层任务即可胜任,且新类别应用时不需要对原embedding更新,仅需要更新分类参数即可,对于海量数据业务来说应用非常友好。具体地,该图像处理方法在该应用场景的应用如下:
一、首先获取相似样本对作为训练样本,对相似样本对标注类别标签,其中,每个相似样本只需要标注一张图像,由于是相似样本对,另一张图像的类别相同,可以将被标注的图像看成是基础图像(anchor),另一张相似图像看成是已标注的图像对应的正样本。其中,由于下游不确定性分类任务存在,训练中模型所学习过的分类需要尽量多(至少覆盖相似样本对的分类任务服务)
二、模型训练。
其中,所要训练的模型包括三个部分:基础特征提取模型、embedding模型、分类模型。其中,基础特征提取模型和embedding模型共同构成特征提取模型,基础特征提取模型训练采用resnet101,参数如表1,包含Conv1、Conv2_x-Conv5_x的5个部分,Conv1为7×7×64的卷积,步长(stride)为2,Conv2_x包括3×3最大池化层(max pool)和3个ResNet模块(block),Conv3_x-Conv5_x分别包括3个ResNet模块、4个ResNet模块、23个ResNet模块以及3个ResNet模块。
表1
embedding模型的参数如表2所示,包括一层全连接层。分类模型的参数如表3所示,包括语义层(Semantic_layer)和分类层(Fc_class)。语义层用于对embedding特征获取一阶信息,Fc_class分类层用于提取二阶信息作为分类。对于需要更多特征交叉的应用可以加深语义层。
表2
层的名称 | 输出尺寸 | 层 |
Embedding | 1x128 | full connetction |
表3
层的名称 | 输出尺寸 | 层 |
Semantic_layer | 1x128 | full connetction |
Fc_class | 1x11 | full connetction |
由于不确定分类问题的分类数量、分类类别都是不确定的,可以采用固定的分类数量M=10类来降低不确定性(应用需要特殊处理的类别常低于10个)。另外,除了需要学习的M个分类外,训练类别集合中还有很多样本不属于这M个分类,故需要设置一个参考分类,将这些不属于这M个分类的类别划分到参考类别,故Fc_class输出M+1个分类。固定分类数量的好处是模型可以学习一个稳定的分类范式,同时避免过多的不确定性对模型收敛带来影响。需要说明的,基础特征提取模型、embedding模型以及分类模型也可以采用其他模型结构,如基础特征采用resnet18CNN模块,如embedding模型采用多层全连接层连接等。具体训练过程如下:
1、参数初始化:Conv1-Conv5可以采用在ImageNet数据集上预训练的ResNet101的参数,新添加的层(语义层、分类层、embedding模型的全连接层)可以采用方差为0.01,均值为0的高斯分布进行初始化。
2、设置学习参数:设置所有层参数都需要学习。
3、学习率lr:基础特征提取模型、embedding模型、语义层均采用lr1=0.005学习率,分类层Fc_class采用lr2=0.05(为其他结构的10倍)。每经过10轮迭代后学习率lr变为原来的0.1倍。因为分类学习的是对图像的强监督,比学习全局特征的相似度度量损失(即embedding模型的损失)收敛快也因而更容易过拟合,通过将分类层的学习率设置为其他结构的10倍,可以避免分类信息过快传递到其他层
4、学习过程:对于训练类别集合中的训练类别,进行epoch轮迭代;每轮迭代处理一次全量类别,一共进行10轮学习。其中,对于某轮迭代,从训练类别集合中无放回的每次抽取10个分类类别(以及该类别下所有相似样本对),直到所有分类都遍历一次,算一个epoch(轮)学习。最后一次抽取若不足10个分类,则从已经学习过的类别中随机抽取补足10类。每epoch轮迭代中的具体步骤如下:
4.1、构建某个(i)分类任务及该任务下预处理。对第i个分类任务,由于是新的分类任务,故Fc_class层参数需要重新初始化:具体可以采用方差为0.01,均值为0的高斯分布进行初始化。从训练类别集合中中,随机抽取10个分类,剩下未被抽取的类别归为第11类(参考类别),记录10个分类中训练样本量最大的类别的样本数量K对(如第2个类别的图像数最多,有K个图像对),从这11类中无放回地进行迭代(iter)学习,每次从所有这11个类别中抽取(bs/11)个相似样本对,则对于10个目标分类,最多需要K/(bs/11)=11K/bs个iter完成所有10类的数据遍历,共进行五次,故11K/bs*5个iter。完成本分类任务的所有iter后,抽取下一个(i+1)分类任务,直到所有分类都训练一次结束本epoch学习,得到训练后的图像特征提取模型。其中,bs指的是每次抽取的一批样本(batch)的数量。每次迭代,模型训练过程如下:
4.1.1、将模型的所有参数都设为需要学习状态。
4.1.2、获取batch中所有相似样本对对应的三元组,将三元组中任意一张图像输入特征提取模型中得到特征向量,通过分类模型进行分类,得到分类结果,基于分类结果和样本标签并参考上文中的公式(3)计算分类损失值,其中,真值标签向量t[i]为1*11的0、1向量,o[i]为分类模型对11个类别(10个随机抽取的类别加上一个参考类别)的预测概率值。
对三元组中每一张图像通过特征提取模型得到特征向量并参考上文公式(2)中triplet损失函数计算特征提取损失值,将两个损失值进行加权求和得到目标模型损失值。
其中,对于batch中每一个相似样本对x,可以通过以下方式生成三元组:从batch中剩余的相似样本对中每对随机选择一张图像计算embedding(当前模型embedding模块的输出),计算embedding与x的距离,按距离从小到大排序,取前10个样本作为负样本,分别与相似样本对x组成三元组,故每个相似样本对产生10个三元组,整个batch得到10*bs个三元组。可以理解的是,三元组样本也可以是在训练之前生成的,并与对应的相似样本对对应存储,根据相似样本对可以直接获取到对应的三元组。
4.1.3、采用随机梯度下降算法,将上一步得到目标模型损失值进行梯度后向计算得到全部模型参数的更新值,使用该更新值对全部模型的参数进行更新。
5、目标分类任务上分类学习。对于新的业务需要进行新分类任务学习,其中图像特征提取模型(包括基础特征提取模型和embedding模型)不再更新,仅更新分类模型的语义层和分类层参数即可。当目标类别不足10个,可继续训练,假设目标P个类别,则第P+1到第10类为无效类别,第11类依然为其他类别。其中,由于图像特征提取模型不再需要更新,故不准备相似样本对,仅需要准备标注了类别标签的单张图像即可。假设目标10个类别最大类别样本数量为K个图像。训练步骤与上述类似,其中,表1、2参数固定不更新;每个batch从10+1类下分别抽取bs/11个样本训练,仅采用分类损失值计算梯度并更新表3的参数,共训练11K/bs*5个iter停止。
三、图像检索
1、对于检索过程中阈值固定的情况。对于检索图像,直接输入训练后的图像特征提取模型中,得到特征向量embedding,将特征向量embedding与图像数据库中各个图像的embedding计算特征距离,选取特征距离小于预设阈值的图像进行召回,得到检索图像对应的相似图像。
2、对于检索过程中不同的类别对应不同阈值的情况。参考图7,为对图像进行检索的过程示意图,对于检索图像,通过基础特征提取模型CNN和embedding模型提取特征向量后,再通过训练好的分类模型进行分类,得到分类结果,根据该分类结果从预先建立的分类阈值表中查询到分类结果对应类别的特征距离阈值,然后根据该特征距离阈值从图像数据库中选择小于该特征距离阈值的图像进行召回。其中,预先建立的分类阈值表中存储了各个类别对应的特征距离阈值。图像数据库中存储了各个图像以及图像对应的特征向量,图像对应的特征向量可以通过基础特征提取模型CNN和embedding模型提取得到。
本申请实施例在上述应用场景中具有如下的有益效果:
1、支持不确定分类的下游任务的embedding学习:通过embedding学习中随机构造分类任务,使得embedding在满足相似度三元组度量的同时,更支持后续分类学习。在上述的学习下,embedding可以收敛到一个支持语义表达的相似度度量最优模型参数位置。从而两者在联合学习后均有更好的应用表现。
2、更深的分类特征提取层,可以抗过拟合及语义信息提取:加入了语义层可以从embedding中提取更深层次的语义信息,另一方面也避免分类过早影响embedding学习。
3、支持不更新图像的embedding(特征向量)情况下,仅学习分类的下游应用,提升了embedding在下游语义任务上的扩展,以在不更新库存特征下面对不确定的、定制化的业务需求,避免embedding数据库升级带来的成本消耗。
本申请还提供一种应用场景,该应用场景可适用于上述的内容处理方法。在该应用场景中,通过与上文应用场景相同的步骤训练得到图像特征提取模型,将该图像特征提取模型与初始化的分类模型进行拼接得到图像分类模型,在保持图像特征提取模型的模型参数不变的情况下,通过该特征提取模型在目标分类任务下训练分类模型,训练结束后,得到训练后的图像分类模型,应用于广告插入业务中,如对于篮球比赛视频,随机插入广告,对于非篮球比赛不插入,则对用户即将播放视频的各帧,判断该帧分类是否为篮球,是,则返回该帧对应的视频时间点。
应该理解的是,虽然图2-图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图7中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一些实施例中,如图8所示,提供了一种内容处理装置800,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:
任务确定模块802,用于确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;
训练类别获取模块804,用于获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;
特征提取模块806,用于获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;
分类模块808,用于基于所述当前样本提取特征进行分类,得到当前分类结果;
训练模块810,用于基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;
模型获得模块812,用于将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
上述内容处理装置,通过确定分类任务序列中的当前分类任务,获取所述当前分类任务对应的当前训练类别,获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征,基于所述当前样本提取特征进行分类,得到当前分类结果,基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,由于训练后的特征提取模型是基于分类结果训练得到的,并且由于将根据分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,分类任务序列包括多个分类任务,其中至少两个分类任务对应的训练类别不同,因此,特征提取模型在训练过程中学习了变化式的分类任务,由于训练过程中分类任务的变化,使得内容特征提取模型在保持特征提取能力的同时,能够学习到区分不同类别内容的特征的能力,因此能够提高特征提取的准确度。
在一些实施例中,所述训练类别获取模块还用于获取所述当前分类任务对应的当前类别集合;其中,所述当前类别集合是从训练类别集合中去除前向训练类别得到的,所述前向训练类别是所述分类任务序列中,所述当前分类任务的前向分类任务对应的训练类别;从所述当前类别集合中抽取类别,将抽取得到的类别作为所述当前分类任务对应的当前训练类别。
上述实施例中,通过获取当前分类任务对应的当前类别集合,从当前类别集合中抽取类别,将抽取得到的类别作为当前分类任务对应的当前训练类别,在抽取完后,从当前类别集合中去除抽取的类别,将剩余的类别作为下一个分类任务的当前类别集合,从而实现无放回地抽取类别,保证候选类别集合所有的训练类别都可以学习到,使得得到的特征提取模型可以支持尽可能多的类别的分类。
在一些实施例中,所述训练类别获取模块还用于将所述当前类别集合中未被抽取的类别划分至同一参考类别,所述参考类别为所述当前分类任务对应的屏蔽分类类别;特征提取模块还用于获取所述参考类别对应的参考训练样本,基于所述待训练的特征提取模型对所述参考训练样本进行特征提取,得到参考样本提取特征;分类模块还用于基于所述参考样本提取特征进行分类,得到参考分类结果;训练模块还用于基于所述当前分类结果以及所述参考分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型。
在一些实施例中,所述当前分类结果包括所述当前训练样本为当前训练类别的当前类别可能度,所述参考分类结果包括所述参考训练样本为屏蔽分类类别对应的屏蔽类别可能度;训练模块还用于基于所述当前类别可能度得到第一模型损失值,所述第一模型损失值与所述当前类别可能度成正相关关系;基于所述屏蔽类别可能度得到第二模型损失值,所述第二模型损失值与所述屏蔽类别可能度成正相关关系;基于所述第一模型损失值与所述第二模型损失值得到目标模型损失值;基于所述目标模型损失值对待训练的特征提取模型进行参数调整,得到所述当前分类任务对应的训练后的特征提取模型。
上述实施例中,通过将当前类别集合中未被抽取的类别划分至同一参考类别,进而服务器在训练过程中可以基于参考类别对应的参考训练样本来对待训练的特征提取模型进行训练,由于考虑到了屏蔽分类类别的样本特征,可以保证训练得到的特征提取模型的可靠性。
在一些实施例中,所述训练类别获取模块还用于获取多个候选类别集合;从所述多个候选类别集合中去除前向候选类别集合,得到剩余的候选类别集合;所述前向候选类别集合是所述分类任务序列中,所述当前分类任务的前向分类任务对应的候选类别集合;从剩余的候选类别集合中抽取候选类别集合,将抽取得到的候选类别集合中的候选类别作为所述当前分类任务对应的当前训练类别。
上述实施例中,通过将训练类别集合按照分类任务序列中的任务数量进行划分得到候选类别集合,在生成训练任务时,可以抽取候选类别集合来生成训练任务时,可以提高抽取效率,从而提高训练效率。
在一些实施例中,所述训练类别获取模块还用于获取用于分类训练的训练类别集合;获取分类任务序列中的任务数量,基于所述任务数量对所述训练类别集合进行划分,得到多个候选类别集合。
通过获取分类任务序列中的任务数量,基于任务数量对训练类别集合进行划分,得到多个候选类别集合,保证训练过程中可以学习到训练类别集合所有的分类任务,提高特征提取模型的泛化性能。
在一些实施例中,训练模块还用于获取所述当前训练样本的对比训练样本对应的对比样本提取特征,基于所述当前样本提取特征与所述对比样本提取特征的差异得到特征提取损失值;基于所述当前分类结果得到分类损失值;基于所述特征提取损失值以及所述分类损失值得到目标模型损失值;基于所述目标模型损失值对待训练的特征提取模型进行参数调整,得到所述当前分类任务对应的训练后的特征提取模型。
上述实施例中,在对待训练的特征提取模型进行训练时,同时结合分类结果得到的分类损失值以及基于当前样本提取特征与对比样本提取特征的差异得到特征提取损失值来进行参数调整,使得的训练得到的特征提取模型提取的特征更加准确。
在一些实施例中,所述对比样本提取特征包括正向对比训练样本对应的正向样本提取特征以及负向对比训练训练样本对应的负向样本提取特征;训练模块还用于获取正向特征差异值,所述正向特征差异值为所述当前样本提取特征与所述正向样本提取特征之间的特征差异值;获取负向特征差异值,所述负向特征差异值为所述当前样本提取特征与所述负向样本提取特征之间的特征差异值;基于所述正向特征差异值与所述负向特征差异值确定特征提取损失值。
上述实施例中,由于特征提取损失值是基于正向特征差异值与负向特征差异值确定的,使得特征提取模型在进行相似性的度量学习时,考虑到了类间特征距离过小对分类的影响,提高了特征提取模型用于分类时的准确性。
在一些实施例中,分类模块还用于获取所述当前分类任务对应的当前分类模型;基于所述当前分类模型对所述样本提取特征进行分类,得到分类结果;训练模块还用于基于所述当前分类结果对待训练的特征提取模型的模型参数及所述当前分类模型的模型参数进行联合调整,得到调整后的特征提取模型以及调整后的当前分类模型;返回获取所述当前训练类别对应的当前训练样本的步骤,直至所述当前分类任务满足任务停止条件,得到所述当前分类任务对应的训练后的特征提取模型。
上述实施例中,通过联合特征提取与分类任务同时学习,合并特征提取与分类任务,在同一模型结构中学习特征提取模型以及分类模型,可以通过梯度更新权重控制,避免分类影响特征提取的特征向量表达。
在一些实施例中,上述装置还包括内容分类模型获得模块,用于获取目标分类任务对应的目标分类类别;获取所述目标分类类别对应的目标分类模型;将所述内容特征提取模型与所述目标分类模型进行拼接,得到内容分类模型;基于所述内容分类模型对所述目标分类类别对应的目标训练样本进行分类,得到目标分类结果;在保持所述内容特征提取模型的模型参数不变的情况下,根据所述目标分类结果对所述内容分类模型中的目标分类模型进行参数调整,得到调整后的内容分类模型。
上述实施例中,可以在不更新特征提取模型的模型参数的情况下仅学习分类任务即可训练得到内容分类模型,使得特征提取模型可以快速学习新语义类别,满足语义层面的需求变化。
在一些实施例中,上述装置检索模块,用于获取检索内容,基于所述内容特征提取模型对所述检索内容进行特征提取,得到所述检索内容对应的检索特征;基于所述检索特征进行分类,得到检索分类结果,获取所述检索分类结果的分类类别对应的差异阈值;计算目标内容集合中各个目标内容的内容提取特征与所述检索特征之间的特征差异;从所述目标内容集合中选取特征差异小于所述差异阈值的目标内容,基于选取得到的目标内容得到所述检索内容对应的检索结果。
上述实施例中,通过训练得到的内容特征提取模型提取检索内容的特征向量,可以准确地检索出所需要的检索结果,通过由于检索过程中所依据的差异阈值是根据分类结果的分类类别获取的,可以满足不同业务场景的业务需求。
在一些实施例中,检索模块还用于获取多个相似训练样本对;获取所述相似训练样本对中的训练样本之间的样本特征差异值,对所述样本特征差异值进行统计,得到差异统计值;确定所述检索分类结果的分类类别对应的阈值调整方向,基于所述阈值调整方向确定对应的调整值,基于所述调整值对所述差异值统计值进行调整,得到检索分类结果的分类类别对应的差异阈值。
上述实施例中,通过统计得到差异统计值,确定检索分类结果的分类类别对应的阈值调整方向,基于阈值调整方向确定对应的调整值,基于调整值对差异值统计值进行调整,得到检索分类结果的分类类别对应的差异阈值,实现了根据不同地业务需求自动化确定差异阈值,在满足业务需求的同时提高了检索效率。
关于内容处理装置的具体限定可以参见上文中对于内容处理方法的限定,在此不再赘述。上述内容处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一些实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储内容及内容对应的特征向量。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种内容处理方法。
在一些实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种内容处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9以及图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一些实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一些实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一些实施例中,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (17)
1.一种内容处理方法,其特征在于,所述方法包括:
确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;
获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;
获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;
基于所述当前样本提取特征进行分类,得到当前分类结果;
基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;
将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
2.根据权利要求1所述的方法,其特征在于,所述获取所述当前分类任务对应的当前训练类别包括:
获取所述当前分类任务对应的当前类别集合;其中,所述当前类别集合是从训练类别集合中去除前向训练类别得到的,所述前向训练类别是所述分类任务序列中,所述当前分类任务的前向分类任务对应的训练类别;
从所述当前类别集合中抽取类别,将抽取得到的类别作为所述当前分类任务对应的当前训练类别。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将所述当前类别集合中未被抽取的类别划分至同一参考类别,所述参考类别为所述当前分类任务对应的屏蔽分类类别;
获取所述参考类别对应的参考训练样本,基于所述待训练的特征提取模型对所述参考训练样本进行特征提取,得到参考样本提取特征;
基于所述参考样本提取特征进行分类,得到参考分类结果;
所述基于所述当前分类结果对所述待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型包括:
基于所述当前分类结果以及所述参考分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型。
4.根据权利要求3所述的方法,其特征在于,所述当前分类结果包括所述当前训练样本为当前训练类别的当前类别可能度,所述参考分类结果包括所述参考训练样本为屏蔽分类类别对应的屏蔽类别可能度;
所述基于所述当前分类结果以及所述参考分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型包括:
基于所述当前类别可能度得到第一模型损失值,所述第一模型损失值与所述当前类别可能度成正相关关系;
基于所述屏蔽类别可能度得到第二模型损失值,所述第二模型损失值与所述屏蔽类别可能度成正相关关系;
基于所述第一模型损失值与所述第二模型损失值得到目标模型损失值;
基于所述目标模型损失值对待训练的特征提取模型进行参数调整,得到所述当前分类任务对应的训练后的特征提取模型。
5.根据权利要求1所述的方法,其特征在于,所述获取所述当前分类任务对应的当前训练类别包括:
获取多个候选类别集合;
从所述多个候选类别集合中去除前向候选类别集合,得到剩余的候选类别集合;所述前向候选类别集合是所述分类任务序列中,所述当前分类任务的前向分类任务对应的候选类别集合;
从剩余的候选类别集合中抽取候选类别集合,将抽取得到的候选类别集合中的候选类别作为所述当前分类任务对应的当前训练类别。
6.根据权利要求5所述的方法,其特征在于,所述获取多个候选类别集合包括:
获取用于分类训练的训练类别集合;
获取分类任务序列中的任务数量,基于所述任务数量对所述训练类别集合进行划分,得到多个候选类别集合。
7.根据权利要求1所述的方法,其特征在于,所述基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型包括:
获取所述当前训练样本的对比训练样本对应的对比样本提取特征,基于所述当前样本提取特征与所述对比样本提取特征的差异得到特征提取损失值;
基于所述当前分类结果得到分类损失值;
基于所述特征提取损失值以及所述分类损失值得到目标模型损失值;
基于所述目标模型损失值对待训练的特征提取模型进行参数调整,得到所述当前分类任务对应的训练后的特征提取模型。
8.根据权利要求7所述的方法,其特征在于,所述对比样本提取特征包括正向对比训练样本对应的正向样本提取特征以及负向对比训练训练样本对应的负向样本提取特征;所述基于所述当前样本提取特征与所述对比样本提取特征的差异得到特征提取损失值包括:
获取正向特征差异值,所述正向特征差异值为所述当前样本提取特征与所述正向样本提取特征之间的特征差异值;
获取负向特征差异值,所述负向特征差异值为所述当前样本提取特征与所述负向样本提取特征之间的特征差异值;
基于所述正向特征差异值与所述负向特征差异值确定特征提取损失值。
9.根据权利要求1所述的方法,其特征在于,所述基于所述样本提取特征进行分类,得到分类结果包括:
获取所述当前分类任务对应的当前分类模型;
基于所述当前分类模型对所述样本提取特征进行分类,得到分类结果;
所述基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型包括:
基于所述当前分类结果对待训练的特征提取模型的模型参数及所述当前分类模型的模型参数进行联合调整,得到调整后的特征提取模型以及调整后的当前分类模型;
返回获取所述当前训练类别对应的当前训练样本的步骤,直至所述当前分类任务满足任务停止条件,得到所述当前分类任务对应的训练后的特征提取模型。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取目标分类任务对应的目标分类类别;
获取所述目标分类类别对应的目标分类模型;
将所述内容特征提取模型与所述目标分类模型进行拼接,得到内容分类模型;
基于所述内容分类模型对所述目标分类类别对应的目标训练样本进行分类,得到目标分类结果;
在保持所述内容特征提取模型的模型参数不变的情况下,根据所述目标分类结果对所述内容分类模型中的目标分类模型进行参数调整,得到调整后的内容分类模型。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取检索内容,基于所述内容特征提取模型对所述检索内容进行特征提取,得到所述检索内容对应的检索特征;
基于所述检索特征进行分类,得到检索分类结果,获取所述检索分类结果的分类类别对应的差异阈值;
计算目标内容集合中各个目标内容的内容提取特征与所述检索特征之间的特征差异;
从所述目标内容集合中选取特征差异小于所述差异阈值的目标内容,基于选取得到的目标内容得到所述检索内容对应的检索结果。
12.根据权利要求11所述的方法,其特征在于,所述检索分类结果的分类类别对应的差异阈值的确定步骤包括:
获取多个相似训练样本对;
获取所述相似训练样本对中的训练样本之间的样本特征差异值,对所述样本特征差异值进行统计,得到差异统计值;
确定所述检索分类结果的分类类别对应的阈值调整方向,基于所述阈值调整方向确定对应的调整值,基于所述调整值对所述差异值统计值进行调整,得到检索分类结果的分类类别对应的差异阈值。
13.一种内容处理装置,其特征在于,所述装置包括:
任务确定模块,用于确定分类任务序列中的当前分类任务;其中所述分类任务序列包括多个分类任务;
训练类别获取模块,用于获取所述当前分类任务对应的当前训练类别,其中,所述分类任务序列中至少两个分类任务对应的训练类别不同;
特征提取模块,用于获取所述当前训练类别对应的当前训练样本,基于待训练的特征提取模型对所述当前训练样本进行特征提取,得到当前样本提取特征;
分类模块,用于基于所述当前样本提取特征进行分类,得到当前分类结果;
训练模块,用于基于所述当前分类结果对待训练的特征提取模型进行训练,得到所述当前分类任务对应的训练后的特征提取模型,其中,所述待训练的特征提取模型是基于所述分类任务序列中,所述当前分类任务对应的前向分类任务进行训练得到的;
模型获得模块,用于将根据所述分类任务序列中的各个分类任务进行训练得到的特征提取模型作为内容特征提取模型,以基于所述内容特征提取模型对内容进行特征提取。
14.根据权利要求13所述的装置,其特征在于,所述训练类别获取模块还用于获取所述当前分类任务对应的当前类别集合;其中,所述当前类别集合是从训练类别集合中去除前向训练类别得到的,所述前向训练类别是所述分类任务序列中,所述当前分类任务的前向分类任务对应的训练类别;从所述当前类别集合中抽取类别,将抽取得到的类别作为所述当前分类任务对应的当前训练类别。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
16.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111044767.0A CN114328904A (zh) | 2021-09-07 | 2021-09-07 | 内容处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111044767.0A CN114328904A (zh) | 2021-09-07 | 2021-09-07 | 内容处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114328904A true CN114328904A (zh) | 2022-04-12 |
Family
ID=81044777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111044767.0A Pending CN114328904A (zh) | 2021-09-07 | 2021-09-07 | 内容处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114328904A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117391585A (zh) * | 2023-11-01 | 2024-01-12 | 深圳市正业玖坤信息技术有限公司 | 工业互联网的仓储信息管理方法以及系统 |
-
2021
- 2021-09-07 CN CN202111044767.0A patent/CN114328904A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117391585A (zh) * | 2023-11-01 | 2024-01-12 | 深圳市正业玖坤信息技术有限公司 | 工业互联网的仓储信息管理方法以及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111523621B (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
CN108132968B (zh) | 网络文本与图像中关联语义基元的弱监督学习方法 | |
CN111373417B (zh) | 与基于度量学习的数据分类相关的设备及其方法 | |
CN111966914B (zh) | 基于人工智能的内容推荐方法、装置和计算机设备 | |
CN111582409A (zh) | 图像标签分类网络的训练方法、图像标签分类方法及设备 | |
CN112819023A (zh) | 样本集的获取方法、装置、计算机设备和存储介质 | |
CN111382190B (zh) | 一种基于智能的对象推荐方法、装置和存储介质 | |
CN114298122B (zh) | 数据分类方法、装置、设备、存储介质及计算机程序产品 | |
CN114358188A (zh) | 特征提取模型处理、样本检索方法、装置和计算机设备 | |
CN113569895A (zh) | 图像处理模型训练方法、处理方法、装置、设备及介质 | |
CN113298197B (zh) | 数据聚类方法、装置、设备及可读存储介质 | |
CN114283350B (zh) | 视觉模型训练和视频处理方法、装置、设备及存储介质 | |
CN112818995B (zh) | 图像分类方法、装置、电子设备及存储介质 | |
CN114329029B (zh) | 对象检索方法、装置、设备及计算机存储介质 | |
CN113255354B (zh) | 搜索意图识别方法、装置、服务器及存储介质 | |
CN113515669A (zh) | 基于人工智能的数据处理方法和相关设备 | |
CN113705596A (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
CN114358109A (zh) | 特征提取模型训练、样本检索方法、装置和计算机设备 | |
CN113033507A (zh) | 场景识别方法、装置、计算机设备和存储介质 | |
CN112749737A (zh) | 图像分类方法及装置、电子设备、存储介质 | |
US20240193790A1 (en) | Data processing method and apparatus, electronic device, storage medium, and program product | |
CN113408282B (zh) | 主题模型训练和主题预测方法、装置、设备及存储介质 | |
CN113762041A (zh) | 视频分类方法、装置、计算机设备和存储介质 | |
CN113704534A (zh) | 图像处理方法、装置及计算机设备 | |
CN114328904A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40071927 Country of ref document: HK |