当前位置: 首页 > article >正文

论文阅读:Deep divergence-based approach to clustering

论文地址:main.pdf (sciencedirectassets.com)


摘要

深度学习研究中的一个有前景的方向是通过优化判别损失函数,学习表示并同时发现无标签数据中的聚类结构。与监督式深度学习不同,这一研究方向尚处于起步阶段,如何设计和优化合适的损失函数以训练深度神经网络进行聚类仍然是一个开放性问题。我们对这一新兴领域的贡献是提出一种新的深度聚类网络,该网络利用信息论发散度量的判别能力,已被证明在传统聚类中具有有效性。我们提出了一种新颖的损失函数,结合了几何正则化约束,从而避免了结果聚类划分的退化结构。通过在合成基准测试和真实数据集上的实验,表明该网络在与其他最先进方法的比较中表现出竞争力,能够很好地扩展到大规模数据集,且不需要预训练步骤。

引言

深度神经网络(Goodfellow, Bengio, & Courville, 2016;Krizhevsky, Sutskever, & Hinton, 2012)在层次表示学习(Bengio, Courville, & Vincent, 2013)方面表现卓越,并在图像分类(Krizhevsky et al., 2012)、目标检测(Ren, He, Girshick, & Sun, 2015)、图像分割(Kampffmeyer, Salberg, & Jenssen, 2016;Long, Shelhamer, & Darrell, 2015)、时间序列预测(Bianchi, Maiorino, Kampffmeyer, Rizzi, & Jenssen, 2017)和语音识别(Graves, Mohamed, & Hinton, 2013)等领域取得了最先进的成果。然而,深度网络通常是通过监督学习进行训练的,因此需要大量的标注数据,这在许多应用领域中是一个挑战。

聚类(Jain, 2010;Von Luxburg, 2007)是机器学习中的一个基础领域,旨在将无标签数据分类成不同的组(簇)。深度学习研究中的一个有前景的方向是通过优化判别损失函数,学习表示并同时发现无标签数据中的聚类结构。深度嵌入聚类(DEC)(Xie, Girshick, & Farhadi, 2016)是这一方向的典型代表,且据我们所知,它代表了当前的最先进技术。DEC基于一种优化策略,其中神经网络通过自编码器进行预训练,然后通过联合优化输出空间中的聚类中心和底层特征表示来进行微调。另一个例子是(Yang, Fu, Sidiropoulos and Hong, 2016),作者提出了一种联合优化方法,使用神经网络和k-means聚类进行降维。最近还提出了基于对抗网络的无监督深度学习替代方法(Goodfellow et al., 2014)。这些方法在理念上有所不同,但也可以用于聚类(Makhzani, Shlens, Jaitly, Goodfellow, & Frey, 2015;Springenberg, 2015)。

在这项工作中,我们提出了一种我们称之为“基于深度发散的聚类”(DDC)算法。我们的方法受到传统聚类技术文献的启发,这些技术通过基于信息论度量的判别损失函数进行优化(Dhillon, Mallela, & Kumar, 2003;Jenssen, Erdogmus, Hild, Principe, & Eltoft, 2007;Tishby & Slonim, 2001;Vikjord & Jenssen, 2014)。选择这种方法的主要动机是,发散度作为聚类之间相似度的度量,基于两个基本目标(图1):聚类之间的分离和聚类内部的紧凑性。这些是提高非参数混合模型可识别性(Aragam, Dan, Ravikumar, & Xing, 2018)所期望的特性。我们的新发散基深度聚类损失函数支持端到端学习,并在优化过程中明确利用了输出空间几何形状的知识。DDC在不需要手工设计特征的情况下实现了最先进的性能,同时减少了预训练阶段的重要性。该论文的初步版本出现在Kampffmeyer, Løkse, Bianchi, Livi, Salberg 和 Jenssen(2017)中。初步版本专注于结合卷积神经网络架构和我们提出的聚类损失函数的图像聚类。在这里,我们通过以下几方面扩展了我们的工作:

(i)修改了提议的架构,使其也能处理文本数据;

(ii)在额外的数据集上进行了实验和比较(包括文本数据——Reuters数据集);

(iii)通过消融实验对提出的代价函数及其组件进行了深入分析;

(iv)在控制环境中说明和讨论了该方法的工作原理;

(v)通过引导反向传播(Springenberg, Dosovitskiy, Brox, & Riedmiller, 2014)解释了网络的预测;最后,(vi)提供了更为深入的文献背景讨论,将我们的工作置于更广泛的背景中。

模型

图2为图像数据集的提出架构以及损失函数的详细说明。该网络由两层卷积层(每一层后面跟着一个池化层,图中未显示)和一个全连接(FC)层组成。每一层后面都跟着一个非线性ReLU变换。最后,一个全连接输出层实现了一个逻辑函数(softmax)。无监督损失函数作用于核矩阵 Kh,该矩阵编码了基于隐藏表示评估的数据相似度,以及由softmax函数返回的聚类分配值。正交性约束来源于聚类分配,而分离性和紧凑性约束则来自于Cauchy-Schwarz发散度,这一发散度是在相似度矩阵(加权聚类分配)上计算得到的。当考虑非图像数据时,卷积层会被替换。

架构概述

网络架构是一个设计选择,因此有很多不同的选项。在本文中,我们选择了一种基于卷积神经网络的方法来处理不同的图像数据集,使用了一种受LeNet启发的架构(LeCun, Bottou, Bengio, & Haffner, 1998)。我们选择LeNet是因为它是一个广为人知的基准网络,支持端到端学习,并且在图像分类中得到了广泛应用。该架构如图2所示。它由两层卷积层组成:第一层包含32个5×5的滤波器,第二层包含64个5×5的滤波器,每一层后面跟着一个2×2的最大池化层和一个ReLU激活函数。最后的卷积层后跟着一个具有100个节点的全连接层,再一个ReLU非线性激活函数,最后是softmax输出层,其维度与所需的聚类数量相对应。全连接层应用了批量归一化(Ioffe & Szegedy, 2015)。这一设计选择旨在提高模型的鲁棒性。

我们的方法也可以应用于非图像数据的聚类,只需将卷积层和池化层替换为全连接层即可。特别地,对于非图像数据的实验,我们使用了一个具有四个全连接层的架构,其层的大小为200-200-500-C。500个节点的全连接层包括批量归一化,C个节点的层对应softmax输出层,其维度等于聚类的数量。

最近,神经网络理论的进展(Giryes, Sapiro, & Bronstein, 2016)揭示了输入数据的度量结构是如何通过具有随机独立同分布(i.i.d.)高斯权重的深度神经网络得到保留的。一项限制是,只有在数据的内在维度与网络宽度成比例时,这一理论才成立。然而,Giryes等人(2016)证明了数据在通过网络传播时,其内在维度并不会增加,这表明我们为实验选择的网络宽度(每层的隐藏单元数量)应该足够。这一理论特性支持了我们提出的损失函数的设计选择,该函数是在隐藏表示上估算发散度,而不是在输入空间中进行估算。

实验

实验数据集

我们在MNIST手写图像数据集上评估了DDC,因为它是文献中广为人知的基准数据集。此外,我们还在两个更具挑战性的真实世界数据集上评估了我们的算法:一个用于检测海豹幼崽的航拍图像数据集,称为SEALS数据集;另一个是用于新闻故事聚类的Reuters数据集。在结果中,我们将我们的方法与四种替代的聚类方法进行了比较。

MNIST数据集

MNIST数据集包含70,000张手写数字图像,涵盖数字0到9(LeCun等,1998),这些图像最初来自美国国家标准与技术研究院(NIST)数据集。图像是灰度图,数字位于28×28像素的图像中心。

SEALS数据集

SEALS-3数据集包含几千张航拍RGB图像,这些图像是在2007年和2012年分别在格陵兰岛东部的西冰和加拿大纽芬兰岛东部的调查中获取的。图像拍摄自大约300米的高度,像素间距约为3厘米(具体取决于飞行的精确高度)。每张典型图像的大小为11,500 × 7,500像素。从这些图像中,我们提取了64×64大小的海豹幼崽、头巾海豹幼崽和背景(非海豹)图像,并将其下采样到28×28,以适应我们选择的架构。由于最小类别仅包含1000张图像,我们从每个类别中选择了1000张图像,创建了一个平衡的数据集。图5显示了SEALS-3数据集中三类图像的示例。

由于背景类包含大量不同类型的图像,如白雪和黑水图像,无监督算法可能会将这些实例分配到不同的聚类中。因此,我们还创建并测试了另一个数据集(SEALS-2),其中不包含背景类。

Reuters数据集

Reuters数据集包含80万个新闻故事,这些故事已被手动分类到一个类别树中(Lewis, Yang, Rose, & Li, 2004)。在本工作中,类似于Xie等人(2016)的做法,我们选择了四个根类别作为标签,删除了被标记为多个根类别的新闻故事,并将每个新闻故事表示为一个特征向量,该向量由2000个最常出现的词干的词频-逆文档频率(TF-IDF)组成。与SEALS数据集一样,我们从每个类别中选择了54,000个数据点,以便平衡数据集。

实验结果


这篇论文发表的较早,主要是学习一下路透社数据集处理的方法。


http://www.kler.cn/a/419843.html

相关文章:

  • 模拟实现单链表 —— SingleLinkedList
  • Markdown 使用教程
  • 【AI系统】代数简化
  • webGL入门教程_06变换矩阵与绕轴旋转总结
  • SprinBoot整合KafKa的使用(详解)
  • 一体化数据安全平台uDSP 入选【年度创新安全产品 TOP10】榜单
  • 【HarmonyOS】自定义相机拍照和录像 (二)之录像
  • iptables 用于设置、维护和检查 IP 数据包的过滤规则。其基本用法是通过命令行界面配置流量的过滤策略,分为以下几类规则链:INPUT(入站流量)、OU
  • WINDOWS 单链表SLIST_ENTRY使用
  • Leecode刷题C语言之N皇后②
  • gitlab自动打包python项目
  • 【vue】响应式(object.defineProperty)、可配置的参数、vue渲染机制
  • 华为HarmonyOS 让应用快速拥有账号能力 - 获取用户手机号
  • yolo11经验教训----之一
  • QT的槽函数的四种写法
  • ME6210:常用在个人通信设备电源里的低静态、低压差线性稳压器
  • @antv/x6 再vue中 ,自定义图形,画流程图、数据建模、er图等图形
  • linux网络抓包工具
  • 网际协议(IP)与其三大配套协议(ARP、ICMP、IGMP)
  • 【在Linux世界中追寻伟大的One Piece】多线程(三)
  • 为什么编程语言会设计不可变的对象?字符串不可变?NSString *s = @“hello“变量s是不可变的吗?Rust内部可变性的意义?
  • 源码分析之Openlayers中的Collection类
  • Web开发基础学习——HTML中\<div>元素的理解
  • arkTS:使用ArkUI实现用户信息的持久化管理与自动填充(PersistentStorage)
  • Java 面经之 Spring
  • 【Git系列】Git 提交记录过滤:排除特定关键词的实用指南