CN113298197B - 数据聚类方法、装置、设备及可读存储介质 - Google Patents

数据聚类方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN113298197B
CN113298197B CN202110858801.1A CN202110858801A CN113298197B CN 113298197 B CN113298197 B CN 113298197B CN 202110858801 A CN202110858801 A CN 202110858801A CN 113298197 B CN113298197 B CN 113298197B
Authority
CN
China
Prior art keywords
clustering
data
sample
sample data
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
CN202110858801.1A
Other languages
English (en)
Other versions
CN113298197A (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 CN202110858801.1A priority Critical patent/CN113298197B/zh
Publication of CN113298197A publication Critical patent/CN113298197A/zh
Application granted granted Critical
Publication of CN113298197B publication Critical patent/CN113298197B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种数据聚类方法、装置、设备及可读存储介质,涉及机器学习领域。该方法包括:获取样本数据库;基于样本数据之间的相似度构建样本三元组,其中包括基准数据、正样本数据和负样本数据,基准数据与正样本数据之间的相似度符合相似度条件,与负样本数据之间的相似度不符合相似度条件;根据第一聚类模型对样本三元组的第一聚类结果,确定损失值,对第一聚类模型进行训练,得到目标聚类模型。将样本数据之间的相似度融入至目标聚类模型的训练过程中,从而确保目标聚类模型的聚类结果符合样本之间特征距离的同时也能够符合相似度要求,提高了聚类的准确率。

Description

数据聚类方法、装置、设备及可读存储介质
技术领域
本申请实施例涉及机器学习领域,特别涉及一种数据聚类方法、装置、设备及可读存储介质。
背景技术
数据聚类通常用于图像分类识别、语音分类识别等领域。将原始大量数据分成多个不重叠的数据子集合,每个数据子集合属于一个分桶,在检索时仅需要将待分类数据与每个分桶的聚类中心进行匹配,得到匹配度最高的聚类中心,将待分类数据与匹配度最高的聚类中的数据进行匹配,则能完成数据检索。
相关技术中,将原始大量数据分成多个分桶时,是基于数据特征嵌入(embedding)之间的距离实现的,将embedding距离小的数据聚类在同一个分桶中。
然而,上述聚类方式的实现过程中,忽略了样本之间的相似度特性,易将两个相似的样本聚类至不同的分桶中,导致聚类准确率较低,从而导致数据检索的准确率较低。
发明内容
本申请实施例提供了一种数据聚类方法、装置、设备及可读存储介质,能够提高聚类准确率。所述技术方案如下。
一方面,提供了一种数据聚类方法,所述方法包括:
获取样本数据库,所述样本数据库中包括样本数据;
基于所述样本数据之间的相似度构建样本三元组,所述样本三元组中包括基准数据、正样本数据和负样本数据,所述基准数据与所述正样本数据之间的相似度符合相似度条件,所述基准数据与所述负样本数据之间的相似度不符合所述相似度条件;
通过第一聚类模型对所述样本三元组的第一聚类结果,以及第二聚类模型对所述样本数据的第二聚类结果,确定所述损失值,其中,所述第二聚类模型为经过训练的且与所述第一聚类模型结构不同的模型;
通过所述损失值对所述第一聚类模型进行训练,得到目标聚类模型,所述目标聚类模型用于实现数据聚类。
另一方面,提供了一种数据聚类装置,所述装置包括:
获取模块,用于获取样本数据库,所述样本数据库中包括样本数据;
构建模块,用于基于所述样本数据之间的相似度构建样本三元组,所述样本三元组中包括基准数据、正样本数据和负样本数据,所述基准数据与所述正样本数据之间的相似度符合相似度条件,所述基准数据与所述负样本数据之间的相似度不符合所述相似度条件;
确定模块,用于通过第一聚类模型对所述样本三元组的第一聚类结果,和第二聚类模型对所述样本数据的第二聚类结果,确定所述损失值,其中,所述第二聚类模型为经过训练的且与所述第一聚类模型结构不同的模型;
训练模块,用于通过所述损失值对所述第一聚类模型进行训练,得到目标聚类模型,所述目标聚类模型用于实现数据聚类。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中任一所述数据聚类方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述本申请实施例中任一所述的数据聚类方法。
另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的数据聚类方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
在对目标聚类模型进行训练的过程中,采用样本数据构建的样本三元组,将样本数据之间的相似度融入至目标聚类模型的训练过程中,从而确保目标聚类模型的聚类结果符合样本之间特征距离的同时也能够符合相似度要求,提高了聚类的准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的基于聚类的分桶检索方法的过程示意图;
图2是本申请一个示例性实施例提供的实施环境示意图;
图3是本申请一个示例性实施例提供的数据聚类方法的流程图;
图4是本申请另一个示例性实施例提供的数据聚类方法的流程图;
图5是基于图4示出的实施例提供的第一聚类模型的结构示意图;
图6是基于图4示出的实施例提供的聚类结果修正过程示意图;
图7是基于图4示出的实施例提供的聚类结果修正结果示意图;
图8是基于图4示出的实施例提供的聚类损失计算结构示意图;
图9是本申请另一个示例性实施例提供的数据聚类方法;
图10是本申请一个示例性实施例提供的数据聚类装置的结构框图;
图11是本申请另一个示例性实施例提供的数据聚类装置的结构框图;
图12是本申请一个示例性实施例提供的服务器的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,针对本申请实施例中涉及的名词进行简单介绍。
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML):是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
计算机视觉技术(Computer Vision,CV):是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(Optical Character Recognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
本申请实施例提供的数据聚类方法主要应用于数据检索。以图像检索为例进行说明,大规模的图像检索通常依赖于分桶检索,即,将大量的原始数据分成多个不重叠的数据子集合,每个数据子集合属于一个分桶,在图像检索时,仅需要从目标样本最匹配的分桶中寻找匹配样本,提升了检索效率。示意性的,请参考图1,其示出了本申请一个示例性实施例提供的基于聚类的分桶检索方法的过程示意图,如图1所示,针对图像100,首先提取图像100的图像特征110,以及获取图像库120中各个聚类的类中心130,将图像特征110与类中心130进行匹配,从而得到与图像特征110距离最近的类中心130对应的聚类作为召回类,将图像特征110与召回类中的图像进行特征匹配,从中检索到与图像100相似度最高的图像作为检索结果。
分桶通常采用聚类的方式产生,示意性的,针对100万数据量的样本,若分成1万个分桶,则聚类中心为1万。
分桶效果对检索准确率的影响较大,分桶过程中期望的效果是将具有相似特征的样本分到同一个分桶中。相关技术中通常使用kmeans聚类方式实现数据聚类,然而,kmeans聚类方式由于仅基于特征embedding之间的距离,容易造成相似图像被分到不同的聚类中心,忽略了样本相似度特性,从而在应用中由于两个相似样本位于不同的中心,造成检索漏召回。
针对本申请训练得到的目标聚类模型,在应用时包括如下场景中的至少一种。
第一,应用于图像聚类场景中,示意性的,将动物图像库输入至目标聚类模型后,对动物图像按照动物类型进行聚类,如:聚类为狗、猫、牛、羊等分桶,而聚类为狗的分桶的图像中还包括各种品种的狗的图像,在聚类完成后,该聚类结果可以应用于动物品种的区分功能中,如:用户将动物图像上传至服务器后,由服务器根据聚类结果首先在聚类得到的分桶中查找特征中心与动物图像距离最近的分桶,作为动物图像的动物类型,从而在分桶中确定特征距离最近的图像得到动物图像对应的品种。
第二,应用于语音聚类场景中,示意性的,将语音库输入至目标聚类模型后,对语音内容按照年龄段进行聚类,而聚类得到的每个分桶中的语音内容对应有发声用户。在应用过程中,用户上传语音内容,首先在聚类得到的分桶中查找特征中心与语音内容距离最近的分桶,作为该语音内容对应的发生年龄段,从而在分桶中确定特征距离最近的语音,得到该语音内容对应的发声用户。
值得注意的是,上述应用场景仅为示意性的举例,本申请实施例提供的数据聚类方法还可以应用于其他场景中,如:对多个图像进行分类的场景,本申请实施例对此不加以限定。
其次,对本申请实施例中涉及的实施环境进行说明,示意性的,请参考图2,该实施环境中涉及终端210、服务器220,终端210和服务器220之间通过通信网络230连接。
在一些实施例中,终端210用于向服务器220发送待检索数据。在一些实施例中,终端210中安装有具有检索功能的应用程序,示意性的,终端210中安装有具有图像检索功能的应用程序;或者,终端210中安装有具有聚类功能对的应用程序。如:终端210中安装有搜索引擎程序、即时通讯应用程序、游戏类程序等,本申请实施例对此不加以限定。
服务器220中包括通过目标聚类模型预测得到的聚类结果,根据聚类结果对待检索数据进行检索后,输出得到检索结果,并将检索结果反馈至终端210进行显示。
其中,目标聚类模型是通过样本数据库中的样本数据训练并聚类得到的。从样本数据库中的样本数据中,根据相似度条件采样得到样本三元组,其中包括基准数据,与基准数据符合相似度条件的正样本数据,以及与基准数据不符合相似度条件的负样本数据。根据样本三元组在第一聚类模型中的聚类结果对第一聚类模型进行训练,最终得到目标聚类模型,从而通过目标聚类模型中的聚类结果实现数据检索。
上述终端可以是手机、平板电脑、台式电脑、便携式笔记本电脑、智能电视等多种形式的终端设备,本申请实施例对此不加以限定。
值得注意的是,上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
其中,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
在一些实施例中,上述服务器还可以实现为区块链系统中的节点。区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链,本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
结合上述名词简介和应用场景,对本申请提供的数据聚类方法进行说明,该方法可以由服务器或者终端执行,也可以由服务器和终端共同执行,本申请实施例中,以该方法由服务器执行为例进行说明,如图3所示,该方法包括如下步骤。
步骤301,获取样本数据库,样本数据库中包括样本数据。
其中,样本数据属于同一数据类型,如:样本数据库中的样本数据为图像数据、语音数据、文本数据等,本申请实施例对此不加以限定。
可选地,以该样本数据为图像数据为例,该样本数据库为Imagenet,即大型通用物体识别开源数据集。
在一些实施例中,样本数据库中的样本数据属于多种不同的类别,如:样本数据库中的样本数据为图像数据时,该图像数据的图像内容包括猫、狗、羊、猪等动物,从而对不同动物的对应的图像数据进行聚类。
步骤302,基于样本数据之间的相似度构建样本三元组,样本三元组中包基准数据、正样本数据和负样本数据。
其中,基准数据与正样本之间的相似度符合相似度条件,基准数据与负样本之间的相似度不符合相似度条件。
在一些实施例中,样本三元组为从样本数据库中标注得到的三元组样本对,其中包括基准数据(anchor)、正样本数据(positive)以及负样本数据(negative),其中,基准数据与正样本数据为一对相似样本,基准数据与负样本数据为一对不相似样本。
可选地,基准数据与正样本数据的相似度大于(或者等于)相似度阈值,基准数据与负样本数据之间的相似度小于(或者等于)相似度阈值。本申请实施例中,以基准数据与正样本数据处于同一聚类,基准数据与负样本数据处于不同聚类为目标进行模型训练,从而将样本数据之间的相似度作为聚类的其中一个条件,避免相似样本被分至不同聚类的情况。
步骤303,根据第一聚类模型对样本三元组的第一聚类结果,确定损失值。
在根据样本三元组对第一聚类模型进行损失值确定的过程中包括如下情况中的至少一种情况。
1、根据第一聚类模型对样本三元组中数据的输出结果计算该损失值;其中,损失值中包括基准数据与正样本数据之间的第一距离,以及基准数据与负样本之间的第二距离,根据第一距离和第二距离之间的差值确定损失值,从而对第一聚类模型进行训练。
2、通过第一聚类模型对样本三元组进行聚类,得到第一聚类结果,通过第二聚类模型对样本数据库中的样本数据进行聚类,得到第二聚类结果,其中第二聚类模型为经过训练的且与第一聚类模型结构不同的模型,也即,使用第二聚类模型的第二聚类结果为第一聚类模型的第一聚类结果提供聚类目标。根据第一聚类结果和第二聚类结果确定损失值。
由于第二聚类模型为经过训练的聚类模型,也即,第二聚类模型的第二聚类结果作为样本数据的聚类伪标签对第一聚类模型进行训练。
本申请实施例中,以通过第二聚类模型以及样本三元组对第一聚类模型进行训练为例进行说明。
可选地,第一聚类模型与第二聚类模型的模型结构不同,或者,第一聚类模型与第二聚类模型采用的聚类方式不同,其中,第二聚类模型的聚类过程中未涉及样本数据之间的相似度情况,也即,第二聚类模型是根据样本数据的数据特征进行聚类的。本实施例中,第二聚类模型用于向第一聚类模型提供训练过程中的样本数据伪标签,从而第一聚类模型的训练过程中,参考第二聚类模型标注的伪标签以及样本三元组中基准数据、正样本数据和负样本是数据之间的相似度关系,进行聚类结果的修正,从而实现第一聚类模型的训练。
其中,第一聚类模型用于对数据库中的数据进行聚类,也即,将数据库中数据特征相近以及数据相似度高的数据归纳至同一聚类中,如:将数据库中图像内容为狗的图像归纳至同一聚类中,将数据库中图像内容为猫的图像归纳至同一聚类中,以此类推。其中,由于第一聚类模型的数据聚类过程中通过样本三元组将数据相似度,纳入聚类条件中,从而确保即使样本数据的数据特征之间距离较远,也能将相似度高的样本数据归纳至同一聚类。
步骤304,通过损失值对第一聚类模型进行训练,得到目标聚类模型。
该目标聚类模型用于实现数据聚类。
在一些实施例中,通过损失值对第一聚类模型的模型参数进行调整,直至目标聚类模型的聚类结果收敛;或者直至样本数据训练完毕。可选地,采用梯度下降法对第一聚类模型的模型参数进行梯度调整。
可选地,在目标聚类模型训练完毕后,目标聚类模型中包括已完成聚类的样本数据库,将待检索数据输入目标聚类模型后,通过目标聚类模型对待检索数据进行特征提取,得到数据特征,将数据特征与各个聚类中心进行匹配后,得到与数据特征距离最小的聚类中心,并将该聚类中心对应的聚类中的数据与该数据特征进行匹配,得到与该数据特征距离最小的数据作为检索结果。
综上所述,本实施例提供的方法,在对目标聚类模型进行训练的过程中,采用样本数据构建的样本三元组,将样本数据之间的相似度融入至目标聚类模型的训练过程中,从而确保目标聚类模型的聚类结果符合样本之间特征距离的同时也能够符合相似度要求,提高了聚类的准确率,从而提高了在数据检索过程中的检索正确率。
在一个可选的实施例中,损失值中包括聚类损失。图4是本申请另一个示例性实施例提供的数据聚类方法的流程图,该方法可以由服务器或者终端执行,也可以由服务器和终端共同执行,本申请实施例中,以该方法由服务器执行为例进行说明,如图4所示,该方法包括如下步骤。
步骤401,获取样本数据库,样本数据库中包括样本数据。
其中,获取样本数据库的过程在上述步骤301中已进行介绍,此处不再赘述。
步骤402,基于样本数据之间的相似度构建样本三元组,样本三元组中包基准数据、正样本数据和负样本数据。
其中,基准数据与正样本之间的相似度符合相似度条件,基准数据与负样本之间的相似度不符合相似度条件。
步骤403,将样本三元组输入第一聚类模型,输出得到第一聚类结果。
在一些实施例中,首先初始化第一聚类模型的模型参数,并将第一聚类模型的模型参数设置为待学习状态,从而在训练过程中对模型参数进行调整。
可选地,第一聚类模型中包括嵌入层(embedding)和聚类层,其中,嵌入层包括嵌入层参数,聚类层包括聚类参数。
可选地,第一聚类模型中还包括一个预训练的基础模块,基础模块用于对输入的数据进行特征提取,从而将提取的特征通过嵌入层进行嵌入处理以及通过聚类层进行聚类。在一些实施例中,预训练的基础模块包括基础参数,该基础参数在第一聚类模型的训练过程中,与嵌入层参数和聚类参数同步调整,或者该基础参数在第一聚类模型的训练过程中不变。
示意性的,图5是本申请一个示例性实施例提供的第一聚类模型的结构示意图,如图5所示,该第一聚类模型500中包括基础模块510、嵌入层520和聚类层530。将数据输入基础模块510进行特征处理,输出提取得到的数据特征,通过嵌入层520对数据特征进行嵌入,以及通过聚类层530对嵌入层特征进行聚类,最终得到第一聚类结果。
其中,第一聚类结果中包括样本数据对应聚类标签的第一聚类概率,也即样本数据对应各个聚类的分桶的聚类概率。
步骤404,将样本数据库输入第二聚类模型,输出得到第二聚类结果。
第二聚类结果中包括样本数据对应聚类标签的第二聚类概率。
在一些实施例中,根据第二聚类结果得到样本数据对应的伪标签。
在一些实施例中,第一聚类模型为端到端训练的模型,而第二聚类模型与第一聚类模型的结构不同,即第二聚类模型的训练并非采用端到端的训练方式。且,第一聚类模型和第二聚类模型的聚类方式也不同。
可选地,第二聚类模型采用kmeans聚类方式。kmeans聚类方式采用二阶段学习,即先学习特征,再通过对全局特征预先设立聚类数量并采用kmeans聚类学习聚类中心,其中,并不涉及端到端实现特征学习与聚类的方法。
由于kmeans聚类方式采用直接切割特征空间的方式,易出现相似样本不同类的问题。故,本申请实施例中,针对第二聚类模型输出的第二聚类结果通过样本三元组进行修正。
即,将样本数据库输入第二聚类模型,输出得到候选聚类结果,通过样本三元组对候选聚类结果进行修正,得到第二聚类结果。
其中,在通过样本三元组对候选聚类结果进行修正时,响应于样本三元组中的基准数据和正样本数据处于不同聚类中,将正样本数据修正至与基准数据同类;响应于样本三元组中的基准数据与负样本数据处于同一聚类中,将负样本数据修正至最近的邻居聚类中。
即,首先通过预训练的特征提取模型提取样本数据的全量特征,对全量特征进行全局kmeans聚类,对每个样本数据给出一个与其距离最近聚类中心作为该样本数据的聚类标签,然后根据标注的三元组信息修正聚类标签,保证三元组中基准数据、正样本数据在同一聚类,而基准数据、负样本数据在不同聚类。从而得到清洗后的样本聚类标签作为伪标签。
示意性的,修正过程请参考图6和图7,修正前的聚类图如图6所示,基准数据611与对应的正样本数据612处于不同的聚类,而基准数据613与对应的负样本数据614处于同一聚类,通过修正,修正后的聚类图如图7所示,基准数据611对应的正样本数据612被修正至与基准数据611同个聚类,而基准数据613对应的负样本数据614被修正至距离最近的邻居聚类中。
在一些实施例中,通过对样本所属聚类,和样本目标聚类对应的概率取值进行调整,从而实现对样本数据在聚类之间的调整。示意性的,样本A和样本B属于相似样本对,而在通过kmeans聚类过程后,样本A对应处于聚类a,样本B对应处于聚类b,也即样本A和样本B处于不同的聚类,故,将样本B对应聚类b的聚类概率进行下调,并将样本B对应聚类a的聚类概率进行上调。其中,以预设下调比例进行多次梯度调整,以及与预设上调比比例进行多次梯度调整,直至样本B对应处于聚类a;或者,将样本B对应聚类a和聚类b的聚类概率进行交换,从而实现样本B从聚类b移动至聚类a。
在一些实施例中,kmeans聚类过程仅进行一次,对于大规模检索模型训练样本大,如百万级别训练样本,大规模聚类中心如10万,kmeans进行聚类需要较大计算资源以及较长训练时间,在训练样本大时,容易造成迭代时间过长的问题。然而修正任务相对较快,在模型参数的调整过程中,当输出特征的网络权重被改变时,三元组样本的特征也改变了,造成上一次修正的样本聚类标签在新特征下未必满足基准数据与正样本数据同类,以及基准数据与负样本数据不同类的要求,对所有新样本在更新的模型下获取新特征,利用上述全局kmeans聚类的聚类中心与新特征获取样本的聚类标签,并按上述修正规则修正聚类标签,作为下一轮模型学习的聚类任务。
步骤405,基于第一聚类结果和第二聚类结果之间的距离,确定聚类损失。
示意性的,图8是本申请一个示例性实施例提供的聚类损失计算结构示意图,如图8所示,从样本数据库700中采集得到三元组样本710,将样本数据库700中的样本数据通过kmeans聚类方式720进行聚类预测,并将聚类预测结果通过三元组样本710进行修正,得到学习类别目标730;将三元组样本710输入聚类模型740,其中包括嵌入(embedding)层741和聚类层742,聚类得到聚类结果,根据聚类结果和学习类别目标710得到聚类学习损失(loss)。
可选地,在确定聚类损失时,基于目标样本数据的第一聚类概率和目标样本数据的第二聚类概率确定第一聚类损失,以目标样本数据为目标样本三元组中的基准数据,基于目标样本数据和目标样本三元组中正样本数据和负样本数据的第二聚类概率,确定第二聚类损失,将第一聚类损失和第二聚类损失的加权和,确定为聚类损失。
其中,针对第一聚类损失和第二聚类损失的确定过程分别进行说明。
第一聚类损失:根据目标样本数据的第一聚类概率确定第一聚类模型对目标样本数据进行聚类预测得到的聚类标签,也即,确定第一聚类概率最高的聚类作为目标样本数据所在的聚类,并将该聚类的标签作为目标样本数据的聚类标签;根据目标样本数据的第二聚类概率确定第二聚类模型对目标样本数据进行聚类预测得到的伪标签,其中,伪标签是经过上述步骤404修正后得到的标签,也即,通过三元样本组对第二聚类结果进行修正后,得到每个样本数据对应的为标签。根据第一聚类模型预测得到的聚类标签,以及第二聚类模型预测得到的伪标签之间的差异,计算得到上述第一聚类损失。
示意性的,采用如下公式一计算得到第一聚类损失。
公式一:
Figure DEST_PATH_IMAGE001
其中,x[j]表示第一聚类模型对目标样本数据x进行聚类预测后,针对第j个聚类的预测概率,其中第j个聚类为预测概率最高的聚类;x[class]表示第二聚类模型对目标样本数据进行聚类预测后,针对聚类伪标签class的预测概率。
第二聚类损失:将目标样本数据确定为目标样本三元组中的基准数据,并确定目标样本三元组中的正样本数据和负样本数据,确定基准数据与正样本数据的第一特征距离,以及确定基准数据与负样本数据的第二特征距离,该第二聚类损失的目的是使基准数据与负样本数据的第二特征距离比第一特征距离大,且第二特征距离与第一特征距离的差值大于差值阈值。其中,基准数据与正样本数据的第一特征距离是根据基准数据与正样本数据的聚类结果确定的,也即聚类完成后,基准数据与正样本数据在分布空间中的距离;同理,基准数据与负样本数据的第二特征距离是根据基准数据与负样本数据的聚类结果确定的,也即聚类完成后,基准数据与负样本数据在分布空间中的距离。可选地,根据基准数据聚类后针对各个聚类标签的预测概率确定基准数据在分布空间中的位置,以及根据正样本数据聚类后针对各个聚类标签的预测概率确定正样本数据在分布空间中的位置,根据负样本数据聚类后针对各个聚类标签的预测概率确定负样本数据在分布空间中的位置。
通过如下公式二计算上述第二聚类损失。
公式二:
Figure DEST_PATH_IMAGE002
其中,xa为基准数据的聚类结果,xp为正样本数据的聚类结果,xn为负样本数据的聚类结果,α为第二特征距离与第一特征距离的差值阈值,且α为可变参数。
将上述第一聚类损失和第二聚类损失的加权和确定为聚类损失。
步骤406,通过聚类损失对第一聚类模型的模型参数进行调整,得到目标聚类模型。
在一些实施例中,第一聚类模型包括聚类层,通过聚类损失对聚类层的聚类参数进行调整。
步骤407,将待检索数据输入目标聚类模型,输出得到检索结果。
在目标聚类模型训练完毕后,目标聚类模型中包括已完成聚类的样本数据库,将待检索数据输入目标聚类模型后,通过目标聚类模型对待检索数据进行特征提取,得到数据特征,将数据特征与各个聚类中心进行匹配后,得到与数据特征距离最小的聚类中心,并将该聚类中心对应的聚类中的数据与该数据特征进行匹配,得到与该数据特征距离最小的数据作为检索结果。
综上所述,本实施例提供的方法,在对目标聚类模型进行训练的过程中,采用样本数据构建的样本三元组,将样本数据之间的相似度融入至目标聚类模型的训练过程中,从而确保目标聚类模型的聚类结果符合样本之间特征距离的同时也能够符合相似度要求,提高了聚类的准确率,从而提高了在数据检索过程中的检索正确率。
本实施例提供的方法,通过第二聚类模型生成伪标签,并基于伪标签和样本三元组确定聚类损失,从而通过聚类损失对第一聚类模型进行训练,提高了第一聚类模型的训练准确率。
在一个可选的实施例中,第一聚类模型中包括嵌入层和聚类层,在通过聚类损失进行参数调整后,还可以通过嵌入层损失进行模型参数的微调。图9是本申请另一个示例性实施例提供共的数据聚类方法的流程图,该方法可以由服务器或者终端执行,也可以由服务器和终端共同执行,本申请实施例中,以该方法由服务器执行为例进行说明,如图9所示,该方法包括如下步骤。
步骤801,获取样本数据库,样本数据库中包括样本数据。
其中,获取样本数据库的过程在上述步骤301中已进行介绍,此处不再赘述。
步骤802,基于样本数据之间的相似度构建样本三元组,样本三元组中包基准数据、正样本数据和负样本数据。
其中,基准数据与正样本之间的相似度符合相似度条件,基准数据与负样本之间的相似度不符合相似度条件。
步骤803,将样本三元组输入第一聚类模型,输出得到第一聚类结果。
在一些实施例中,首先初始化第一聚类模型的模型参数,并将第一聚类模型的模型参数设置为待学习装调,从而在训练过程中对模型参数进行调整。
可选地,第一聚类模型中包括嵌入层(embedding)和聚类层,其中,嵌入层包括嵌入层参数,聚类层包括聚类参数。
可选地,第一聚类模型中还包括一个预训练的基础模块,基础模块用于对输入的数据进行特征提取,从而将提取的特征通过嵌入层进行嵌入处理以及通过聚类层进行聚类。
即,将样本三元组输入嵌入层,输出得到嵌入层特征,将嵌入层特征输入聚类层,输出得到第一聚类结果。
示意性的,embedding层采用如下表一所示的ResNet-101网络提取基础特征参数。
表一
Figure DEST_PATH_IMAGE003
embedding特征提取分支如下表二所示。
表二
Figure DEST_PATH_IMAGE004
其中,表二所示embedding模块的作用是把稀疏的1×2048维的特征向量压缩成稠密的1×128维特征向量。对图像数据用模型获取到各图像的embedding,这里的embedding便是用来做检索的特征,也是用来做聚类的特征。把特征压缩到1×128,除了可以让特征更稠密外,还可以减少特征存储空间,提升检索效率。由于计算机内存空间有限,对于大规模检索而言特征越紧凑存储空间越小,则在同一时间(同一内存下)能容纳更大的检索库相似度对比。如假设1×2048维向量需要32字节,而1×128维向量要2字节(B)存储,对于1亿个特征,仅需要200万B即95.4MB,若不压缩则需要1525.9MB即1.5GB。128维特征也可以根据实际情况及性能调整,提高维度可检索更准确,另一方面也取决于库存大小以及检索机器内存限制。
特征投影(或特征转换)采用下表三所示的聚类层。
表三
Figure DEST_PATH_IMAGE005
聚类层中存储的是特征到聚类中心的映射矩阵,即对于需要聚10万类的任务,聚类层参数为128×100000,其由10万个128×1组成,某个128×1向量Vi表示输入特征到第i个聚类的映射权重,当输入特征f经过聚类层,将计算向量f与Vi的内积(一种对两个向量,对应向量位置的数值相乘求和的操作),当与Vi内积越大,则表示f为第i类的可能性越大,此时Vi可以理解为代表了第i个聚类中心的权重。故聚类层是通过向量相似度计算把图像1×128的embedding映射到10万聚类中的某一类。本方法通过把聚类中心学习转化成深度学习的网络权重学习实现聚类目标。为了保证fc_cluster层学到的是聚类中心,需要对embedding进行L2归一化,保证embedidng向量长度为1。
步骤804,将样本数据库输入第二聚类模型,输出得到第二聚类结果。
第二聚类结果中包括样本数据对应聚类标签的第二聚类概率。
在一些实施例中,根据第二聚类结果得到样本数据对应的伪标签。
步骤805,基于第一聚类结果和第二聚类结果之间的距离,确定聚类损失。
其中,确定聚类损失的过程在上述步骤405中已进行了说明,此处不再赘述。
步骤806,基于嵌入层特征确定嵌入层损失。
可选地,获取样本三元组中的样本数据通过嵌入层输出的嵌入层特征,基于基准数据的第一嵌入层特征、正样本数据的第二嵌入层特征和负样本数据的第三嵌入层特征,确定嵌入层损失。
可选地,基于基准数据的第一嵌入层特征、正样本数据的第二嵌入层特征和负样本数据的第三嵌入层特征,确定候选嵌入层损失,将候选嵌入层损失与聚类损失的加权和,确定为嵌入层损失。
在一些实施例中,基于第一嵌入层特征和第二嵌入层特征确定第一距离,基于第一嵌入层特征和第三嵌入层特征确定该第二距离,嵌入层损失用于以第二距离大于第一距离,且第二距离与第一距离的差值大于阈值为目标对模型参数进行调整。可选地,通过上述公式二确定候选嵌入层损失。
步骤807,通过聚类损失对聚类层的聚类参数进行调整。
在一些实施例中,第一聚类模型包括聚类层,通过聚类损失对聚类层的聚类参数进行调整。
步骤808,通过嵌入层损失对聚类参数和嵌入层的嵌入层参数进行调整。
采用计算得到的聚类损失和嵌入层损失进行梯度后向计算得到全部模型参数的更新值,并更新模型参数。可选地,通过聚类损失进行模型参数的更新时,更新梯度大于通过嵌入层损失进行模型参数更新时的更新梯度。
在模型参数的更新过程中,数据分批次迭代,示意性的,将全量N个三元组每128个作为一个批次,共N/128个批次,每次网络处理一个批次(包括前向预测、后向梯度计算以及网络参数更新)。当全量样本的批次都处理完,算完成一个阶段。模型一共学习M个阶段停止迭代(M为预设值,如10)。
步骤809,将待检索数据输入目标聚类模型,输出得到检索结果。
在目标聚类模型训练完毕后,目标聚类模型中包括已完成聚类的样本数据库,将待检索数据输入目标聚类模型后,通过目标聚类模型对待检索数据进行特征提取,得到数据特征,将数据特征与各个聚类中心进行匹配后,得到与数据特征距离最小的聚类中心,并将该聚类中心对应的聚类中的数据与该数据特征进行匹配,得到与该数据特征距离最小的数据作为检索结果。
综上所述,本实施例提供的方法,在对目标聚类模型进行训练的过程中,采用样本数据构建的样本三元组,将样本数据之间的相似度融入至目标聚类模型的训练过程中,从而确保目标聚类模型的聚类结果符合样本之间特征距离的同时也能够符合相似度要求,提高了聚类的准确率,从而提高了在数据检索过程中的检索正确率。
图10是本申请一个示例性实施例提供的数据聚类装置的结构框图,如图10所示,该装置包括如下部分:
获取模块910,用于获取样本数据库,所述样本数据库中包括样本数据;
构建模块920,用于基于所述样本数据之间的相似度构建样本三元组,所述样本三元组中包括基准数据、正样本数据和负样本数据,所述基准数据与所述正样本数据之间的相似度符合相似度条件,所述基准数据与所述负样本数据之间的相似度不符合所述相似度条件;
确定模块930,用于根据第一聚类模型对所述样本三元组的第一聚类结果,确定损失值;
训练模块940,用于通过所述损失值对所述第一聚类模型进行训练,得到目标聚类模型,目标聚类模型用于实现数据聚类。
在一个可选的实施例中,所述确定模块930,还用于通过第一聚类模型对所述样本三元组的第一聚类结果,和第二聚类模型对所述样本数据的第二聚类结果,确定所述损失值,其中,所述第二聚类模型为经过训练的且与所述第一聚类模型结构不同的模型。
在一个可选的实施例中,所述损失值中包括聚类损失;
所述确定模块930,还用于将所述样本三元组输入所述第一聚类模型,输出得到所述第一聚类结果;将所述样本数据库输入所述第二聚类模型,输出得到所述第二聚类结果;
所述确定模块930,还用于基于所述第一聚类结果和所述第二聚类结果之间的距离,确定所述聚类损失。
在一个可选的实施例中,如图11所示,所述确定模块930,包括:
预测单元931,用于将所述样本数据库输入所述第二聚类模型,输出得到候选聚类结果;
修正单元932,用于通过所述样本三元组对所述候选聚类结果进行修正,得到所述第二聚类结果。
在一个可选的实施例中,所述修正单元932,还用于响应于所述样本三元组中的基准数据和正样本数据处于不同的聚类中,将所述正样本数据修正至与所述基准数据同类;
所述修正单元932,还用于响应于所述样本三元组中的基准数据和负样本数据处于同一聚类中,将所述负样本数据修正至最近的邻居聚类中。
在一个可选的实施例中,所述第一聚类结果包括所述样本数据对应聚类标签的第一聚类概率;
所述第二聚类结果包括所述样本数据对应聚类标签的第二聚类概率。
在一个可选的实施例中,所述确定模块930,还用于基于目标样本数据的第一聚类概率和所述目标样本数据的第二聚类概率确定第一聚类损失;
所述确定模块930,还用于以所述目标样本数据为目标样本三元组中的基准数据,基于所述目标样本数据和所述目标样本三元组中正样本数据和负样本数据的第二聚类概率,确定第二聚类损失;将所述第一聚类损失和所述第二聚类损失的加权和,确定为所述聚类损失。
在一个可选的实施例中,所述第一聚类模型中包括嵌入层和聚类层;
所述确定模块930,还用于将所述样本三元组输入所述嵌入层,输出得到嵌入层特征;将所述嵌入层特征输入所述聚类层,输出得到所述第一聚类结果。
在一个可选的实施例中,所述损失值中还包括嵌入层损失;
所述训练模块940,还用于通过所述聚类损失对所述聚类层的聚类参数进行调整;基于所述嵌入层特征确定所述嵌入层损失;通过所述嵌入层损失对所述聚类参数和所述嵌入层的嵌入层参数进行调整。
在一个可选的实施例中,所述获取模块910,还用于获取所述样本三元组中的样本数据通过所述嵌入层输出的嵌入层特征;
所述确定模块930,还用于基于所述基准数据的第一嵌入层特征、所述正样本数据的第二嵌入层特征和所述负样本数据的第三嵌入层特征,确定所述嵌入层损失。
在一个可选的实施例中,所述确定模块930,还用于基于所述基准数据的第一嵌入层特征、所述正样本数据的第二嵌入层特征和所述负样本数据的第三嵌入层特征,确定候选嵌入层损失;将所述候选嵌入层损失与所述聚类损失之和,确定为所述嵌入层损失。
在一个可选的实施例中,所述确定模块930,还用于将待检索数据输入所述目标聚类模型,输出得到检索结果。
综上所述,本实施例提供的装置,在对目标聚类模型进行训练的过程中,采用样本数据构建的样本三元组,将样本数据之间的相似度融入至目标聚类模型的训练过程中,从而确保目标聚类模型的聚类结果符合样本之间特征距离的同时也能够符合相似度要求,提高了聚类的准确率,从而提高了在数据检索过程中的检索正确率。
需要说明的是:上述实施例提供的数据聚类装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据聚类装置与数据聚类方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图12示出了本申请一个示例性实施例提供的服务器的结构示意图。该服务器可以是如图2所示的服务器。
具体来讲:服务器1100包括中央处理单元(Central Processing Unit,CPU)1101、包括随机存取存储器(Random Access Memory,RAM)1102和只读存储器(Read OnlyMemory,ROM)1103的系统存储器1104,以及连接系统存储器1104和中央处理单元1101的系统总线1105。服务器1100还包括用于存储操作系统1113、应用程序1114和其他程序模块1115的大容量存储设备1106。
大容量存储设备1106通过连接到系统总线1105的大容量存储控制器(未示出)连接到中央处理单元1101。大容量存储设备1106及其相关联的计算机可读介质为服务器1100提供非易失性存储。也就是说,大容量存储设备1106可以包括诸如硬盘或者紧凑型光盘只读存储器(Compact Disc Read Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、带电可擦可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、闪存或其他固态存储其技术,CD-ROM、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器1104和大容量存储设备1106可以统称为存储器。
根据本申请的各种实施例,服务器1100还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1100可以通过连接在系统总线1105上的网络接口单元1111连接到网络1112,或者说,也可以使用网络接口单元1111来连接到其他类型的网络或远程计算机系统(未示出)。
上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由CPU执行。
本申请的实施例还提供了一种计算机设备,该计算机设备可以实现为如图2所示的终端或者服务器。该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的数据聚类方法。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行,以实现上述各方法实施例提供的数据聚类方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的数据聚类方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (12)

1.一种数据聚类方法,其特征在于,所述方法包括:
获取样本数据库,所述样本数据库中包括样本数据;
基于所述样本数据之间的相似度构建样本三元组,所述样本三元组中包括基准数据、正样本数据和负样本数据,所述基准数据与所述正样本数据之间的相似度符合相似度条件,所述基准数据与所述负样本数据之间的相似度不符合所述相似度条件;
基于第一聚类模型对所述样本三元组的第一聚类结果,以及第二聚类模型对所述样本数据的第二聚类结果之间的距离,确定聚类损失值,所述第一聚类模型中包括嵌入层和聚类层,其中,所述第二聚类模型为经过训练的且与所述第一聚类模型结构不同的模型;
通过所述聚类损失值对所述聚类层的聚类参数进行调整;
基于所述嵌入层输出的嵌入层特征确定嵌入层损失;
通过所述嵌入层损失对所述聚类参数和所述嵌入层的嵌入层参数进行调整,得到目标聚类模型,所述目标聚类模型用于实现数据聚类。
2.根据权利要求1所述的方法,其特征在于,所述第二聚类结果的获取方式,包括:
将所述样本数据库输入所述第二聚类模型,输出得到候选聚类结果;
通过所述样本三元组对所述候选聚类结果进行修正,得到所述第二聚类结果。
3.根据权利要求2所述的方法,其特征在于,所述通过所述样本三元组对所述候选聚类结果进行修正,得到所述第二聚类结果,包括:
响应于所述样本三元组中的基准数据和正样本数据处于不同的聚类中,将所述正样本数据修正至与所述基准数据同类;
响应于所述样本三元组中的基准数据和负样本数据处于同一聚类中,将所述负样本数据修正至最近的邻居聚类中。
4.根据权利要求1至3任一所述的方法,其特征在于,
所述第一聚类结果包括所述样本数据对应聚类标签的第一聚类概率;
所述第二聚类结果包括所述样本数据对应聚类标签的第二聚类概率。
5.根据权利要求4所述的方法,其特征在于,所述基于第一聚类模型对所述样本三元组的第一聚类结果,以及第二聚类模型对所述样本数据的第二聚类结果之间的距离,确定聚类损失值,包括:
基于目标样本数据的第一聚类概率和所述目标样本数据的第二聚类概率确定第一聚类损失;
以所述目标样本数据为目标样本三元组中的基准数据,基于所述目标样本数据和所述目标样本三元组中正样本数据和负样本数据的第二聚类概率,确定第二聚类损失;
将所述第一聚类损失和所述第二聚类损失的加权和,确定为所述聚类损失值。
6.根据权利要求5所述的方法,其特征在于,所述第一聚类结果的获取方式,包括:
将所述样本三元组输入所述嵌入层,输出得到所述嵌入层特征;
将所述嵌入层特征输入所述聚类层,输出得到所述第一聚类结果。
7.根据权利要求1至3任一所述的方法,其特征在于,所述基于所述嵌入层输出的嵌入层特征确定嵌入层损失,包括:
获取所述样本三元组中的样本数据通过所述嵌入层输出的所述嵌入层特征;
基于所述基准数据的第一嵌入层特征、所述正样本数据的第二嵌入层特征和所述负样本数据的第三嵌入层特征,确定所述嵌入层损失。
8.根据权利要求7所述的方法,其特征在于,所述基于所述基准数据的第一嵌入层特征、所述正样本数据的第二嵌入层特征和所述负样本数据的第三嵌入层特征,确定所述嵌入层损失,包括:
基于所述基准数据的第一嵌入层特征、所述正样本数据的第二嵌入层特征和所述负样本数据的第三嵌入层特征,确定候选嵌入层损失;
将所述候选嵌入层损失与所述聚类损失之和,确定为所述嵌入层损失。
9.根据权利要求1至3任一所述的方法,其特征在于,所述得到目标聚类模型之后,还包括:
将待检索数据输入所述目标聚类模型,输出得到检索结果。
10.一种数据聚类装置,其特征在于,所述装置包括:
获取模块,用于获取样本数据库,所述样本数据库中包括样本数据;
构建模块,用于基于所述样本数据之间的相似度构建样本三元组,所述样本三元组中包括基准数据、正样本数据和负样本数据,所述基准数据与所述正样本数据之间的相似度符合相似度条件,所述基准数据与所述负样本数据之间的相似度不符合所述相似度条件;
确定模块,用于基于第一聚类模型对所述样本三元组的第一聚类结果,以及第二聚类模型对所述样本数据的第二聚类结果之间的距离,确定聚类损失值,所述第一聚类模型中包括嵌入层和聚类层,其中,所述第二聚类模型为经过训练的且与所述第一聚类模型结构不同的模型;
训练模块,用于通过所述聚类损失值对所述聚类层的聚类参数进行调整;基于所述嵌入层输出的嵌入层特征确定嵌入层损失;通过所述嵌入层损失对所述聚类参数和所述嵌入层的嵌入层参数进行调整,得到目标聚类模型,所述目标聚类模型用于实现数据聚类。
11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一所述的数据聚类方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至9任一所述的数据聚类方法。
CN202110858801.1A 2021-07-28 2021-07-28 数据聚类方法、装置、设备及可读存储介质 Active CN113298197B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110858801.1A CN113298197B (zh) 2021-07-28 2021-07-28 数据聚类方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110858801.1A CN113298197B (zh) 2021-07-28 2021-07-28 数据聚类方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN113298197A CN113298197A (zh) 2021-08-24
CN113298197B true CN113298197B (zh) 2021-11-02

Family

ID=77331284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110858801.1A Active CN113298197B (zh) 2021-07-28 2021-07-28 数据聚类方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN113298197B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114298122A (zh) * 2021-10-22 2022-04-08 腾讯科技(深圳)有限公司 数据分类方法、装置、设备、存储介质及计算机程序产品
CN113705811B (zh) * 2021-10-29 2022-02-08 腾讯科技(深圳)有限公司 模型训练方法、装置、计算机程序产品及设备
CN114493668B (zh) * 2021-12-28 2023-04-07 北京爱上车科技有限公司 车辆信息处理方法、装置、设备及存储介质
CN114329051B (zh) * 2021-12-31 2024-03-05 腾讯科技(深圳)有限公司 数据信息识别方法、装置、设备、存储介质及程序产品

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107247940A (zh) * 2017-06-18 2017-10-13 天津大学 一种面部识别和聚类的联合嵌入方法
CN109583332B (zh) * 2018-11-15 2021-07-27 北京三快在线科技有限公司 人脸识别方法、人脸识别系统、介质及电子设备
CN109558821B (zh) * 2018-11-21 2021-10-22 哈尔滨工业大学(深圳) 一种视频中特定人物的服装件数计算方法
CN110223275B (zh) * 2019-05-28 2020-12-18 陕西师范大学 一种task-fMRI引导的大脑白质纤维深度聚类方法
CN111950528B (zh) * 2020-09-02 2023-10-31 北京猿力未来科技有限公司 图表识别模型训练方法以及装置
CN112926403A (zh) * 2021-01-30 2021-06-08 上海工程技术大学 基于层次聚类与困难样本三元组的无监督行人重识别方法

Also Published As

Publication number Publication date
CN113298197A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN112199375B (zh) 跨模态的数据处理方法、装置、存储介质以及电子装置
CN113298197B (zh) 数据聚类方法、装置、设备及可读存储介质
CN112819023B (zh) 样本集的获取方法、装置、计算机设备和存储介质
CN105468781A (zh) 视频查询方法和装置
CN111582409A (zh) 图像标签分类网络的训练方法、图像标签分类方法及设备
CN110968684A (zh) 一种信息处理方法、装置、设备及存储介质
CN111382190B (zh) 一种基于智能的对象推荐方法、装置和存储介质
CN111339343A (zh) 图像检索方法、装置、存储介质及设备
CN114329029B (zh) 对象检索方法、装置、设备及计算机存储介质
CN113705313A (zh) 文本识别方法、装置、设备及介质
CN114298122A (zh) 数据分类方法、装置、设备、存储介质及计算机程序产品
CN111382283A (zh) 资源类别标签标注方法、装置、计算机设备和存储介质
CN113657087B (zh) 信息的匹配方法及装置
CN113821670A (zh) 图像检索方法、装置、设备及计算机可读存储介质
CN114358109A (zh) 特征提取模型训练、样本检索方法、装置和计算机设备
CN113515669A (zh) 基于人工智能的数据处理方法和相关设备
CN114282059A (zh) 视频检索的方法、装置、设备及存储介质
CN113590854B (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN113254687B (zh) 图像检索、图像量化模型训练方法、装置和存储介质
CN113033507B (zh) 场景识别方法、装置、计算机设备和存储介质
CN114328800A (zh) 文本处理方法、装置、电子设备和计算机可读存储介质
CN114329004A (zh) 数字指纹生成、数据推送方法、装置和存储介质
CN114329028A (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN113704534A (zh) 图像处理方法、装置及计算机设备
CN113761291A (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: 40050123

Country of ref document: HK