CN114399058B - 一种模型更新的方法、相关装置、设备以及存储介质 - Google Patents

一种模型更新的方法、相关装置、设备以及存储介质 Download PDF

Info

Publication number
CN114399058B
CN114399058B CN202210298078.0A CN202210298078A CN114399058B CN 114399058 B CN114399058 B CN 114399058B CN 202210298078 A CN202210298078 A CN 202210298078A CN 114399058 B CN114399058 B CN 114399058B
Authority
CN
China
Prior art keywords
target
content data
feature vector
original
model
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
Application number
CN202210298078.0A
Other languages
English (en)
Other versions
CN114399058A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210298078.0A priority Critical patent/CN114399058B/zh
Publication of CN114399058A publication Critical patent/CN114399058A/zh
Application granted granted Critical
Publication of CN114399058B publication Critical patent/CN114399058B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种模型更新方法,可应用于视频搜索、云技术、人工智能、智慧交通等场景。本申请包括:通过原始模型获取原始特征向量;通过目标模型获取目标特征向量,目标模型已完成对原始模型的特征兼容学习;根据原始特征向量获取针对原始特征向量库的第一召回数;根据目标特征向量获取针对原始特征向量库的第二召回数;根据第一召回数和第二召回数,确定目标内容数据的目标召回率;根据目标召回率确定平均召回率;若平均召回率大于或等于召回率阈值,则将原始模型替换为目标模型。本申请还提供了装置、设备及存储介质。本申请能够不仅能够节省大量的机器资源和时间,提升新模型的部署效率,而且可更好地应对快速变换的业务需求。

Description

一种模型更新的方法、相关装置、设备以及存储介质
技术领域
本申请涉及机器学习技术领域,尤其涉及一种模型更新的方法、相关装置、设备以及存储介质。
背景技术
随着多媒体技术和互联网技术的飞速发展,用户可方便快捷地接触到大量内容数据,例如,视频、音频和图片等。这些内容数据在机器学习中都起到了非常重要的作用。在机器学习应用中,需要将内容数据表示为特征向量,并存储至特征向量库中。由于内容数据持续新增或者向量计算模型版本的更新,因此,需更新特征向量库。
目前,针对特征向量库的更新可采用全量翻算的方式。即,在离线状态下,采用新的模型对库存中的所有内容数据进行特征向量的提取。特征向量全量更新后,将旧模型替换为新模型,由此,可访问到新的特征向量。
然而,发明人发现现有方案中至少存在如下问题,由于在新模型和旧模型替换之前需要全量翻算特征向量。因此,面对海量库存的内容数据,需要消耗大量的机器资源和时间,从而导致新模型需要等待较长时间才能替换掉旧模型,因此,难以支持快速变换的业务需求。
发明内容
本申请实施例提供了一种模型更新的方法、相关装置、设备以及存储介质。本申请能够不仅能够节省了大量的机器资源和时间,提升新模型的部署效率,而且新模型可以在当下获取的内容数据中即刻发生作用,从而更好地应对快速变换的业务需求。
有鉴于此,本申请一方面提供一种模型更新的方法,包括:
基于目标内容数据,通过原始模型获取原始特征向量;
基于目标内容数据,通过目标模型获取目标特征向量,其中,目标模型已完成对原始模型的特征兼容学习;
根据原始特征向量获取针对原始特征向量库的第一召回数,其中,原始特征向量库用于存储通过原始模型提取到的历史特征向量;
根据目标特征向量获取针对原始特征向量库的第二召回数;
根据第一召回数以及第二召回数,确定目标内容数据的目标召回率;
根据目标召回率确定针对N个内容数据的平均召回率,其中,N个内容数据包括目标内容数据,N为大于或等于1的整数;
若平均召回率大于或等于召回率阈值,则将原始模型替换为目标模型。
本申请另一方面提供一种模型更新装置,包括:
获取模块,用于基于目标内容数据,通过原始模型获取原始特征向量;
获取模块,还用于基于目标内容数据,通过目标模型获取目标特征向量,其中,目标模型已完成对原始模型的特征兼容学习;
获取模块,还用于根据原始特征向量获取针对原始特征向量库的第一召回数,其中,原始特征向量库用于存储通过原始模型提取到的历史特征向量;
获取模块,还用于根据目标特征向量获取针对原始特征向量库的第二召回数;
确定模块,用于根据第一召回数以及第二召回数,确定目标内容数据的目标召回率;
确定模块,还用于根据目标召回率确定针对N个内容数据的平均召回率,其中,N个内容数据包括目标内容数据,N为大于或等于1的整数;
替换模块,用于若平均召回率大于或等于召回率阈值,则将原始模型替换为目标模型。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
获取模块,具体用于根据原始特征向量,从原始特征向量库中召回第一特征向量集合,其中,第一特征向量集合包括与原始特征向量相似度最高的K个历史特征向量,K为大于1的整数;
根据第一特征向量集合,获取K个历史内容数据,其中,历史内容数据与第一特征向量集合中的历史特征向量具有对应关系;
获取K个历史内容数据中每个历史内容数据的内容标注结果,其中,内容标注结果用于指示历史内容数据与目标内容数据的匹配情况;
根据K个历史内容数据中每个历史内容数据的内容标注结果,统计得到第一召回数。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
获取模块,具体用于从目标特征向量中截取特征子向量,其中,特征子向量与原始特征向量具有相等维度;
根据特征子向量,从原始特征向量库中召回第二特征向量集合,其中,第二特征向量集合包括与原始特征向量相似度最高的T个历史特征向量,T为大于1的整数;
根据第二特征向量集合,获取T个历史内容数据,其中,历史内容数据与第二特征向量集合中的历史特征向量具有对应关系;
获取T个历史内容数据中每个历史内容数据的内容标注结果,其中,内容标注结果用于指示历史内容数据与目标内容数据的匹配情况;
根据T个历史内容数据中每个历史内容数据的内容标注结果,统计得到第二召回数。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,N为大于1的整数;
获取模块,还用于根据目标召回率确定针对N个内容数据的平均召回率之前,针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过原始模型获取内容数据的原始特征向量,其中,(N-1)个内容数据为N个内容数据中除去目标内容数据之外的内容数据;
获取模块,还用于针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过目标模型获取内容数据的目标特征向量;
获取模块,还用于针对(N-1)个内容数据中的每个内容数据,根据内容数据的原始特征向量获取针对原始特征向量库的第一召回数;
获取模块,还用于针对(N-1)个内容数据中的每个内容数据,根据内容数据的目标特征向量获取针对原始特征向量库的第二召回数;
获取模块,还用于针对(N-1)个内容数据中的每个内容数据,根据第一召回数以及第二召回数,确定内容数据的召回率;
确定模块,具体用于根据目标召回率以及所述 (N-1)个内容数据中每个内容数据的召回率,计算得到平均召回率。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
获取模块,还用于在第一时间周期内获取N个内容数据;
获取模块,还用于从N个内容数据中获取目标内容数据;
或,
获取模块,还用于在第一时间周期内获取N个内容数据;
获取模块,还用于若N的取值大于或等于内容数量阈值,则从N个内容数据中获取目标内容数据。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,模型更新装置包括存储模块;
存储模块,用于将原始模型替换为目标模型之前,将N个原始特征向量存储至原始特征向量库,其中,N个原始特征向量为在第一时间周期内对N个内容数据提取到的原始特征向量;
存储模块,还用于将N个目标特征向量存储至目标特征向量库,其中,N个目标特征向量为在第一时间周期内对N个内容数据提取到的目标特征向量;
获取模块,还用于将原始模型替换为目标模型之后,当获取到内容数据时,基于内容数据,通过目标模型获取内容数据的目标特征向量;
存储模块,还用于将内容数据的目标特征向量存储至目标特征向量库。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,模型更新装置包括删除模块;
删除模块,用于根据目标召回率确定针对N个内容数据的平均召回率之后,若平均召回率小于召回率阈值,则从目标特征向量库中删除N个目标特征向量。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,模型更新装置包括匹配模块;
获取模块,还用于将原始模型替换为目标模型之后,获取待检测内容数据,其中,待检测内容数据为视频、音频或图片;
获取模块,还用于基于待检测内容数据,通过目标模型获取待检测特征向量;
匹配模块,用于根据原始特征向量库以及目标特征向量库,对待检测特征向量进行匹配;
确定模块,还用于根据匹配结果确定待检测内容数据所对应的版权信息。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
获取模块,还用于获取待识别对象数据;
获取模块,还用于基于待识别对象数据,通过目标模型获取待识别特征向量;
匹配模块,还用于根据原始特征向量库以及目标特征向量库,对待识别特征向量进行匹配;
确定模块,还用于根据匹配结果确定待识别对象数据所对应的对象信息。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
获取模块,还用于获取原始特征向量库中各个历史特征向量在第二时间周期内的热度值;
删除模块,还用于从原始特征向量库中删除热度值小于或等于热度阈值的历史特征向量。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,模型更新装置包括更新模块以及训练模块;
获取模块,还用于获取三元组样本,其中,三元组样本包括锚点样本、正样本以及负样本;
获取模块,还用于基于三元组样本,通过目标模型获取锚点样本的目标锚点特征向量、正样本的目标正特征向量以及负样本的目标负特征向量;
获取模块,还用于基于锚点样本,通过原始模型获取原始锚点特征向量;
更新模块,用于根据原始锚点特征向量对第一向量队列进行更新,得到第二向量队列,其中,第二向量队列存储原始锚点特征向量以及至少一个样本特征向量;
训练模块,用于根据目标锚点特征向量、目标正特征向量、目标负特征向量以及第二向量队列,对目标模型的模型参数进行更新,直至满足模型训练条件,则确定目标模型已完成对原始模型的特征兼容学习。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
训练模块,具体用于基于目标锚点特征向量、目标正特征向量以及目标负特征向量,通过三元组损失函数确定第一损失值;
从目标锚点特征向量中截取样本特征子向量,其中,样本特征子向量与原始锚点特征向量具有相等维度;
基于样本特征子向量以及第二向量队列中存储的特征向量,通过对比损失函数确定第二损失值;
根据第一损失值以及第二损失值,对目标模型的模型参数进行更新。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,
更新模块,具体用于确定第一向量队列中的待更新特征向量;
将待更新特征向量从第一向量队列中剔除,并将原始锚点特征向量加入至第一向量对象,形成第二向量队列。
本申请另一方面提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述各方面的方法。
本申请的另一方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方面的方法。
本申请的另一个方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例中,提供了一种模型更新的方法,首先,基于目标内容数据,分别通过原始模型和目标模型获取原始特征向量和目标特征向量。这里的目标模型与原始模型是已经完成特征兼容学习的。然后,分别根据原始特征向量获取针对原始特征向量库的第一召回数,并根据目标特征向量获取针对原始特征向量库的第二召回数。基于此,根据第一召回数以及第二召回数,确定目标内容数据的目标召回率。接下来,结合目标召回率可计算得到N个内容数据的平均召回率。如果平均召回率大于或等于召回率阈值,则将原始模型替换为目标模型。通过上述方式,在目标模型(即,新模型)与原始模型(即,旧模型)完成特征兼容学习的前提下,能够将新模型提取到的特征向量直接在旧特征向量库中进行召回,并通过比对新模型和旧模型的召回情况来判定新模型是否适合上线。如果召回效果足够好,则后续直接使用新模型来提取特征向量即可。由于新模型和旧模型能够兼容特征,因此,无需重新计算库存中的历史内容数据,从而节省了大量的机器资源和时间,由此,提升了模型替换效率。与此同时,新模型可以在当下获取的内容数据中即刻发生作用,从而更好地应对快速变换的业务需求。
附图说明
图1为本申请实施例中模型更新系统的一个架构示意图;
图2为本申请实施例中特征向后兼容的一个示意图;
图3为本申请实施例中模型更新方法的一个流程示意图;
图4为本申请实施例中特征向量迭代系统的一个架构示意图;
图5为本申请实施例中从原始特征向量库中召回第一特征向量集合的一个示意图;
图6为本申请实施例中从原始特征向量库中召回第二特征向量集合的一个示意图;
图7为本申请实施例中基于不同时间周期调用模型的一个对比示意图;
图8为本申请实施例中基于特征向量匹配实现版权检测的一个场景示意图;
图9为本申请实施例中基于特征向量匹配实现对象识别的一个场景示意图;
图10为本申请实施例中向后兼容训练的一个示意图;
图11为本申请实施例中更新向量队列的一个示意图;
图12为本申请实施例中模型更新装置的一个示意图;
图13为本申请实施例中服务器的一个结构示意图;
图14为本申请实施例中终端设备的一个结构示意图。
具体实施方式
本申请实施例提供了一种模型更新的方法、相关装置、设备以及存储介质。本申请能够不仅能够节省了大量的机器资源和时间,提升新模型的部署效率,而且新模型可以在当下获取的内容数据中即刻发生作用,从而更好地应对快速变换的业务需求。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
伴随着互联网以及终端设备的快速发展,内容数据的传播力度不断强化,传播范围也日渐扩充。对于这些内容数据,可提取并存储它们的特征向量,以供不同的应用需求(例如,内容推荐,内容理解,内容检索等)。需要说明的是,本申请中的内容数据包含但不仅限于视频、音频和图片等。示例性地,对于视频和图片而言,可通过视觉几何组网络(VisualGeometry Group Network,VGGnet)中的卷积层提取特征向量,或者,可采用卷积神经网络(Convolutional Neural Networks,CNN)中的卷积层提取特征向量。示例性地,对于音频而言,可通过类VGG(VGGish)模型中的卷积层提取特征向量。可以理解的是,特征提取的方式不仅限于上述网络。
特征向量在计算机视觉技术,语音技术以及机器学习中都有着重要的作用。
其中,计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(OpticalCharacter Recognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
语音技术的关键技术有自动语音识别技术和语音合成技术以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
由于提取特征向量的模型并非一成不变的,因此,本申请提供了一种模型更新的方法,节省特征向量迭代时带来的人工、设备以及时间开销。本申请提供的方法可应用于如图1所示的模型更新系统,模型更新系统可包括S1所指示的服务器和S2所指示的终端设备,且客户端部署于终端设备上,其中,客户端可以通过浏览器的形式运行于终端设备上,也可以通过独立的应用程序的形式运行于终端设备上等,对于客户端的具体展现形式,此处不做限定。本申请涉及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备包括但不限于智能手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。服务器和终端设备的数量也不做限制。本申请提供的方案可以由终端设备独立完成,也可以由服务器独立完成,还可以由终端设备与服务器配合完成,对此,本申请并不做具体限定。本申请可应用于各种场景,包括但不限于视频搜索、媒体版权检测、云技术、人工智能、智慧交通和辅助驾驶等。
服务器调用旧模型对内容数据进行特征向量提取,然后将提取到的旧特征向量存储至旧数据库中。当需要部署新模型时,服务器将调用新模型对内容数据进行特征向量提取,再将提取到的新特征向量存储至新数据库。其中,该内容数据可以是终端设备上传的。在此期间,服务器仍然调用旧模型提取内容数据的旧特征向量并存储至旧数据库中。由于新模型已经完成特征向后兼容训练(Backward Compatible Training,BCT),即,新模型完成了对旧模型的特征兼容学习。因此,根据这段期间内新特征向量在旧数据库的召回情况,判定是否可以用新模型替代旧模型进行后续的特征向量提取工作。
基于此,下面将介绍特征向后兼容的定义。向后兼容是指新模型的特征和旧模型的特征之间依然满足在欧式空间中同类相近,不同类相远的特性。为了便于理解,请参阅图2,图2为本申请实施例中特征向后兼容的一个示意图,如图所示,样本1和样本2为正样本对,即,样本1和样本2的内容相同,但内容版本不同。样本1和样本3为负样本对。即,样本1和样本3内容不同。基于此,特征向后兼容需要满足在新模型和旧模型产生的正样本特征配对的距离小于旧模型对正样本对产生特征配对,并且,在新模型和旧模型产生的负样本特征配对的距离大于旧模型对负样本对产生特征配对。即,满足如下公式:
Figure 476116DEST_PATH_IMAGE001
;公式(1)
Figure 862098DEST_PATH_IMAGE002
;公式(2)
其中,
Figure 376256DEST_PATH_IMAGE003
表示第i个输入的内容数据。
Figure 505886DEST_PATH_IMAGE004
表示旧模型。
Figure 553214DEST_PATH_IMAGE005
表示新模型。
Figure 844519DEST_PATH_IMAGE006
表示第i个输入对应的类别。
Figure 845973DEST_PATH_IMAGE007
表示距离计算方程。
结合上述介绍,下面将对本申请中模型更新的方法进行介绍,请参阅图3,本申请实施例中模型更新方法可以由计算机设备执行,该计算机设备可以是终端设备或服务器。本申请提供的模型更新方法包括:
110、基于目标内容数据,通过原始模型获取原始特征向量;
在一个或多个实施例中,在第一时间周期内获取目标内容数据,基于此,将目标内容数据作为原始模型的输入,通过原始模型输出目标内容数据的原始特征向量。
需要说明的是,本申请中的“原始模型”即“旧模型”,也可以称为“旧的特征提取模型”或者“原始特征提取模型”等。本申请中的内容数据可以是网络媒体数据,包含但不仅限于视频、音频和图片等,此处不做限定。
120、基于目标内容数据,通过目标模型获取目标特征向量,其中,目标模型已完成对原始模型的特征兼容学习;
在一个或多个实施例中,将目标内容数据作为目标模型的输入,通过目标模型输出目标内容数据的目标特征向量。其中,目标特征向量的特征维度数大于或等于原始特征向量的特征维度数,例如,目标内容数据的目标特征向量为128维,原始特征向量为32维。
具体地,目标模型已完成对原始模型的特征兼容学习,即满足,将同类内容数据分别输入至新模型和旧模型模型,使得新特征向量与旧特征向量之间的距离小于均由旧模型产生的旧特征向量的距离。而将不同类内容数据分别输入至新模型和旧模型模型,使得新特征向量与旧特征向量之间的距离大于均由旧模型产生的旧特征向量的距离。可见,本申请实现了跨模型和跨维度的特征兼容,即,128维的目标特征向量向后兼容32维的原始特征向量。
需要说明的是,本申请中的“目标模型”即“新模型”,也可以称为“新的特征提取模型”或者“目标特征提取模型”等。可以理解的是,本申请中步骤120与步骤110之间的执行顺序不做限定。
130、根据原始特征向量获取针对原始特征向量库的第一召回数,其中,原始特征向量库用于存储通过原始模型提取到的历史特征向量;
在一个或多个实施例中,利用原始模型提取到原始特征向量,从原始特征向量库中召回固定数量的历史特征向量(即,第一特征向量集合),然后基于这部分的历史特征向量(即,第一特征向量集合)进行匹配。
具体地,一种方式为,基于第一特征向量集合索引到相应的历史内容数据。再将这些历史内容数据与目标内容数据进行匹配,对匹配成功的历史内容数据进行计数。最终累计得到第一召回数。另一种方式为,基于第一特征向量集合,计算其中每个历史特征向量与原始特征向量的相似度,将相似度小于相似度阈值的情况进行计数,得到第一召回数。
140、根据目标特征向量获取针对原始特征向量库的第二召回数;
在一个或多个实施例中,利用目标模型提取到目标特征向量,从目标特征向量库中召回固定数量的历史特征向量(即,第二特征向量集合),然后基于这部分的历史特征向量(即,第二特征向量集合)进行匹配。
具体地,一种方式为,基于第二特征向量集合索引到相应的历史内容数据。再将这些历史内容数据与目标内容数据进行匹配,对匹配成功的历史内容数据进行计数。最终累计得到第二召回数。另一种方式为,基于第二特征向量集合,计算其中每个历史特征向量与目标特征向量的相似度,将相似度小于相似度阈值的情况进行计数,得到第二召回数。
可以理解的是,本申请中步骤140与步骤130之间的执行顺序不做限定。
150、根据第一召回数以及第二召回数,确定目标内容数据的目标召回率;
在一个或多个实施例中,可在计算得到第一召回数以及第二召回数之后,可采用如下方式计算目标内容数据的目标召回率:
Figure 779294DEST_PATH_IMAGE008
;公式(3)
其中,
Figure 182593DEST_PATH_IMAGE009
表示目标召回率,
Figure 910378DEST_PATH_IMAGE010
表示第一召回数,
Figure 399128DEST_PATH_IMAGE011
表示第二召回数。
160、根据目标召回率确定针对N个内容数据的平均召回率,其中,N个内容数据包括目标内容数据,N为大于或等于1的整数;
在一个或多个实施例中,为了获得更可靠的召回数据,通常情况下,还需要引入更多的内容数据用于计算平均召回率。
具体地,假设在一段时间内总共收到N个内容数据,其中,这N个内容数据中至少包括目标内容数据。于是,对这N个内容数据均采用相似的方式计算召回率,即可得到N个召回率,其中,这N个召回率中至少包括目标召回率。基于此,对N个召回率求平均值,即得到平均召回率。
170、若平均召回率大于或等于召回率阈值,则将原始模型替换为目标模型。
在一个或多个实施例中,如果平均召回率大于或等于召回率阈值,则表示目标模型的召回效果已经达标,因此,将原始模型替换为目标模型,即不再使用原始模型。
具体地,为了便于理解,请参阅图4,图4为本申请实施例中特征向量迭代系统的一个架构示意图,如图所示,获取目标内容数据之后,通过原始模型获取32维的原始特征向量(fo),并通过目标模型获取128维的目标特征向量(fn)。由于目标特征向量(fn)和原始特征向量(fo)存在维度不一致可能,所以还需要对目标特征向量(fn)进行截断,取出其中32维的特征子向量(f’n)构成和原始特征向量(fo)兼容的特征,并进行检索。图中示出三条召回路径,第一条为原始特征向量(fo)的召回路径,原始特征向量(fo)在原始特征向量库(D1)中进行检索,召回对应的结果。完成召回之后,将原始特征向量(fo)加入至原始特征向量库(D1),以供后续检索。
第二条为特征子向量(f’n)的召回路径。假设从T时刻开始进行版本迭代,在T+n期间,第一条召回路径和第二条召回路径同时运行。由于原始特征向量(fo)与目标特征向量(fn)的维度不同,因此,还需构建一个独立于原始特征向量库(D1)的目标特征向量库(D2)。针对特征子向量(f’n)在原始特征向量库(D1)中进行检索。于是,可对第一召回路径和第二召回路径的召回结果进行交叉校验,由于这两路召回的库存都来自于原始特征向量库(D1),因此,可对比出特征子向量(f’n)和原始特征向量(fo)的效果差异。
第三条为目标特征向量(fn)的召回路径。在交叉校验成功之后,不再使用第一条召回路径,对应的机器资源将得到释放。与此同时,所有新进来的内容数据只经过目标模型来提取特征向量,针对该特征向量在原始特征向量库(D1)和目标特征向量库(D2)中进行检索,即,保留第二条召回路径和第三条召回路径。
本申请实施例中,提供了一种模型更新的方法。通过上述方式,在目标模型(即,新模型)与原始模型(即,旧模型)完成特征兼容学习的前提下,能够将新模型提取到的特征向量直接在旧特征向量库中进行召回,并通过比对新模型和旧模型的召回情况来判定新模型是否适合上线。如果召回效果足够好,则后续直接使用新模型来提取特征向量即可。由于新模型和旧模型能够兼容特征,因此,无需重新计算库存中的历史内容数据,从而节省了大量的机器资源和时间,由此,提升了模型替换效率。与此同时,新模型可以在当下获取的内容数据中即刻发生作用,从而更好地应对快速变换的业务需求。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据原始特征向量获取针对原始特征向量库的第一召回数,具体可以包括:
根据原始特征向量,从原始特征向量库中召回第一特征向量集合,其中,第一特征向量集合包括与原始特征向量相似度最高的K个历史特征向量,K为大于1的整数;
根据第一特征向量集合,获取K个历史内容数据,其中,历史内容数据与第一特征向量集合中的历史特征向量具有对应关系;
获取K个历史内容数据中每个历史内容数据的内容标注结果,其中,内容标注结果用于指示历史内容数据与目标内容数据的匹配情况;
根据K个历史内容数据中每个历史内容数据的内容标注结果,统计得到第一召回数。
在一个或多个实施例中,介绍了一种确定第一召回数的方式。由前述实施例可知,利用原始特征向量从原始特征向量库中召回K个历史特征向量(即,第一特征向量集合),进而根据第一特征向量集合中的各个历史特征向量索引到对应的历史内容数据,即,得到K个历史内容数据。本申请可采用k最邻近分类(k-Nearest Neighbor,KNN)或k均值聚类(k-means clustering,K-Means)等算法召回第一特征向量集合。以此,得到的第一特征向量集合包括与原始特征向量相似度最高的K个历史特征向量。其中,K为大于1的整数,本申请以K为100作为示例进行介绍。
具体地,为了便于理解,请参阅图5,图5为本申请实施例中从原始特征向量库中召回第一特征向量集合的一个示意图,如图所示,将目标内容数据输入至原始模型,通过原始模型获取原始特征向量。基于此,利用原始特征向量,从原始特征向量库中召回第一特征向量集合。其中,原始特征向量库中存储通过原始模型提取到的历史特征向量以及历史特征向量对应的标识。请参阅表1,表1为原始特征向量库中存储内容的一个示意。
表1
数据标识 历史特征向量
0 [0.23,0.15,0.88,0.95,0.45,…,0.39]
1 [0.33,0.25,0.47,0.98,0.75,…,0.13]
2 [0.42,0.49,0.69,0.95,0.45,…,0.44]
3 [0.68,0.15,0.75,0.91,0.45,…,0.35]
4 [0.71,0.15,0.88,0.95,0.45,…,0.94]
5 [0.41,0.15,0.62,0.08,0.13,…,0.78]
基于此,可根据召回到的第一特征向量集合索引到数据标识对应的历史内容数据。进一步地,可采用人工审核的方式对目标内容数据与K个历史内容数据进行内容相似性匹配,并标记相应的内容标注结果。假设召回的100个历史内容数据中,存在80个历史内容数据的内容标注结果为“匹配成功”,则确定第一召回数为80。
需要说明的是,如果历史内容数据与目标内容数据的内容相同,即表示两者匹配成功,此时,内容标注结果为“匹配成功”。反之,则内容标注结果为“匹配失败”。示例性地,以内容数据为视频为例,假设视频A是原创视频,对视频A进行二次加工(例如,添加特效或者剪辑等处理)之后得到视频B,此时,视频A和视频B即为相同内容的视频。示例性地,以内容数据为音频为例,假设音频A是正版视频,对音频A进行翻录之后得到音频B,此时,音频A和音频B即为相同内容的音频。示例性地,以内容数据为图片为例,假设图片A是原图,对图片A进行旋转或者剪裁之后得到图片B,此时,图片A和图片B即为相同内容的图片。
其次,本申请实施例中,提供了一种确定第一召回数的方式。通过上述方式,利用原始特征向量从原始特征向量库中初步召回一定数量的历史特征向量,再结合人工审核对这些召回的结果进行匹配,找出与目标内容数据具有相同内容的内容数据。由此,提升有效召回的准确率,进而提升平均召回率的准确率。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据目标特征向量获取针对原始特征向量库的第二召回数,具体可以包括:
从目标特征向量中截取特征子向量,其中,特征子向量与原始特征向量具有相等维度;
根据特征子向量,从原始特征向量库中召回第二特征向量集合,其中,第二特征向量集合包括与原始特征向量相似度最高的T个历史特征向量,T为大于1的整数;
根据第二特征向量集合,获取T个历史内容数据,其中,历史内容数据与第二特征向量集合中的历史特征向量具有对应关系;
获取T个历史内容数据中每个历史内容数据的内容标注结果,其中,内容标注结果用于指示历史内容数据与目标内容数据的匹配情况;
根据T个历史内容数据中每个历史内容数据的内容标注结果,统计得到第二召回数。
在一个或多个实施例中,介绍了一种确定第二召回数的方式。由前述实施例可知,由于目标特征向量与原始特征向量可能具有不同维度,因此,需要从目标特征向量中截取与原始特征向量维度相等的特征子向量。利用特征子向量从原始特征向量库中召回T个历史特征向量(即,第二特征向量集合),进而根据第二特征向量集合中的各个历史特征向量索引到对应的历史内容数据,即,得到T个历史内容数据。本申请可采用KNN或K-Means等算法召回第二特征向量集合。以此,得到的第二特征向量集合包括与原始特征向量相似度最高的T个历史特征向量。其中,T为大于1的整数,且,通常情况下,设置T与K相等,本申请以T为100作为示例进行介绍。
具体地,为了便于理解,请参阅图6,图6为本申请实施例中从原始特征向量库中召回第二特征向量集合的一个示意图,如图所示,将目标内容数据输入至目标模型,通过目标模型获取目标特征向量,再从目标特征向量中截取特征子向量。基于此,利用特征子向量,从原始特征向量库中召回第二特征向量集合。类似地,结合表1可根据召回到的第二特征向量集合索引到数据标识对应的历史内容数据。进一步地,可采用人工审核的方式对目标内容数据与T个历史内容数据进行内容相似性匹配,并标记相应的内容标注结果。假设召回的100个历史内容数据中,存在75个历史内容数据的内容标注结果为“匹配成功”,则确定第二召回数为75。
需要说明的是,如果历史内容数据与目标内容数据的内容相同,即表示两者匹配成功,此时,内容标注结果为“匹配成功”。反之,则内容标注结果为“匹配失败”。可以理解的是,可从目标特征向量的任意位置截取连续的一段元素作为特征子向量,本申请以截取目标特征向量开头前若干个元素作为特征子向量,然而这不应理解为对本申请的限定。
其次,本申请实施例中,提供了一种确定第二召回数的方式。通过上述方式,利用目标特征向量中的特征子向量,从原始特征向量库中初步召回一定数量的历史特征向量,再结合人工审核对这些召回的结果进行匹配,找出与目标内容数据具有相同内容的内容数据。由此,提升有效召回的准确率,进而提升平均召回率的准确率。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,N为大于1的整数;
根据目标召回率确定针对N个内容数据的平均召回率之前,还可以包括:
针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过原始模型获取内容数据的原始特征向量,其中,(N-1)个内容数据为N个内容数据中除去目标内容数据之外的内容数据;
针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过目标模型获取内容数据的目标特征向量;
针对(N-1)个内容数据中的每个内容数据,根据内容数据的原始特征向量获取针对原始特征向量库的第一召回数;
针对(N-1)个内容数据中的每个内容数据,根据内容数据的目标特征向量获取针对原始特征向量库的第二召回数;
针对(N-1)个内容数据中的每个内容数据,根据第一召回数以及第二召回数,确定内容数据的召回率;
根据目标召回率确定针对N个内容数据的平均召回率,具体可以包括:
根据目标召回率以及所述 (N-1)个内容数据中每个内容数据的召回率,计算得到平均召回率。
在一个或多个实施例中,介绍了一种基于N个内容数据计算平均召回率的方式。由前述实施例可知,目标内容数据属于N个内容数据中的一个内容数据,对于N个内容数据中的剩余的(N-1)个内容数据而言,也采用类似方式进行召回率的计算。
具体地,对于每个内容数据而言,分别通过原始模型获取原始特征向量,并通过目标模型获取目标特征向量。一方面,根据原始特征向量获取针对原始特征向量库的第一召回数。另一方面,从目标特征向量中截取特征子向量之后,根据特征子向量获取针对原始特征向量库的第二召回数。基于此,根据第二召回数与第一召回数的比值确定召回率。最后,对N个召回率求平均,即,得到平均召回率。
其次,本申请实施例中,提供了一种基于N个内容数据计算平均召回率的方式。通过上述方式,基于多个内容数据的召回率生成平均召回率,该平均召回率能够更好地表示目标模型的召回情况,从而提升方案的可行性和可操作性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还可以包括:
在第一时间周期内获取N个内容数据;
从N个内容数据中获取目标内容数据;
或,
还可以包括:
在第一时间周期内获取N个内容数据;
若N的取值大于或等于内容数量阈值,则从N个内容数据中获取目标内容数据。
在一个或多个实施例中,介绍了两种获取目标内容数据的方式。由前述实施例可知,在实际业务中,还需要第一时间周期,在第一时间周期内对召回的历史内容数据进行相似内容的匹配。下面将结合两种策略,介绍获取目标内容数据的方式。
一、基于时间周期;
具体地,预先设定第一时间周期,假设在第一时间周期内获取到N个内容数据,那么可将N个内容数据中的任意一个内容数据作为目标内容数据,以此进行后续的处理。
二、基于时间周期以及数量阈值;
具体地,预先设定第一时间周期以及内容数量阈值,假设在第一时间周期内获取到N个内容数据,那么还需要进一步判断N的取值大于或等于内容数量阈值。如果大于或等于内容数量阈值,则将N个内容数据中的任意一个内容数据作为目标内容数据,以此进行后续的处理。反之,则表示当前采集到的内容数据数量较少,还需延长等待时间。
需要说明的是,第一时间周期可以设置为5天或7天,又或者其他的长度,第一时间周期长度的设置可取决于人工审核内容相似情况所需的时长,或,机器审核内容相似情况所需的时长,故此处不做限定。
其次,本申请实施例中,提供了两种获取目标内容数据的方式。通过上述方式,将时间周期作为召回内容数据的条件,不仅能够提升线上服务的稳定性,而且还充分考虑到人工匹配内容数据一致性的情况,从而提升方案的可行性和可操作性。基于此,再进入获取到的内容数据数量作为约束,能够进一步提升召回结果的可靠性。此外,相比于全量翻算所需的时间,本申请设置的第一时间周期显著提升了算法迭代效率。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,将原始模型替换为目标模型之前,还可以包括:
将N个原始特征向量存储至原始特征向量库,其中,N个原始特征向量为在第一时间周期内对N个内容数据提取到的原始特征向量;
将N个目标特征向量存储至目标特征向量库,其中,N个目标特征向量为在第一时间周期内对N个内容数据提取到的目标特征向量;
将原始模型替换为目标模型之后,还可以包括:
当获取到内容数据时,基于内容数据,通过目标模型获取内容数据的目标特征向量;
将内容数据的目标特征向量存储至目标特征向量库。
在一个或多个实施例中,介绍了一种原始特征向量库与目标特征向量库的更新方式。由前述实施例可知,假设在第一时间周期内容获取到N个内容数据,在此期间,通过原始模型获取N个原始特征向量,并且通过目标模型获取N个目标特征向量。由此,分别将N个原始特征向量和N个目标特征向量存储至对应的数据库。
具体地,为了便于理解,请参阅图7,图7为本申请实施例中基于不同时间周期调用模型的一个对比示意图,如图所示,假设从T时刻开始进行模型版本迭代,T时刻至T+n时刻为第一时间周期。基于此,在T时刻之前获取到的内容数据,都通过原始模型提取相应的原始特征向量,并将这些原始特征向量存储至原始特征向量库。在T时刻至T+n时刻期间(即,第一时间周期)获取到的内容数据,不仅需要通过原始模型提取相应的原始特征向量,还需要通过目标模型提取相应的目标特征向量。由此,将T时刻至T+n时刻期间(即,第一时间周期)提取到的所有原始特征向量存储至原始特征向量库,并将T时刻至T+n时刻期间(即,第一时间周期)提取到的所有目标特征向量存储至目标特征向量库。
值得注意的是,如果T时刻至T+n时刻期间(即,第一时间周期)的平均召回率大于或等于召回率阈值,则从T+n时刻之后获取到的内容数据,只通过目标模型提取相应的目标特征向量,并将这些目标特征向量存储至目标特征向量库。
再次,本申请实施例中,提供了一种原始特征向量库与目标特征向量库的更新方式。通过上述方式,构建原始特征向量库与目标特征向量库,能够分开存储内容数据的原始特征向量和目标特征向量。便于进行特征向量的召回和索引,从而提升业务处理效率。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据目标召回率确定针对N个内容数据的平均召回率之后,还可以包括:
若平均召回率小于召回率阈值,则从目标特征向量库中删除N个目标特征向量。
在一个或多个实施例中,介绍了一种未满足模型上线条件情况下的数据回滚方式。由前述实施例可知,在第一时间周期内,将原始模型提取到的N个原始特征向量存储至原始特征向量库,并将目标模型提取到的N个目标特征向量存储至目标特征向量库。
具体地,在T+n个时刻(即,第一时间周期结束时)可计算得到N个内容数据的平均召回率。如果N个内容数据的平均召回率小于召回率阈值,则从目标特征向量库中删除N个目标特征向量,并且保留已存储到原始特征向量库的N个历史特征向量。其中,这里的N个历史特征向量即为在第一时间周期内提取到的N个原始特征向量。可见,目标特征向量库已回滚到T时刻的存储状态,而原始特征向量库存储状态不受影响。
进一步地,本申请实施例中,提供了一种未满足模型上线条件情况下的数据回滚方式。通过上述方式,基于平均召回率实现自动校验,以便快速发现问题。一旦发现出现问题,可及时回滚到上一个模型版本(即,原始模型的版本)。由于原始模型在第一时间周期内持续提供检索服务,因此,回滚时不会受到新模型版本的影响,增加了系统的鲁棒性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,将原始模型替换为目标模型之后,还可以包括:
获取待检测内容数据,其中,待检测内容数据为视频、音频或图片;
基于待检测内容数据,通过目标模型获取待检测特征向量;
根据原始特征向量库以及目标特征向量库,对待检测特征向量进行匹配;
根据匹配结果确定待检测内容数据所对应的版权信息。
在一个或多个实施例中,介绍了一种基于内容数据指纹进行版权检测的方式。由前述实施例可知,内容数据可以是视频、音频或图片,对此,可以构建一种特征算子来表征内容数据在内容上的唯一性和鲁棒性,其中,该特征算子可以表示为特征向量的形式。以视频为例,所构建的特征算子即为该视频的视频指纹(Video Fingerprint),基于此,相同内容的视频在经过各种处理后仍然可以获得相似的特征向量,而不同视频不管经过多少处理都具有不相似的特征向量。视频之间相似度通过特征向量之间的欧氏距离(EuclideanDistance)或余弦距离(Cosine Distance)来表征。
可以理解的是,视频指纹算法在视频排重,视频版权保护,视频介质管理,视频推荐和视频搜索等各种视频相关业务中,都得到了广泛的应用,对提升用户体验,优化机器资源,优化内容管理等有很大帮助。
具体地,为了便于理解,请参阅图8,图8为本申请实施例中基于特征向量匹配实现版权检测的一个场景示意图,如图所示,以视频应用程序为例,用户启动应用并观看视频A。视频播放界面上显示有“版权检测”的控件,当用户点击该控件时,即,向计算机设备触发版权检测指令,其中,视频A为待检测内容数据。基于此,计算机设备调用目标模型提取待检测内容数据的特征向量,得到待检测特征向量。计算机设备可直接将待检测特征向量与目标特征向量库中的特征向量进行匹配,与此同时,可以从待检测特征向量中截取待检测子向量,再将待检测子向量与原始特征向量库中的特征向量进行匹配。最后,根据匹配结果确定版权信息。
假设待检测特征向量与目标特征向量库中的特征向量A匹配成功,于是,查询特征向量A对应的版权信息。计算机设备向视频应用程序反馈版权信息,由此,视频应用程序可展示相应的版权信息。示例性地,如果版权信息为“正版”,则在视频应用程序上显示“正版视频”。示例性地,如果版权信息为“盗版”,则在视频应用程序上显示“盗版视频”。
进一步地,本申请实施例中,提供了一种基于内容数据指纹进行版权检测的方式。通过上述方式,利用视频指纹技术区分视频内容,不仅具有较高的稳定性,而且能够有效地避免视频的格式转换、编辑、裁剪拼接和压缩旋转等操作的影响。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,将原始模型替换为目标模型之后,还可以包括:
获取待识别对象数据;
基于待识别对象数据,通过目标模型获取待识别特征向量;
根据原始特征向量库以及目标特征向量库,对待识别特征向量进行匹配;
根据匹配结果确定待识别对象数据所对应的对象信息。
在一个或多个实施例中,介绍了一种基于特征向量相似度进行对象识别的方式。由前述实施例可知,内容数据可以是用户的对象数据。相同用户的对象数据具有相似的特征向量,而不同用户具有不相似的特征向量。对象相似度通过特征向量之间的欧氏距离或余弦距离来表征。
具体地,为了便于理解,请参阅图9,图9为本申请实施例中基于特征向量匹配实现对象识别的一个场景示意图,如图所示,以考勤系统为例,用户启动考勤设备的摄像头,然后拍摄人脸图像作为待识别对象数据。基于此,考勤设备可调用本地的目标模型提取待识别对象数据的特征向量,得到待识别特征向量。再将待识别特征向量与目标特征向量库中的特征向量进行匹配。最后,根据匹配结果确定对象信息。
假设待识别特征向量与目标特征向量库中的特征向量B匹配成功,于是,查询特征向量B对应的对象信息。由此,考勤系统可展示相应的对象信息。示例性地,如果对象匹配成功,则可以在考勤系统上显示“员工0001打卡成功”。示例性地,如果对象匹配失败,则可以在考勤系统上显示“识别失败”。
可以理解的是,识别对象数据之前需要获得用户授权。示例性地,在采集对象数据之前,会询问用户是否同意调用拍摄装置。用户同意后,可采集用户的对象数据。进一步地,需要询问用户是否同意上传自己的对象数据,经过用户同意后,可进行后续的识别处理。
进一步地,本申请实施例中,提供了一种基于特征向量相似度进行对象识别的方式。通过上述方式,利用特征向量相似度识别对象,能够很好地应用于考勤系统等场景,从而提升方案的灵活性和多样性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还可以包括:
获取原始特征向量库中各个历史特征向量在第二时间周期内的热度值;
从原始特征向量库中删除热度值小于或等于热度阈值的历史特征向量。
在一个或多个实施例中,介绍了一种清理原始特征向量库的方式。由前述实施例可知,通过原始模型提取内容数据的原始特征向量,将原始特征向量存储至原始特征向量库之后,原始特征向量即成为了历史特征向量。然而,将原始模型替换为目标模型之后,不再使用原始模型提取内容数据的原始特征向量,而是由目标模型提取内容数据的目标特征向量,并将目标特征向量存储至目标特征向量库。随着目标特征向量库中存储的特征向量越来越多,使得原始特征向量库中特征向量的占比逐渐降低,从而达到逐步淘汰的效果。
具体地,考虑到数据的更替性,在原始模型替换为目标模型之后,可对原始特征向量库中存储的历史特征向量进行清理。对于原始特征向量库中的各个历史特征向量而言,还可以统计其在第二时间周期内的热度值。基于此,如果历史特征向量量在第二时间周期内的热度值小于或等于热度阈值,则直接从原始特征向量库中剔除该历史特征向量。
需要说明的是,第二时间周期可以是半年或一年等,此处不做限定。历史特征向量的热度值可表示为该历史特征向量在第二时间周期内被召回次数与被检索次数之和,或者,历史特征向量的热度值可根据不同的业务类型实现合理的计算,此处不做限定。
其次,本申请实施例中,提供了一种清理原始特征向量库的方式。通过上述方式,对于热度值较低的历史特征向量,可从原始特征向量库进行删除。由此,一方面能够达到节省存储空间的目的,另一方面,还可以提升召回特征向量的效率。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还可以包括:
获取三元组样本,其中,三元组样本包括锚点样本、正样本以及负样本;
基于三元组样本,通过目标模型获取锚点样本的目标锚点特征向量、正样本的目标正特征向量以及负样本的目标负特征向量;
基于锚点样本,通过原始模型获取原始锚点特征向量;
根据原始锚点特征向量对第一向量队列进行更新,得到第二向量队列,其中,第二向量队列存储原始锚点特征向量以及至少一个样本特征向量;
根据目标锚点特征向量、目标正特征向量、目标负特征向量以及第二向量队列,对目标模型的模型参数进行更新,直至满足模型训练条件,则确定目标模型已完成对原始模型的特征兼容学习。
在一个或多个实施例中,介绍了一种特征兼容学习的方式。由前述实施例可知,目标模型需要满足两个条件。第一,使得同类样本的相似度更大,异类样本的相似度更小。第二,使得目标模型(即,新模型)能够兼容原始模型(即,旧模型)的特征。可以理解的是,为了便于说明,本申请以一个三元组样本为例进行说明,在实际训练中,存在更多数量的三元组样本用于训练。
具体地,为了便于理解,请参阅图10,图10为本申请实施例中向后兼容训练的一个示意图,如图所示,一个三元组样本包括锚点样本(anchor sample)、正样本(positivesample)以及负样本(negative sample)。将锚点样本作为目标模型的输入,通过目标模型输出该锚点样本的目标锚点特征向量(anchor feature)。将正样本作为目标模型的输入,通过目标模型输出该正样本的目标正特征向量(positive feature)。将负样本作为目标模型的输入,通过目标模型输出该负样本的目标负特征向量(negative feature)。基于此,根据目标锚点特征向量、目标正特征向量和目标负特征向量,可计算第一损失值。
此外,将锚点样本作为原始模型的输入,通过原始模型输出该锚点样本的原始锚点特征向量。然后,根据原始锚点特征向量对第一向量队列进行更新,得到第二向量队列。可以理解的是,为了统一原始锚点特征向量和目标锚点特征向量的维度,还需要从目标锚点特征向量中截取相应的样本特征子向量。基于此,根据第二向量队列中存储的特征向量以及样本特征子向量,可计算第二损失值。
值得注意的是,在训练过程中原始模型(即,旧模型)的模型参数是固定的,不参与梯度回传,因此,可以考虑将这一路损失作为一个正则约束项。
需要说明的是,在一种情况下,可采用耗尽型准则作为判定是否满足模型训练条件的依据,例如,设定迭代次数阈值,当迭代次数达到迭代次数阈值时,即表示已满足模型训练条件。在另一种情况下,可采用观察型准则作为判定是否满足模型训练条件的依据,例如,当损失值(即,第一损失值与第二损失值之和)已经收敛时,即表示已满足模型训练条件。当满足模型训练条件时,表示目标模型已完成对原始模型的特征兼容学习。
可以理解的是,目标模型还可以作为预训练模型,经过进一步调优后用于其他任务。其次,本申请实施例中,提供了一种特征兼容学习的方式。通过上述方式,实现目标模型(即,新模型)向原始模型(即,旧模型)的兼容,基于特征兼容的算法版本迭代,不仅能够实现新算法快速生效,而且可以避免库存刷新所需的资源及时间消耗。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据目标锚点特征向量、目标正特征向量、目标负特征向量以及第二向量队列,对目标模型的模型参数进行更新,具体可以包括:
基于目标锚点特征向量、目标正特征向量以及目标负特征向量,通过三元组损失函数确定第一损失值;
从目标锚点特征向量中截取样本特征子向量,其中,样本特征子向量与原始锚点特征向量具有相等维度;
基于样本特征子向量以及第二向量队列中存储的特征向量,通过对比损失函数确定第二损失值;
根据第一损失值以及第二损失值,对目标模型的模型参数进行更新。
在一个或多个实施例中,介绍了一种基于损失函数对目标模型更新的方式。由前述实施例可知,可采用三元组损失函数(Contrastive Loss)确定第一损失值,并采用对比损失(Triplet Loss)函数确定第二损失值。其中,为了统一原始锚点特征向量和目标锚点特征向量的维度,还需要从目标锚点特征向量中截取相应的样本特征子向量,使得样本特征子向量与原始锚点特征向量具有相等维度。
具体地,三元组损失函数与相似度的检索任务相关,其优化目标为锚点和正样本的特征间的距离尽可能小,而同时拉大锚点和负样本特征间的距离。这里的距离一般选用欧氏距离。可采用如下方式计算第一损失值(即,三元组损失值):
Figure 604981DEST_PATH_IMAGE012
;公式(4)
其中,
Figure 597208DEST_PATH_IMAGE013
表示第一损失值(即,三元组损失值)。
Figure 495894DEST_PATH_IMAGE014
表示目标锚点特征向量。
Figure 471940DEST_PATH_IMAGE015
表示目标正特征向量。
Figure 481484DEST_PATH_IMAGE016
表示目标负特征向量。
Figure 357911DEST_PATH_IMAGE017
表示距离计算,这里是指欧氏距离。
Figure 161919DEST_PATH_IMAGE018
表示区间函数。
Figure 625262DEST_PATH_IMAGE019
表示取最大值。如果负样本对的距离大于正样本对的距离,则
Figure 438497DEST_PATH_IMAGE020
就不产生梯度,从而对模型优化不产生影响,保证训练过程的稳定性。
可采用如下方式计算第二损失值(即,对比损失值):
Figure 405316DEST_PATH_IMAGE021
;公式(5)
其中,
Figure 911384DEST_PATH_IMAGE022
表示第二损失值(即,对比损失值)。
Figure 596443DEST_PATH_IMAGE023
表示样本特征子向量。
Figure 947790DEST_PATH_IMAGE024
表示原始锚点特征向量。
Figure 34694DEST_PATH_IMAGE025
表示第二向量队列存储的特征向量总数。
Figure 711663DEST_PATH_IMAGE026
表示第二向量队列中的第i个样本特征向量。
Figure 884019DEST_PATH_IMAGE027
表示超参数。
Figure 39057DEST_PATH_IMAGE028
表示样本特征子向量与原始锚点特征向量之间的相似度。
Figure 246047DEST_PATH_IMAGE029
表示样本特征子向量与第i个样本特征向量之间的相似度。
基于公式(5),在负样本对之间的距离增大可以导致第二损失值减少,同时,目标模型(即,新模型)和原始模型(即,旧模型)在锚点样本产生的两个特征向量之间的距离减少也会导致第二损失值减少。那么在该第二损失值的优化过程中,目标模型(即,新模型)和原始模型(即,旧模型)的兼容性得以表征。同时,由于是基于整个第二向量队列的特征去计算目标模型的特征在原始模型特征分布中的位置,可以提升训练稳定性,使得兼容和新特征的性能提升都能够保证。
再次,本申请实施例中,提供了一种基于损失函数对目标模型更新的方式。通过上述方式,为了实现特征版本间的兼容,需要在模型训练的时候设计特殊的兼容训练算法。即,在基于三元组的训练框架中引入原始模型的特征作为一路损失的计算,以此可以实现在对目标模型的优化过程中,不仅对三元组样本间的距离优化,而且与原始模型的兼容性优化。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据原始锚点特征向量对第一向量队列进行更新,得到第二向量队列,具体可以包括:
确定第一向量队列中的待更新特征向量;
将待更新特征向量从第一向量队列中剔除,并将原始锚点特征向量加入至第一向量对象,形成第二向量队列。
在一个或多个实施例中,介绍了一种更新向量队列的方式。由前述实施例可知,通过对比损失函数计算第二损失值时,还需要使用第二向量队列中存储的特征向量。需要说明的是,本申请中的第一向量队列和第二向量队列均为存储体(memory bank),其中,第一向量队列表示更新前的memory bank,而第二向量队列表示更新后的memory bank。
具体地,memory bank存储了固定数量的特征向量,且满足先进先出的逻辑。对于每一个三元组样本中的锚点样本,通过原始模型产生的原始锚点特征向量会进入memorybank,同时淘汰memory bank中的一个特征向量,从而保持memory bank中的特征向量总量保持一致。为了便于理解,请参阅图11,图11为本申请实施例中更新向量队列的一个示意图,如图所示,假设更新的第一向量队列中存储有1024个样本特征向量,最早进入memorybank的是样本特征向量0001,最后进入memory bank的是样本特征向量1024。因此,将第一向量队列中的“样本特征向量0001”作为待更新特征向量。
在通过原始模型提取到锚点样本的原始锚点特征向量之后,先将待更新特征向量从第一向量队列中剔除。即,从第一向量队列中删除“样本特征向量0001”。再将原始锚点特征向量加入至第一向量队列,由此,形成第二向量队列。
值得注意的是,在利用原始模型(即,旧模型)的特征进行约束的这一路损失值计算中,本申请采用了memory bank和信息噪声对比估计(information noise contrastiveestimation,infoNCE)的形式计算第二损失值。
需要说明的是,图中示出的memory bank可存储1024个特征向量,在实际应用中,还可以设置为其他存储量的memory bank,此处不做限定。
进一步地,本申请实施例中,提供了一种更新向量队列的方式。通过上述方式,一方面,由于memory bank是不断更新的,且memory bank中存储的特征向量具有一定随机性,因此,能够保证数据多样性充足。另一方面,由于memory bank中存储的特征向量属于全量负样本中的一个子集,因此,减少了计算量,从而节约了内存和系统性能。
下面对本申请中的模型更新装置进行详细描述,请参阅图12,图12为本申请实施例中模型更新装置的一个实施例示意图,模型更新装置20包括:
获取模块210,用于基于目标内容数据,通过原始模型获取原始特征向量;
获取模块210,还用于基于目标内容数据,通过目标模型获取目标特征向量,其中,目标模型已完成对原始模型的特征兼容学习;
获取模块210,还用于根据原始特征向量获取针对原始特征向量库的第一召回数,其中,原始特征向量库用于存储通过原始模型提取到的历史特征向量;
获取模块210,还用于根据目标特征向量获取针对原始特征向量库的第二召回数;
确定模块220,用于根据第一召回数以及第二召回数,确定目标内容数据的目标召回率;
确定模块220,还用于根据目标召回率确定针对N个内容数据的平均召回率,其中,N个内容数据包括目标内容数据,N为大于或等于1的整数;
替换模块230,用于若平均召回率大于或等于召回率阈值,则将原始模型替换为目标模型。
本申请实施例中,提供了一种模型更新装置。采用上述装置,在目标模型(即,新模型)与原始模型(即,旧模型)完成特征兼容学习的前提下,能够将新模型提取到的特征向量直接在旧特征向量库中进行召回,并通过比对新模型和旧模型的召回情况来判定新模型是否适合上线。如果召回效果足够好,则后续直接使用新模型来提取特征向量即可。由于新模型和旧模型能够兼容特征,因此,无需重新计算库存中的历史内容数据,从而节省了大量的机器资源和时间,由此,提升了模型替换效率。与此同时,新模型可以在当下获取的内容数据中即刻发生作用,从而更好地应对快速变换的业务需求。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
获取模块210,具体用于根据原始特征向量,从原始特征向量库中召回第一特征向量集合,其中,第一特征向量集合包括与原始特征向量相似度最高的K个历史特征向量,K为大于1的整数;
根据第一特征向量集合,获取K个历史内容数据,其中,历史内容数据与第一特征向量集合中的历史特征向量具有对应关系;
获取K个历史内容数据中每个历史内容数据的内容标注结果,其中,内容标注结果用于指示历史内容数据与目标内容数据的匹配情况;
根据K个历史内容数据中每个历史内容数据的内容标注结果,统计得到第一召回数。
本申请实施例中,提供了一种模型更新装置。采用上述装置,利用原始特征向量从原始特征向量库中初步召回一定数量的历史特征向量,再结合人工审核对这些召回的结果进行匹配,找出与目标内容数据具有相同内容的内容数据。由此,提升有效召回的准确率,进而提升平均召回率的准确率。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
获取模块210,具体用于从目标特征向量中截取特征子向量,其中,特征子向量与原始特征向量具有相等维度;
根据特征子向量,从原始特征向量库中召回第二特征向量集合,其中,第二特征向量集合包括与原始特征向量相似度最高的T个历史特征向量,T为大于1的整数;
根据第二特征向量集合,获取T个历史内容数据,其中,历史内容数据与第二特征向量集合中的历史特征向量具有对应关系;
获取T个历史内容数据中每个历史内容数据的内容标注结果,其中,内容标注结果用于指示历史内容数据与目标内容数据的匹配情况;
根据T个历史内容数据中每个历史内容数据的内容标注结果,统计得到第二召回数。
本申请实施例中,提供了一种模型更新装置。采用上述装置,利用目标特征向量中的特征子向量,从原始特征向量库中初步召回一定数量的历史特征向量,再结合人工审核对这些召回的结果进行匹配,找出与目标内容数据具有相同内容的内容数据。由此,提升有效召回的准确率,进而提升平均召回率的准确率。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,N为大于1的整数;
获取模块210,还用于根据目标召回率确定针对N个内容数据的平均召回率之前,针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过原始模型获取内容数据的原始特征向量,其中,(N-1)个内容数据为N个内容数据中除去目标内容数据之外的内容数据;
获取模块210,还用于针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过目标模型获取内容数据的目标特征向量;
获取模块210,还用于针对(N-1)个内容数据中的每个内容数据,根据内容数据的原始特征向量获取针对原始特征向量库的第一召回数;
获取模块210,还用于针对(N-1)个内容数据中的每个内容数据,根据内容数据的目标特征向量获取针对原始特征向量库的第二召回数;
获取模块210,还用于针对(N-1)个内容数据中的每个内容数据,根据第一召回数以及第二召回数,确定内容数据的召回率;
确定模块220,具体用于根据目标召回率以及所述 (N-1)个内容数据中每个内容数据的召回率,计算得到平均召回率。
本申请实施例中,提供了一种模型更新装置。采用上述装置,基于多个内容数据的召回率生成平均召回率,该平均召回率能够更好地表示目标模型的召回情况,从而提升方案的可行性和可操作性。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
获取模块210,还用于在第一时间周期内获取N个内容数据;
获取模块210,还用于从N个内容数据中获取目标内容数据;
或,
获取模块210,还用于在第一时间周期内获取N个内容数据;
获取模块210,还用于若N的取值大于或等于内容数量阈值,则从N个内容数据中获取目标内容数据。
本申请实施例中,提供了一种模型更新装置。采用上述装置,将时间周期作为召回内容数据的条件,不仅能够提升线上服务的稳定性,而且还充分考虑到人工匹配内容数据一致性的情况,从而提升方案的可行性和可操作性。基于此,再进入获取到的内容数据数量作为约束,能够进一步提升召回结果的可靠性。此外,相比于全量翻算所需的时间,本申请设置的第一时间周期显著提升了算法迭代效率。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,模型更新装置20还包括存储模块240;
存储模块240,用于将原始模型替换为目标模型之前,将N个原始特征向量存储至原始特征向量库,其中,N个原始特征向量为在第一时间周期内对N个内容数据提取到的原始特征向量;
存储模块240,还用于将N个目标特征向量存储至目标特征向量库,其中,N个目标特征向量为在第一时间周期内对N个内容数据提取到的目标特征向量;
获取模块210,还用于将原始模型替换为目标模型之后,当获取到内容数据时,基于内容数据,通过目标模型获取内容数据的目标特征向量;
存储模块240,还用于将内容数据的目标特征向量存储至目标特征向量库。
本申请实施例中,提供了一种模型更新装置。采用上述装置,构建原始特征向量库与目标特征向量库,能够分开存储内容数据的原始特征向量和目标特征向量。便于进行特征向量的召回和索引,从而提升业务处理效率。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,模型更新装置20还包括删除模块250;
删除模块250,用于根据目标召回率确定针对N个内容数据的平均召回率之后,若平均召回率小于召回率阈值,则从目标特征向量库中删除N个目标特征向量。
本申请实施例中,提供了一种模型更新装置。采用上述装置,基于平均召回率实现自动校验,以便快速发现问题。一旦发现出现问题,可及时回滚到上一个模型版本(即,原始模型的版本)。由于原始模型在第一时间周期内持续提供检索服务,因此,回滚时不会受到新模型版本的影响,增加了系统的鲁棒性。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,模型更新装置20还包括匹配模块260;
获取模块210,还用于将原始模型替换为目标模型之后,获取待检测内容数据,其中,待检测内容数据为视频、音频或图片;
获取模块210,还用于基于待检测内容数据,通过目标模型获取待检测特征向量;
匹配模块260,用于根据原始特征向量库以及目标特征向量库,对待检测特征向量进行匹配;
确定模块220,还用于根据匹配结果确定待检测内容数据所对应的版权信息。
本申请实施例中,提供了一种模型更新装置。采用上述装置,利用视频指纹技术区分视频内容,不仅具有较高的稳定性,而且能够有效地避免视频的格式转换、编辑、裁剪拼接和压缩旋转等操作的影响。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
获取模块210,还用于获取待识别对象数据;
获取模块210,还用于基于待识别对象数据,通过目标模型获取待识别特征向量;
匹配模块260,还用于根据原始特征向量库以及目标特征向量库,对待识别特征向量进行匹配;
确定模块220,还用于根据匹配结果确定待识别对象数据所对应的对象信息。
本申请实施例中,提供了一种模型更新装置。采用上述装置,利用特征向量相似度识别对象,能够很好地应用于考勤系统等场景,从而提升方案的灵活性和多样性。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
获取模块210,还用于获取原始特征向量库中各个历史特征向量在第二时间周期内的热度值;
删除模块250,还用于从原始特征向量库中删除热度值小于或等于热度阈值的历史特征向量。
本申请实施例中,提供了一种模型更新装置。采用上述装置,对于热度值较低的历史特征向量,可从原始特征向量库进行删除。由此,一方面能够达到节省存储空间的目的,另一方面,还可以提升召回特征向量的效率。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,模型更新装置20还包括更新模块270以及训练模块280;
获取模块210,还用于获取三元组样本,其中,三元组样本包括锚点样本、正样本以及负样本;
获取模块210,还用于基于三元组样本,通过目标模型获取锚点样本的目标锚点特征向量、正样本的目标正特征向量以及负样本的目标负特征向量;
获取模块210,还用于基于锚点样本,通过原始模型获取原始锚点特征向量;
更新模块270,用于根据原始锚点特征向量对第一向量队列进行更新,得到第二向量队列,其中,第二向量队列存储原始锚点特征向量以及至少一个样本特征向量;
训练模块280,用于根据目标锚点特征向量、目标正特征向量、目标负特征向量以及第二向量队列,对目标模型的模型参数进行更新,直至满足模型训练条件,则确定目标模型已完成对原始模型的特征兼容学习。
本申请实施例中,提供了一种模型更新装置。采用上述装置,实现目标模型(即,新模型)向原始模型(即,旧模型)的兼容,基于特征兼容的算法版本迭代,不仅能够实现新算法快速生效,而且可以避免库存刷新所需的资源及时间消耗。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
训练模块280,具体用于基于目标锚点特征向量、目标正特征向量以及目标负特征向量,通过三元组损失函数确定第一损失值;
从目标锚点特征向量中截取样本特征子向量,其中,样本特征子向量与原始锚点特征向量具有相等维度;
基于样本特征子向量以及第二向量队列中存储的特征向量,通过对比损失函数确定第二损失值;
根据第一损失值以及第二损失值,对目标模型的模型参数进行更新。
本申请实施例中,提供了一种模型更新装置。采用上述装置,为了实现特征版本间的兼容,需要在模型训练的时候设计特殊的兼容训练算法。即,在基于三元组的训练框架中引入原始模型的特征作为一路损失的计算,以此可以实现在对目标模型的优化过程中,不仅对三元组样本间的距离优化,而且与原始模型的兼容性优化。
可选地,在上述图12所对应的实施例的基础上,本申请实施例提供的模型更新装置20的另一实施例中,
更新模块270,具体用于确定第一向量队列中的待更新特征向量;
将待更新特征向量从第一向量队列中剔除,并将原始锚点特征向量加入至第一向量对象,形成第二向量队列。
本申请实施例中,提供了一种模型更新装置。采用上述装置,一方面,由于memorybank是不断更新的,且memory bank中存储的特征向量具有一定随机性,因此,能够保证数据多样性充足。另一方面,由于memory bank中存储的特征向量属于全量负样本中的一个子集,因此,减少了计算量,从而节约了内存和系统性能。
本申请提供的模型更新装置可部署于服务器,为了便于理解,请参阅图13,图13是本申请实施例提供的一种服务器结构示意图,该服务器300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在服务器300上执行存储介质330中的一系列指令操作。
服务器300还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图13所示的服务器结构。
本申请提供的模型更新装置可部署于终端设备,为了便于理解,请参阅图14,本申请实施例还提供了一种终端设备,如图14所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。在本申请实施例中,以终端设备为智能手机为例进行说明:
图14示出的是与本申请实施例提供的智能手机的部分结构的框图。参考图14,智能手机包括:射频(radio frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图14中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图14对智能手机的各个构成部件进行具体的介绍:
RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路410包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统 (globalsystem of mobile communication,GSM)、通用分组无线服务(general packet radioservice,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access, WCDMA)、长期演进 (long termevolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元430可用于接收输入的数字或字符信息,以及产生与智能手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、鼠标、操作杆等中的一种或多种。
显示单元440可用于显示由用户输入的信息或提供给用户的信息以及智能手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图14中,触控面板431与显示面板441是作为两个独立的部件来实现智能手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现智能手机的输入和输出功能。
智能手机还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在智能手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别智能手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于智能手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路460、扬声器461,传声器462可提供用户与智能手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一智能手机,或者将音频数据输出至存储器420以便进一步处理。
WiFi属于短距离无线传输技术,智能手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图14示出了WiFi模块470,但是可以理解的是,其并不属于智能手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器480是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行智能手机的各种功能和处理数据。可选的,处理器480可包括一个或多个处理单元;可选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。
智能手机还包括给各个部件供电的电源490(比如电池),可选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,智能手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
上述实施例中由终端设备所执行的步骤可以基于该图14所示的终端设备结构。
本申请实施例中还提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,该处理器执行计算机程序时,实现前述各个实施例描述方法的步骤。
本申请实施例中还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现前述各个实施例描述方法的步骤。
本申请实施例中还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,实现前述各个实施例描述方法的步骤。
可以理解的是,在本申请的具体实施方式中,涉及到用户信息、人脸图像和对象数据等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是服务器或者终端设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储计算机程序的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (16)

1.一种模型更新的方法,其特征在于,包括:
基于目标内容数据,通过原始模型获取原始特征向量;
基于所述目标内容数据,通过目标模型获取目标特征向量,其中,所述目标模型已完成对所述原始模型的特征兼容学习;
根据所述原始特征向量获取针对原始特征向量库的第一召回数,其中,所述原始特征向量库用于存储通过所述原始模型提取到的历史特征向量;
根据所述目标特征向量获取针对所述原始特征向量库的第二召回数;
根据所述第一召回数以及所述第二召回数,确定所述目标内容数据的目标召回率;
根据所述目标召回率确定针对N个内容数据的平均召回率,其中,所述N个内容数据包括所述目标内容数据,所述N为大于或等于1的整数;
若所述平均召回率大于或等于召回率阈值,则将所述原始模型替换为所述目标模型。
2.根据权利要求1所述的方法,其特征在于,所述根据所述原始特征向量获取针对原始特征向量库的第一召回数,包括:
根据所述原始特征向量,从所述原始特征向量库中召回第一特征向量集合,其中,所述第一特征向量集合包括与所述原始特征向量相似度最高的K个历史特征向量,所述K为大于1的整数;
根据所述第一特征向量集合,获取K个历史内容数据,其中,所述历史内容数据与所述第一特征向量集合中的历史特征向量具有对应关系;
获取所述K个历史内容数据中每个历史内容数据的内容标注结果,其中,所述内容标注结果用于指示历史内容数据与所述目标内容数据的匹配情况;
根据所述K个历史内容数据中每个历史内容数据的内容标注结果,统计得到所述第一召回数。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标特征向量获取针对所述原始特征向量库的第二召回数,包括:
从所述目标特征向量中截取特征子向量,其中,所述特征子向量与所述原始特征向量具有相等维度;
根据所述特征子向量,从所述原始特征向量库中召回第二特征向量集合,其中,所述第二特征向量集合包括与所述原始特征向量相似度最高的T个历史特征向量,所述T为大于1的整数;
根据所述第二特征向量集合,获取T个历史内容数据,其中,所述历史内容数据与所述第二特征向量集合中的历史特征向量具有对应关系;
获取所述T个历史内容数据中每个历史内容数据的内容标注结果,其中,所述内容标注结果用于指示历史内容数据与所述目标内容数据的匹配情况;
根据所述T个历史内容数据中每个历史内容数据的内容标注结果,统计得到所述第二召回数。
4.根据权利要求1所述的方法,其特征在于,所述N为大于1的整数;
所述根据所述目标召回率确定针对N个内容数据的平均召回率之前,所述方法还包括:
针对(N-1)个内容数据中的每个内容数据,基于内容数据,通过所述原始模型获取所述内容数据的原始特征向量,其中,所述(N-1)个内容数据为所述N个内容数据中除去所述目标内容数据之外的内容数据;
针对所述(N-1)个内容数据中的每个内容数据,基于内容数据,通过所述目标模型获取所述内容数据的目标特征向量;
针对所述(N-1)个内容数据中的每个内容数据,根据内容数据的原始特征向量获取针对所述原始特征向量库的第一召回数;
针对所述(N-1)个内容数据中的每个内容数据,根据内容数据的目标特征向量获取针对所述原始特征向量库的第二召回数;
针对所述(N-1)个内容数据中的每个内容数据,根据第一召回数以及第二召回数,确定内容数据的召回率;
所述根据所述目标召回率确定针对N个内容数据的平均召回率,包括:
根据所述目标召回率以及所述(N-1)个内容数据中每个内容数据的召回率,计算得到所述平均召回率。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在第一时间周期内获取所述N个内容数据;
从所述N个内容数据中获取所述目标内容数据;
或,
所述方法还包括:
在第一时间周期内获取所述N个内容数据;
若所述N的取值大于或等于内容数量阈值,则从所述N个内容数据中获取所述目标内容数据。
6.根据权利要求5所述的方法,其特征在于,所述将所述原始模型替换为所述目标模型之前,所述方法还包括:
将N个原始特征向量存储至所述原始特征向量库,其中,所述N个原始特征向量为在所述第一时间周期内对所述N个内容数据提取到的原始特征向量;
将N个目标特征向量存储至目标特征向量库,其中,所述N个目标特征向量为在所述第一时间周期内对所述N个内容数据提取到的目标特征向量;
所述将所述原始模型替换为所述目标模型之后,所述方法还包括:
当获取到内容数据时,基于所述内容数据,通过所述目标模型获取所述内容数据的目标特征向量;
将所述内容数据的目标特征向量存储至所述目标特征向量库。
7.根据权利要求6所述的方法,其特征在于,所述根据所述目标召回率确定针对N个内容数据的平均召回率之后,所述方法还包括:
若所述平均召回率小于所述召回率阈值,则从所述目标特征向量库中删除所述N个目标特征向量。
8.根据权利要求6所述的方法,其特征在于,所述将所述原始模型替换为所述目标模型之后,所述方法还包括:
获取待检测内容数据,其中,所述待检测内容数据为视频、音频或图片;
基于所述待检测内容数据,通过所述目标模型获取待检测特征向量;
根据所述原始特征向量库以及所述目标特征向量库,对所述待检测特征向量进行匹配;
根据匹配结果确定所述待检测内容数据所对应的版权信息。
9.根据权利要求6所述的方法,其特征在于,所述将所述原始模型替换为所述目标模型之后,所述方法还包括:
获取待识别对象数据;
基于所述待识别对象数据,通过所述目标模型获取待识别特征向量;
根据所述原始特征向量库以及所述目标特征向量库,对所述待识别特征向量进行匹配;
根据匹配结果确定所述待识别对象数据所对应的对象信息。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述原始特征向量库中各个历史特征向量在第二时间周期内的热度值;
从所述原始特征向量库中删除热度值小于或等于热度阈值的历史特征向量。
11.根据权利要求1至10中任一项所述的方法,其特征在于,所述方法还包括:
获取三元组样本,其中,所述三元组样本包括锚点样本、正样本以及负样本;
基于所述三元组样本,通过所述目标模型获取所述锚点样本的目标锚点特征向量、所述正样本的目标正特征向量以及所述负样本的目标负特征向量;
基于所述锚点样本,通过原始模型获取原始锚点特征向量;
根据所述原始锚点特征向量对第一向量队列进行更新,得到第二向量队列,其中,所述第二向量队列存储所述原始锚点特征向量以及至少一个样本特征向量;
根据所述目标锚点特征向量、所述目标正特征向量、所述目标负特征向量以及所述第二向量队列,对所述目标模型的模型参数进行更新,直至满足模型训练条件,则确定所述目标模型已完成对所述原始模型的特征兼容学习。
12.根据权利要求11所述的方法,其特征在于,所述根据所述目标锚点特征向量、所述目标正特征向量、所述目标负特征向量以及所述第二向量队列,对所述目标模型的模型参数进行更新,包括:
基于所述目标锚点特征向量、所述目标正特征向量以及所述目标负特征向量,通过三元组损失函数确定第一损失值;
从所述目标锚点特征向量中截取样本特征子向量,其中,所述样本特征子向量与所述原始锚点特征向量具有相等维度;
基于所述样本特征子向量以及所述第二向量队列中存储的特征向量,通过对比损失函数确定第二损失值;
根据所述第一损失值以及所述第二损失值,对所述目标模型的模型参数进行更新。
13.根据权利要求12所述的方法,其特征在于,所述根据所述原始锚点特征向量对第一向量队列进行更新,得到第二向量队列,包括:
确定所述第一向量队列中的待更新特征向量;
将所述待更新特征向量从所述第一向量队列中剔除,并将所述原始锚点特征向量加入至所述第一向量对象,形成所述第二向量队列。
14.一种模型更新装置,其特征在于,包括:
获取模块,用于基于目标内容数据,通过原始模型获取原始特征向量;
所述获取模块,还用于基于所述目标内容数据,通过目标模型获取目标特征向量,其中,所述目标模型已完成对所述原始模型的特征兼容学习;
所述获取模块,还用于根据所述原始特征向量获取针对原始特征向量库的第一召回数,其中,所述原始特征向量库用于存储通过所述原始模型提取到的历史特征向量;
所述获取模块,还用于根据所述目标特征向量获取针对所述原始特征向量库的第二召回数;
确定模块,用于根据所述第一召回数以及所述第二召回数,确定所述目标内容数据的目标召回率;
所述确定模块,还用于根据所述目标召回率确定针对N个内容数据的平均召回率,其中,所述N个内容数据包括所述目标内容数据,所述N为大于或等于1的整数;
替换模块,用于若所述平均召回率大于或等于召回率阈值,则将所述原始模型替换为所述目标模型。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至13中任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13中任一项所述的方法的步骤。
CN202210298078.0A 2022-03-25 2022-03-25 一种模型更新的方法、相关装置、设备以及存储介质 Active CN114399058B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210298078.0A CN114399058B (zh) 2022-03-25 2022-03-25 一种模型更新的方法、相关装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210298078.0A CN114399058B (zh) 2022-03-25 2022-03-25 一种模型更新的方法、相关装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN114399058A CN114399058A (zh) 2022-04-26
CN114399058B true CN114399058B (zh) 2022-06-10

Family

ID=81234392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210298078.0A Active CN114399058B (zh) 2022-03-25 2022-03-25 一种模型更新的方法、相关装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN114399058B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189908A (zh) * 2018-08-22 2019-01-11 重庆市智权之路科技有限公司 海量数据提取推送工作方法
CN110287202A (zh) * 2019-05-16 2019-09-27 北京百度网讯科技有限公司 数据更新方法、装置、电子设备及存储介质
CN113886632A (zh) * 2021-12-03 2022-01-04 杭州并坚科技有限公司 一种基于动态规划的视频检索匹配方法
CN114005015A (zh) * 2021-12-28 2022-02-01 北京的卢深视科技有限公司 模型训练方法、电子设备和计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106803055B (zh) * 2015-11-26 2019-10-25 腾讯科技(深圳)有限公司 人脸识别方法和装置
CN108241745B (zh) * 2018-01-08 2020-04-28 阿里巴巴集团控股有限公司 样本集的处理方法及装置、样本的查询方法及装置
CN109190029B (zh) * 2018-08-22 2021-09-28 中食安泓(广东)健康产业有限公司 云端智能信息推送平台工作方法
CN112132367A (zh) * 2019-06-05 2020-12-25 国网信息通信产业集团有限公司 一种用于企业经营管理风险识别的建模方法及装置
CN111796931B (zh) * 2020-06-09 2024-03-29 阿里巴巴集团控股有限公司 信息处理方法、装置、计算设备和介质
CN113515690A (zh) * 2021-01-04 2021-10-19 腾讯科技(深圳)有限公司 内容召回模型的训练方法、内容召回方法、装置及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189908A (zh) * 2018-08-22 2019-01-11 重庆市智权之路科技有限公司 海量数据提取推送工作方法
CN110287202A (zh) * 2019-05-16 2019-09-27 北京百度网讯科技有限公司 数据更新方法、装置、电子设备及存储介质
CN113886632A (zh) * 2021-12-03 2022-01-04 杭州并坚科技有限公司 一种基于动态规划的视频检索匹配方法
CN114005015A (zh) * 2021-12-28 2022-02-01 北京的卢深视科技有限公司 模型训练方法、电子设备和计算机可读存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Quan Fang 等.Folksonomy-based Visual Ontology Construction and Its Applications.《IEEE TRANSACTIONS ON MULTIMEDIA》.2016,1-14. *
梁作斌.图像检索系统效率研究及优化.《中国优秀硕士学位论文全文数据库信息科技辑》.2010,(第(2010)07期),I138-690. *
苏宏江 等.一种特征库可更新的相关反馈图像检索方法.《铁道学报》.2004,第26卷(第6期),37-43. *

Also Published As

Publication number Publication date
CN114399058A (zh) 2022-04-26

Similar Documents

Publication Publication Date Title
CN107943860B (zh) 模型的训练方法、文本意图的识别方法及装置
CN111368934B (zh) 图像识别模型训练方法、图像识别方法以及相关装置
CN108536753B (zh) 重复信息的确定方法及相关装置
CN109918669B (zh) 实体确定方法、装置及存储介质
CN111209423B (zh) 一种基于电子相册的图像管理方法、装置以及存储介质
WO2023168998A1 (zh) 视频片段的识别方法、装置、设备以及存储介质
WO2021120875A1 (zh) 搜索方法、装置、终端设备及存储介质
CN113822427A (zh) 一种模型训练的方法、图像匹配的方法、装置及存储介质
CN114973351B (zh) 人脸识别方法、装置、设备及存储介质
CN114092920B (zh) 一种模型训练的方法、图像分类的方法、装置及存储介质
CN112766406B (zh) 物品图像的处理方法、装置、计算机设备及存储介质
CN113505256B (zh) 特征提取网络训练方法、图像处理方法及装置
CN111797148A (zh) 数据处理方法、装置、存储介质及电子设备
CN115376192A (zh) 用户异常行为确定方法、装置、计算机设备及存储介质
US20130191368A1 (en) System and method for using multimedia content as search queries
CN116070114A (zh) 数据集的构建方法、装置、电子设备及存储介质
CN111126159A (zh) 用于实时跟踪行人的方法、装置、电子设备和介质
CN115730047A (zh) 一种智能问答方法、设备、装置及存储介质
CN110866114B (zh) 对象行为的识别方法、装置及终端设备
CN114399058B (zh) 一种模型更新的方法、相关装置、设备以及存储介质
CN111859240A (zh) 一种图片导出的方法、相关装置及存储介质
CN113705309A (zh) 一种景别类型判断方法、装置、电子设备和存储介质
CN110413603A (zh) 重复数据的确定方法、装置、电子设备及计算机存储介质
CN115565215B (zh) 一种人脸识别算法切换方法、装置及存储介质
CN112925963B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40070360

Country of ref document: HK