聚类在研究和工业中有许多应用。但是,传统的聚类方法(例如K-means,DBSCAN和HAC)强加了过于简化的假设,因此不适合面对聚类。为了适应现实问题的分布,一种自然的方法是使用图卷积网络(GCN)来增强聚类的功能。但是,GCN只能利用本地信息,而忽略了群集的总体特征。在本文中,我们针对人脸聚类的任务提出了一种密度感知特征嵌入网络(DA-Net),该网络利用本地和非本地信息来学习鲁棒的特征嵌入。具体来说,DA-Net使用GCN在本地聚合要素,然后使用密度链合并非本地信息,该密度链是从低密度到高密度的人脸链。该密度链利用了数据集中人脸图像的不均匀分布。然后,LSTM将密度链作为输入以生成最终的特征嵌入。生成此嵌入后,可以使用传统的聚类方法(例如基于密度的聚类)来获得最终的聚类结果。大量的实验证明了所提出的特征嵌入方法的有效性,该方法可以在公共基准上达到最新的性能。
介绍
由于人脸检测和识别技术的进步,可以方便地从互联网或监控摄像机中收集人脸图像,并进一步用强大的特征向量来表示。在这种情况下,需要自动分析人脸特征,而聚类是具有广泛应用的实用工具。先前开发的非深度聚类方法使用某些全局超参数来确定聚类行为。例如,DBSCAN依靠阈值来确定两个节点是否应属于同一群集,分层群集方法还采用一些标准来确定何时应停止群集拆分或合并。但是,这些方法在具有复杂分布的面部图像数据集上效果不佳,因为每个人的图像分布的边界条件的变化使得无法同时对面部图像进行足够好的聚类。因此,需要一种可以学会单独处理每个群集的方法。现有的基于深度学习的人脸聚类方法主要集中于对样本间关系进行分类。例如,[23,28]中的方法学会识别它们是否应该属于在一起的成对关系,[27]中的方法学会对几个样本是否属于同一聚类进行分类。
现有的非深度学习和深度学习方法直接使用来自特征提取模块的视觉特征,这引入了许多问题。具体来说,由于一个人的图像在姿势,照明和相机设置的变化方面可能与另一个人的图像非常不同,因此类别内特征的分布通常对于不同的人是不同的,并且所学的视觉特征或手精心制作的样本仍无法适应这种分布变化,因此,这些聚类方法很容易将离群样本包含到聚类中。图1(a)显示了一个示例,其中两个身份的人脸图像是如此接近,以至于很难基于原始特征将它们简单地聚类。在本文中,我们旨在通过使用来自邻近图像的信息来学习图像的上下文感知特征嵌入。更好地学习的特征可通过简化类间特征分布来促进人脸聚类。
受图卷积网络(GCN)在图结构数据[9、22、7、20]上的成功启发,可以通过将每个图像视为图中的一个节点,使用相关图像来完善图像的特征。但是,标准的GCN通常依赖于一阶邻居之间的亲和力,因此生成的要素仍然缺少来自较长距离要素的信息。为了考虑更长距离的特征,我们必须堆叠GCN层,但是其涉及的节点数量会在几何上增加,因此在先前的文献中[11]发现这种方法无效。例如,假设一个样本有10个邻居,那么沿着图形边缘传递的消息的10个步骤可能对应于GCN中涉及的1010个样本/节点,这需要太多的内存和计算量才能用于训练或推理。
由于将整个图形包含在GCN框架中不是一种理想的选择,因此我们需要选择具有最重要信息的节点作为网络输入。现在的问题是应该选择哪个节点。由于拍照习惯和面部检测模型的缘故,在良好条件下捕获的面部(例如从具有适当照明和中性面部表情的正面角度拍摄)更可能被检测并注册到数据集中,我们称之为模型面孔。这些面孔应该是我们要挑选的最有利的面孔,并且包含非本地信息中最相关的部分。如图2所示,我们可以看到大多数面的偏航角都接近于0,特别是所有面的93.58%的角都在25度以内。因此,问题仍然在于如何以较高的概率密度找到这些特征。
即使估计分布本身是不切实际的,我们仍然可以设法找到具有较高密度的特征,因此我们可以提取图的更重要部分来表示非本地信息。基于以上动机来局部增强特征并通过模型特征表示非局部信息,我们提出了一种密度感知特征嵌入网络(DA-Net),以汇总来自本地和非本地邻居的相关信息。为了更具体地描述非本地部分,我们将在本文的其余部分中使用术语“远程”来指代它。 DA-Net具有两个子网。第一个子网是基于GCN的本地集团网络,旨在从包含在本地邻居中的上下文信息中学习特征嵌入。第二个是基于CNN的远程链网络。它沿着知识链将知识汇总为一条学习路径,它从所考虑的样本开始,逐渐移至附近的密度峰值/模型特征。密度链的例子如图1(c)所示。
如上所述,具有更高密度的特征是具有更好条件的面部特征。因此,面部图像及其附近的较高密度的面部图像具有成为同一个人的可能性很高。因此,链倾向于描述一致的身份,这是链上每个要素的图形中最重要的部分。生成嵌入在身份一致性链上的特征更有可能改善表示。这种方法受到[16]中假设的启发,其中聚类中心的特征是密度峰值比其他邻居的密度更高,并且密度远大于其他聚类中心。考虑样品附近的密度峰可以更好地发现远距离和密度感知信息。通过简化从图到链的关系,这种设计的网络仅需要更新链上的功能,从而大大加快了训练和推理过程。
总而言之,(1)与专注于样本间关系分类的传统人脸聚类方法不同,我们通过学习上下文感知特征嵌入来改善人脸聚类问题,从而简化了类间特征分布并可以大规模扩展数据集。 (2)特征嵌入基于密度引导的接收场。它捕获本地邻居信息和远程集群级别的信息。在MS-Celeb-1M [6],YouTube Faces DB [26]和IJB-B [24]上获得了出色的聚类结果。
2.相关工作
人脸聚类由于其庞大的数据规模,复杂的类内特征分布以及不同类的模糊特征边界而成为一项具有挑战性的任务。传统的聚类方法,例如K-Means [12],光谱聚类[17]和DBSCAN [3],都依赖于数据分布的某些假设,例如,聚类为凸形,相似大小或相同密度,当实际分配与预期分配一致时,可以达到最佳效果。但是,这些方法忽略了用于聚类的上下文信息,这不适用于现实世界中的人脸聚类。
基于上下文的人脸聚类。上下文信息有助于聚类面孔。 Shi等。 [18]在邻域中建立了一个条件随机场,称为条件对聚类,以促进人脸聚类。 Lin等。 [10]学习了邻域的最小覆盖范围,并通过基于密度的新策略估计了样本间的相似性。詹等。 [28]将邻域中的成对关系编码为特征向量,然后学习确定两个节点是否属于同一类。与这些方法相比,GCN是一种用于图形结构化数据的更有效的工具,可以应用于人脸聚类。 Wang等。 [23]提出了一种基于链接的GCN来预测枢纽节点与其邻居之间连接的可能性。杨等。 [27]学会了在检测-分割范例中进行聚类,其中GCN-检测从提案中选择了高质量的聚类,而GCN-分类则识别了异常值。但是,这些方法直接使用了特征提取模块中的视觉特征,并且仅捕获了短程本地信息。我们用于更新功能的方法是这些方法的补充。由于远程邻居可能仍然对所关注的样本包含一致的语义,因此我们建议使用两个子网来聚合来自短距离邻居和远程邻居的相关信息。
基于GNN的特征学习。图神经网络(GCN)自然地利用局部图结构,并且可以学习诸如分类或链接预测之类的任务的更多判别特征。提出了Deep Walk [15],通过将SkipGram模型[13]与图随机游走相结合来生成图嵌入。类似的方法(如node2vec和LINE [5])也获得了出色的性能。汉密尔顿等。引入GraphSage [7]以归纳方式计算节点表示。它为每个节点采样了一个固定大小的邻域,然后执行简单的特征聚合,例如均值池,最大池和LSTM [8]。在这些方法中,特征学习中涉及的节点仅依赖于图拓扑,而我们的方法通过定义密度感知图另外利用群集级特征分布,因此对于人脸聚类更加有效。
自我监督学习。我们的方法利用了簇的分布,可以看作是一种自我监督方法[1,2],它利用密度信息来提高一般表示能力。
3.方法论
在我们的方法中,我们首先为每个样本构建一个密度感知的局部图,然后利用DA-Net(密度感知特征嵌入网络)来利用所构建的图内的信息进行聚类。 DA-Net由一个本地集团子网和一个远程链子网组成,并为每个样本输出增强的功能。将所有样本的获得的特征嵌入馈送到基于密度的聚类策略,以产生最终的聚类。
3.1。资料密度
我们在KNN图中对人脸图像进行建模,其中每个图像都由一个节点表示,并与其K个最近的邻居相连。对于节点vi,其K最近邻居由N(v)表示。要利用非本地信息,必须压缩整个图并提取最重要的节点。令f(vi)是通过其L2范数归一化的节点vi的CNN特征,我们相信在特征空间中每个人都会有一个分布。
给定人物l的概率密度函数为pl(·),值pl(vi)反映了人物l拍摄的节点vi的概率。实际上,几乎不可能找到确切的分布。基于观察到不同人的特征分布在大多数时间都是非重叠的,我们利用数据密度ρ(vi)近似感兴趣的人的概率。有了ρ的适当定义,我们具有渐近性质
| D |的ρ(vi)→pl(vi) →∞(1)
其中D是为该人收集的数据。这样,具有高数据密度的特征往往具有很高的概率成为他,因此它是包含该人重要面部信息的特征。
考虑节点vi,根据亲和图上vi的邻居计算数据密度ρ(vi)。即N(vi),即:
ρ(vi)=⟨f(vi),f(vj)⟩,(2)vj∈N(vi)
其中它们的内积⟨f(vi),f(vj)⟩测量节点vi和vj之间的相似度。
3.2。密度感知图的构建
DA-Net通过构造密度感知图来利用上下文信息。该图捕获了群集级别的结构,该结构逐渐将考虑图像与其密度更高的非本地邻居相关联。对于节点vk,我们首先生成一个从vk到附近密度峰值的链图。链图以多个步骤增长,并且每个步骤将一个节点顺序添加到链中。
对于非vk,我们首先生成一个从vk到附近密度峰值的链图。链图以多个步骤增长,并且每个步骤将一个节点顺序添加到链中。为了表示清楚起见,我们将链定义为C(vk)= {c1k,c2k,...,cNk},其中cik是链上的节点,c1k是节点vk。假设在步骤i处添加的节点为cik,则要添加的节点ci + 1是密度为k高的最近邻居:
ci + 1 = argmax {⟨f(ci),f(v)⟩,v∈{u |ρ(u)>ρ(ci)}。 v
(3)链增长,直到要添加的节点与最后一个节点之间的内部乘积小于预定值。如图3所示,链逐渐从相关节点移动到最相关的密度峰。
如第3.1节所述,类似于c1k且密度较高的相邻样本更有可能是模型特征,并且对应于同一个人。因此,这些具有较高数据密度的样本在表示群集结构和指导节点c1k的特征更新方面更有用。
给定链图{cik} Ni = 1,我们通过在链中的每个节点上附加一个集团来扩展它。集团中的节点包括cik和cik的最近邻居N(cik)。为了减轻无关邻居的影响,我们通过执行阈值选择方案来修剪群体,并且修剪的节点用以下形式表示:
N'(cik)= {v | ⟨f(v),f(cik)⟩>τ,v∈N(cik)},(4)其中,τ是基于原始特征的经验值,在我们的实验中,τ= 0.6。
3.3。本地集团网络
本地集团网络基于GCN,旨在更新链中每个节点的功能。如图4所示,对于每个节点,它将相应的集团作为输入。给定集团N'(cik),我们定义相似性矩阵A(cik)∈R | N'(cik)| x | N'(cik)| ,其元素由内部乘积计算。初始特征矩阵将集团中的所有原始特征连接起来,表示为F 0(cik)∈R | N'(cik)| xd。在GCN的每一层中,我们通过以下方式更新特征矩阵:
Fl + 1(cik)=σ(α·Fl(cik)+(1 −α)·D-1(cik)A(cik)Fl(cik)Wl),(5)
其中F l(cik)是属于cik集团的所有节点的第l个GCN层的更新特征,D(cik)是Di,i(cik)=jAi,j(cik ),σ是ReLU函数,而α是一个可学习的参数,它平衡了更新功能及其上下文的重要性。直观地讲,该公式表示了对集团中原始特征进行加权平均,将其与Wl相结合,与先前特征Fl(cik)相结合,然后进行非线性激活的过程。这类似于CNN模块,但在具有任意拓扑的图形上进行操作。我们的方法通过将大图分解为多个团,从而大大加快了训练和推理的速度。对于GCN的L层,我们从F L(cik)的对应行中获取节点cik的嵌入特征,用φ(cik)表示。
3.4。远程链网
远程链网络本质上是基于CNN的注意力网络。对于节点vk,由本地集团网络产生的链特征由{φ(c1k),φ(c2k),...,φ(cNk)}表示。受“按比例扩大点积注意力” [21]的启发,我们使用变压器架构来进一步更新节点功能,如图5所示。
转换器使用查询,键和值形式的三元组。首先,它估计查询特征,而查询特征通常表示我们期望从给定样本中提取的内容。然后将查询与每个键都有值的键列表进行匹配。然后,将最终值返回为所有值的总和,这些值由键和查询之间的亲和力加权。
在我们的方法中,查询要素应编码附近要素分布的结构。构造的链和关联的特征应对邻域的密度变化具有鲁棒性。因此,我们沿着从c1k到cNk的链应用LSTM网络,该网络包含以下更新过程:hi + 1 = LSTM(φ(ci + 1),hi),其中LSTM单位取特征
φ(ci + 1)和hi作为输入,并输出与节点ci + 1对应的隐藏k状态hi + 1。最后一步hN处的隐藏状态k用作查询q(vk)。键和值与链中的每个节点相关联,这些键和值从i = 1,...,N的特征sφ(cik)投影而来。对应于cik的键和值分别用k(cik)和v(cik)表示,链C(vk)的键集和值集分别用K(vk)和V(vk)表示。
对于特征聚合,我们通过计算查询和键之间的内积来获得w(cik)。通过使用softmax运算对链内的w(cik)进行归一化,即可获得关注权重w̄(cik)。
i q(v k)⊤k(c ik)
w̄(ck)∝exp√dkd,(6)
其中dk是k(cik)的维数。然后将注意力权重用于计算节点vk的最终嵌入:
,(7)
这正是针对节点vk提出的密度感知功能嵌入
讨论:使用密度峰的远程链本质上是连接可能来自同一类别的样本。这样,通过链进行的特征学习可以有效地将同一类的特征拉在一起,这是聚类所需要的。图6说明了从边界样品到密度峰的长距离链的影响。图6(b)表明,本地集团网络可以使非常相似的特征更接近,形成几个清晰的子模式,这可能会导致错误的聚类结果。我们的远程链将不同子模式中的样本与局部密度峰值相关联,为每个类别获得更紧凑的特征分布,并有助于更准确的聚类。
3.5。连接图生成
我们应用基于密度的简单聚类方法生成聚类。如算法1所示,我们的聚类方法包括两个步骤。第一步是为相邻节点生成边,其时间复杂度为O(n log n)。第二步是通过连接边找到聚类。它取决于查找连通图的速度,而使用[4]查找簇的时间复杂度为O(log n)。而且,我们的功能还与其他聚类方法(例如K-Means,DBSCAN)兼容。
4.实验
数据集和评估指标。我们提出的方法是在三个公众面部聚类基准MS-Celeb-1M [6],YouTube Faces DB [26]和IJB-B [24]上进行评估的。 MS-Celeb-1M由10万个身份和约1000万张图像组成。我们使用与[27]相同的设置将其分为训练和测试集。 YouTube Faces DB包含3,425个视频和1,595个身份,我们在其中使用159个身份进行培训,在其他1,436个中进行测试。 IJB-B由三组组成,分别包括512个,1,024个,1,845个身份和18,171个,36,575个,68,195个样本,我们使用在MS-Celeb-1M上训练的模型来测试聚类。为了进行公平的比较,我们在评估MS-Celeb-1M和YouTube Faces DB时使用[27]提供的功能作为原始功能,并使用[23]提供的IJB-B功能。对于MS-Celeb-1M和YouTube Faces DB,我们采用成对回忆,精确度和F分数来测量聚类性能,如[27]所示。对于IJB-B数据集,我们遵循其官方协议[24]并采用B-Cubed F得分进行评估。
实施细节。在DA-Net中,本地集团网络使用两层GCN,而远程链网络使用两层LSTM进行查询,对键和值进行两层线性变换。我们以端到端的方式培训DA-Net。本地集团网络将密度感知图作为输入来更新链上的特征。远程链网络总结了链,以获得最终的密度感知特征嵌入。我们对特征嵌入施加了softmax分类损失。该网络以0.01的学习率和SGD优化器进行训练。除远程链网络中我们使用K = 256最近邻来查找局部密度外,大多数参数都是可学习的。
4.1。烧蚀分析
我们的消融研究是在MS-Celeb-1M上进行的。为了更好地评估我们的方法,我们利用了四种功能。具体来说,原始表示原始功能;本地集团网络生成仅本地特征;当以原始特征为输入时,远程链网络仅输出远程特征;整个框架会产生本地+远程功能。
本地集团网络和远程连锁网络。
我们从两个方面评估我们方法的主要组成部分:(1)聚类性能; (2)特征嵌入的判别力。
集群性能。首先,当使用连接的图形生成模块进行聚类时,我们从功能的不同设置评估聚类性能。如表1和表2所示,在MS-Celeb-1M数据集中,我们可以看到,短距离和长距离特征在F评分中分别比原始特征高出14.47%和9.68%。此外,将本地邻居结构与远程链结构相结合,F +得分的短+远程特征达到90.60%。
具有判别力。我们利用ROC曲线说明了特征嵌入的判别力。如图8所示,在相同的假阳性率下,short + long特征的真阳性率远高于其他特征。另一方面,当应用不同的组件时,我们会虚拟化数据分布的演变。
网络深度研究。如表5所示,GCN和LSTM的结构越深,它们将实现的效果越好。我们认为,更好的基础网络(尽管不是我们的重点)可以进一步改善性能。
特征分布分析。在我们的DA-Net之后,这些功能将与身份相关。换句话说,嵌入空间中的分布更加紧凑和有区别。要查看如何优化分布,我们首先选择10个接近的身份,并将它们的原始特征,仅局部特征和局部+远距离特征放到t-SNE映射训练中,以可视化其分布,如图7所示。当地派系网络倾向于将当地邻居聚集在一起。但是,它无法识别远程关系,因此将不同的类组合到一个群集中。另一方面,远程链网络捕获了远邻,但留下了稀疏的群集分布。在利用了本地和远程关系的优势之后,功能变得更加内部类紧凑和内部类区分。表2和表3中其他两个数据集的实验也证明了我们的假设。
如前所述,我们使用一个简单的标记方案,该方案使用全局阈值来确定两个功能是否来自同一类。但是,只要图像分布保持变化,就无法防止合并不同类别并同时拆分相同类别的样本。集群性能的敏感性反映了这一点。如图9所示,本地+远程特征对聚类阈值更健壮。这是因为类内特征分布的缩小,这大大简化了聚类任务。
兼容性。我们的方法通过学习密度感知特征嵌入来改善人脸聚类。该嵌入与其他聚类方法兼容。如表4所示,使用本地特征和远距离特征进行聚类的性能优于使用原始特征的成对精度,召回率和F分数。
4.2。方法比较
我们将我们的方法与两组聚类方法进行比较。一种是常规方法,包括K均值[12],带噪声的基于密度的应用程序空间聚类(DBSCAN)[3],分层聚类聚类(HAC)[19],近似等级顺序(ARO)[14]。另一种是基于学习的方法,包括CDP [28],学习聚类(LearnClust)[27]和链接GCN [23]。
实验结果列于表1至3。这些结果表明,我们的方法在所有数据集上均优于其他方法。具体来说,在MS-Celeb-1M数据集中,我们的方法比最先进的方法LearnClust [27]高出5%,并且显着优于传统方法。在YouTube Faces DB和IJB-B-1845中,我们的方法分别比最新技术高出0.64%和1.4%。我们的方法生成了上下文感知功能,使其与其他聚类方法(例如K-Means和LearnClust)兼容。
效率和复杂性比较。在我们的工作中,计算复杂性来自三个部分:密度感知图的构建,网络推理和聚类生成。图的构造是最耗时的部分,其时间复杂度为O(n2)。使用近似最近邻搜索[25],搜索复杂度降低为O(n log n)。然后,仅基于本地邻居构造图,因此图的数量与数据的数量成线性增长,因此网络推断成本为O(n)。此外,集群生成模块的复杂度为O(n),如第3.5节所述。因此,总体复杂度为O(n log n),这意味着它是有效且可扩展的。
从表1可以明显看出,与其他基于网络的方法相比,我们的方法要快得多,甚至可以与最快的传统方法相提并论。具体地说,与基于GCN的相关方法LearnClust [27]相比,我们的方法仅花费15%的时间,因为LearnClust中的图形是基于集群提案生成的节点集而建立的,这可能涉及GCN的更多节点而不是使用我们的密度感知图构造所涉及的节点。
5.结论
本文提出了一种密度感知特征嵌入框架。它使用GCN获得本地上下文,并使用密度感知的远程链来有效捕获群集级别的信息。 LSTM网络与密度感知链一起应用,以将不同的本地信息聚合为每个节点嵌入的统一特征。在改进的功能上执行了有效的聚类算法。在三个基准数据集和不同聚类方法上的大量实验结果验证了所提出的DA-Net的有效性。