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

多视图聚类的论文阅读

当聚类的方式使用的是某一类预定义好的相似性度量时, 会出现如下情况:

数据聚类方面取得了成功,但它们通常依赖于预定义的相似性度量,而这些度量受原始方法的影响:当输入维数相对较高时,往往是无效的。

1. Deep Multi network Embedded Clustering

主要提出使用 DEC(deep Embed clutering ) 深度编码聚类的 方法,对特征进行聚类;

在此基础上加上了几个 多视图的特征;

2. Deep convolutional self-paced clustering

本文中主要用到的研究方法有:

  1. 无监督聚类;
  2. 自步学习方式, 将样本从简单到困难的学习方式;

2.1 存在问题与提出的解决方法

2.1.1 存在问题

当数据点均匀地分布在特征空间中相应的质心周围时,Kmeans算法非常有效。然而,K-means通常不适用于高维数据,因为“维数诅咒”造成的相似度度量效率低下。

2.1.2 解决方法

论文的主要贡献:
具体而言,

  1. 在预训练阶段,我们提出利用卷积自动编码器来提取包含空间相关信息的高质量数据表示。

  2. 然后,在精调阶段,直接对学习到的特征施加聚类损失,共同进行特征细化和聚类分配。我们保留解码器,以避免特征空间因聚类损失而被扭曲。

  3. 为了稳定整个网络的训练过程,我们进一步引入了自步长学习机制,并在每次迭代中选择最自信的样本。通过对7个流行图像数据集的综合实验,我们证明了所提出的算法可以持续地超过最先进的竞争对手。

前两个表明, 将特征学习与聚类过程 作为互相辅助的过程,
第三点使用自步 学习的方式,优化过程中样本由易到难,边际样本的不利影响可以得到有效的缓解。 是为了降低不可靠的样本会混淆甚至误导DNN的训练过程,从而严重降低聚类性能。

简单说来, 使用卷积提取特征; 然后对特征进行聚类; 3. 并且在训练过程中,引入自步学习步长机制, 每次迭代过程中选择,最自信的样本;

2.2 实现方法

具体来说,我们的方法包含两个阶段:预训练和微调。

  • 在预训练阶段,我们通过最小化重构损失来训练卷积自动编码器 (convolutional autoencoder, CAE) [26]通过使用 CAE,我们的方法可以将数据从一个相对高维和稀疏的空间转换为一个低维和紧凑的空间。

  • ,在微调阶段,不同于以往的一些作品[31,32,37]只保留编码器,我们通过使用聚类损失和重构损失对整个自动编码器(即CAE)进行调优,这样可以保留数据属性,避免特征空间的破坏。

  • 问题: 代过程中选择,最自信的样本, 那么如何知道哪些样本的可信度高;

3. 多视图表示学习

4. 聚类方法

采用几种聚类方法与DCSPC方法进行比较,大致可分为三类:

  • 1)传统方法,包括Kmeans (KM)[5]、高斯混合模型(GMM)[6]和谱聚类(SC) [7];

  • 2)基于表示的方法,包括SAE[25]和CAE[26];

  • 3)深度聚类方法,由深度嵌入聚类组成(DEC)[32]、改进深度嵌入聚类(IDEC)[33]、深度嵌入网络(DCN)[34]、深度K-means (DKM)[35]、卷积深度嵌入聚类(ConvDEC)[36]、自适应自步调聚类(ASPC)[37]、结构深度嵌入网络(SDCN)[38]、半监督深度嵌入聚类(SDEC)[39]、DDC (deep density-based clustering)[40]

4.1 K means 聚类

当数据点均匀地分布在特征空间中相应的质心周围时,Kmeans算法非常有效。然而,K-means通常不适用于高维数据,因为“维数诅咒”造成的相似度度量效率低下。因此,在实际应用中,我们应该使用降维方法,如PCA[8]、MDS[9]、NMF[10]等,将原始数据投影到低维空间,然后使用K-means算法对低维数据进行聚类,通常会得到更好的结果。除上述线性降维方法外,非线性算法如tSNE[17]、LLE[18]和基于dnn的方法[19-21]被广泛应用于Kmeans算法前的预处理。有兴趣的读者可参考[22-24]进行全面了解。在许多实际应用中,数据可能来自不同的视图,因此,许多多视图聚类方法被提出。例如,Zhang et al.[13]先将多视图样本映射到共享视图空间,然后将样本转换到判别空间,最后对转换后的样本进行K-means聚类。Wang et al.[14]提出了一种通用的基于图的多视图聚类框架,该框架通过提取多视图的特征矩阵,融合图矩阵,生成统一的图矩阵进行直接聚类。考虑到训练数据中可能存在特定类不存在的情况,Hayashi et al.[16]提出了一种基于聚类的零射击学习方法,将数据分为不可见类和可见类。

4.2 无监督聚类

深度无监督聚类方法大致可分为两类。一类是通常独立对待特征学习或聚类的方法,即先将原始数据投射到一个低维的特征空间中,然后用常规的聚类算法对特征点进行分组。不幸的是,这种分离的形式会对集群性能造成限制,因为忽略了这一点特征学习和聚类之间的一些潜在关系。

另一类是使用联合优化准则的方法,它同时进行特征学习和聚类,比分离的方法有很大的优越性。最近,人们提出了几种方法来将特征学习和聚类集成到一个统一的框架中。联合无监督学习(Joint unsupervised learning, JULE)[29]提出在统一加权三态损失的基础上,同时引导聚类和表示学习,但计算复杂度较高。Chang et al.[30]提出了成对图像之间二值关系的假设,并开发了深度自适应聚类(deep adaptive clustering, DAC)模型,将聚类任务重新建立为二值两两分类问题,在6个图像数据集上显示出良好的结果。自适应自定步长聚类(ASPC)[37]借鉴硬加权自定步长学习方法,在聚类网络训练时优先考虑高置信度样本,以消除边际样本的负面影响,稳定训练过程。Ren et al.[40]提出了一种基于深度密度的聚类(DDC)技术,该技术可以自适应估计任意形状的数据聚类数量。基于数据增强的深度嵌入聚类(Deep embedded clustering with data augmentation, DECDA)[36]将数据增强技巧引入到原始的深度嵌入聚类框架中,并在4个灰度图像数据集上取得了良好的聚类性能。半监督深度嵌入聚类(semi - supervised deep embedded clustering, SDEC)[39]克服了DEC[32]不能利用先验知识指导训练过程的缺点。

deep adaptive clustering, DAC 模型: Chang J, Wang L, Meng G, Xiang S, Pan C (2017) Deep adaptive
image clustering. In: International Conference on Computer
Vision, pp 5880–5888
https://github.com/vector-1127/DAC

自适应自定步长聚类(ASPC)[37]借鉴硬加权自定步长学习方法,Guo X, Liu X, Zhu E, Zhu X, Li M, Xu X, Yin J (2020) Adaptive
self-paced deep clustering with data augmentation. IEEE Trans Knowl Data Eng
https://github.com/XifengGuo/ASPC-DA;

半监督深度嵌入聚类(semi - supervised deep embedded clustering, SDEC) Ren Y, Hu K, Dai X, Pan L, Hoi SCH, Xu Z (2019) Semi- supervised deep embedded clustering. Neurocomputing 325:121–
130
https://github.com/yongzx/SDEC-Keras;

5. 自步学习

与课程学习[43]的核心思想相似,self-pace learning的目标是学习一个模型,由易到难,逐步引入样本进行训练。这两种方法之间的明显区别是,前者需要预先确定简单和困难的样本,而后者可以自动从数据本身选择顺序。给定一个训练集X ={(x1, y1), (x2, y2),…,(xn, yn)}和以θ为模型参数的训练模型fθ,则自步学习的总体目标可表示为:

在这里插入图片描述

其中,L(·)表示特定问题的损失函数,h(λ, vi)表示独立于L(·)的自步长正则化器,可以以多种形式定义,
V =[v1, v2,…], vn] T代表反映样本复杂性的权重变量,λ是一个参数,称为学习速度,用于控制“模型年龄”,该年龄逐渐增加,以探索更多的样本。当h(λ, vi) =−λvi且vi等于0或1时,自定步学习退化为硬加权形式,即:

在这里插入图片描述
另外,对于用固定的v更新θ,问题(3)退化为加权损失最小化问题,该问题可以通过随机梯度下降(SGD)和反向传播(BP)很容易解决。

到目前为止,自定进度学习已被应用于各种任务和模型。Kumar等人的[44]首次证明了一种自定步学习算法在学习潜在结构支持向量机方面的性能优于目前最先进的方法。在[45]中,成功地将自定步长学习范式应用于时间序列的聚类。 Tang Y, Xie Y, Yang X, Niu J, Zhang W (2021) Tensor multi-
elastic kernel self-paced learning for time series clustering. IEEE
Trans Knowl Data Eng 33(3):1223–1237;

Jiang et al.[46]提出了一种自定进度课程学习(self-pace curriculum learning, SPCL)框架,该框架能够联合考虑先验知识和学习进度。为了同时增强有监督学习的鲁棒性和有效性,[47]等人首先提出了自步速boost learning (SPBL)框架,该框架能够揭示和利用boost与自步速学习的关联。Ren et al.[48]注意到标准的自进度学习可能存在类不平衡问题,通过为每个类分配权重和局部选择实例,精心设计了两种新的软加权方案来弥补这一问题。最近,SPUDRFs[49]在公平性方面解决了自进度学习中的排序和选择的基本问题,并可以方便地与各种深度判别模型结合。在SAMVC[50]中,在多视图聚类模型中引入一种软加权自步长学习形式,以减少离群值和噪声的不利影响,并提出一种自加权策略来判断不同视图的重要性。孟等人的[51]设法提供了一些自我节奏学习范式的解释,以追求理论理解。总的来说,这些文献出版物证实了自节奏学习有助于避免陷入不希望出现的局部最小值,并总体上改善模型的性能。

相关文章:

多视图聚类的论文阅读

当聚类的方式使用的是某一类预定义好的相似性度量时, 会出现如下情况: 数据聚类方面取得了成功,但它们通常依赖于预定义的相似性度量,而这些度量受原始方法的影响:当输入维数相对较高时,往往是无效的。 1. Deep Mult…...

shell脚本适用场景

1.适用场景 Shell脚本是一种用于自动化和批量处理任务的脚本语言。它通常在Unix/Linux系统中使用,并且被广泛应用于各种场景,包括但不限于以下几个方面: 自动化任务:Shell脚本可以用于编写自动化脚本,完成一系列重复性…...

Bash openldap同步AD组织数据

将AD的ou同步到openldap(可支持全量同步和增量同步) 整体思路如下: 从ad导出所有的数据,然后进行参数替换以及处理,处理后的文件称为A;从openldap导出所有的数据,然后进行参数替换以及处理&am…...

C#WPF文本转语音实例

本文介绍C#WPF文本转语音实例 实现方法:使用类库(SpeechSynthesizer )实现的。 一、首先是安装程序包。 二、创建项目 需要添加引用using System.Speech.Synthesis; UI界面 <Windowx:Class="TextToSpeechDemo.MainWindow"xmlns="http://schemas.micr…...

08-流媒体-RTMP拉流

整体方案&#xff1a; 采集端&#xff1a;摄像头采集&#xff08;YUV&#xff09;->编码&#xff08;YUV转H264&#xff09;->写封装&#xff08;&#xff28;264转FLV&#xff09;->RTMP推流 客户端&#xff1a;RTMP拉流->解封装&#xff08;FLV转H264&#xff09…...

一键免费去除视频水印和字幕的AI工具

最近有学员经常让我分享好用的智能抹除视频水印字幕AI工具&#xff0c;今天就给大家分享一个我经常用到的这款工具——腾讯智影&#xff0c;这个平台提供的智能抹除功能&#xff0c;借助这个工具我们可以将视频中不需要的字幕或者水印删除掉。 不过这款工具每天有三次免费次数…...

实验六:Android的网络编程基础

实验六&#xff1a;Android 的网络编程基础 6.1 实验目的 本次实验的目的是让大家熟悉 Android 开发中的如何获取天气预报&#xff0c;包括了 解和熟悉 WebView、WebService 使用、网络编程事件处理等内容。 6.2 实验要求 熟悉和掌握 WebView 使用 了解 Android 的网络编程…...

09-流媒体-FLV解复用

整体方案&#xff1a; 采集端&#xff1a;摄像头采集&#xff08;YUV&#xff09;->编码&#xff08;YUV转H264&#xff09;->写封装&#xff08;&#xff28;264转FLV&#xff09;->RTMP推流 客户端&#xff1a;RTMP拉流->解封装&#xff08;FLV转H264&#xff09…...

信息的浏览

万维网(WWW)是目前Internet上最流行的一种服务&#xff0c;它是建立在Internet上的多媒体集合信息系统。它利用超媒体的信息获取技术&#xff0c;通过一种超文本的表达方式&#xff0c;将所有WWW上的信息连接在一起。我们使用浏览器浏览网上的信息。 ▶浏览器 浏览器是指可以…...

vue directive自定义指令实现弹窗可拖动

vue2 创建一个js文件 // draggable.js export default {// 定义 Vue 插件install(Vue) {Vue.directive(draggable, { // 全局指令名为 v-draggableinserted(el) {el.onmousedown function (ev) {// 获取鼠标按下时的偏移量&#xff08;鼠标位置 - 元素位置&#xff09;const…...

07-流媒体-RTMP推流

整体方案&#xff1a; 采集端&#xff1a;摄像头采集&#xff08;YUV&#xff09;->编码&#xff08;YUV转H264&#xff09;->写封装&#xff08;&#xff28;264转FLV&#xff09;->RTMP推流 客户端&#xff1a;RTMP拉流->解封装&#xff08;FLV转H264&#xff09…...

Neo4j安装(Docker中安装Neo4j)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…...

面试求职者

顾x文 SQLite3数据的使用实现了多线程UDP数据收发功能Qt多线程的同步和异步熟悉GDB的调试了解Mysql的性能优化熟悉常见算法&#xff1a;快速排序、希尔排序、归并排序基于Nginx C Mysql Python ICE开发熟练Boost库负责搭建后台服务端&#xff0c;使用Nginx展示前端界面&am…...

Java NIO 详解

一、NIO简介 NIO 是 Java SE 1.4 引入的一组新的 I/O 相关的 API&#xff0c;它提供了非阻塞式 I/O、选择器、通道、缓冲区等新的概念和机制。相比与传统的 I/O 多出的 N 不是单纯的 New&#xff0c;更多的是代表了 Non-blocking 非阻塞&#xff0c;NIO具有更高的并发性、可扩…...

css设置下划线

css中设置下划线的方法 在CSS中可以使用text-decoration属性或border-bottom属性来给字体设置下划线样式。 1、使用text-decoration:underline;设置下划线样式 CSS的text-decoration属性用于指定添加到文本的修饰&#xff0c;其underline属性值可以定义文本下的一条线。 语…...

【献给过去的自己】栈实现计算器(C语言)

背景 记得在刚学C语言时&#xff0c;写了一篇栈实现计算器-CSDN博客文章。偶然间看到了文章的阅读量以及评论&#xff0c;居然有1.7w的展现和多条博友的点评&#xff0c;反馈。 现在回过头来看&#xff0c;的确有许多不严谨的地方&#xff0c;毕竟当时分享文章时&#xff0c;还…...

如何利用ChatGPT撰写学术论文?

在阅读全文前请注意&#xff0c;本文是利用ChatGPT“辅助完成”而不是“帮写”学术论文&#xff0c;请一定要注意学术规范&#xff01; 本文我将介绍如何使用清晰准确的“指令”让ChatGPT帮助我们在论文写作上提高效率&#xff0c;希望通过本文的指导&#xff0c;读者能够充分…...

【PG】PostgreSQL高可用方案repmgr管理之配置文件

1 配置文件 1.1 配置文件格式 repmgr.conf是一个纯文本文件&#xff0c;每行包含一个参数/值组合。 空格是无关紧要的&#xff08;除了在带引号的参数值内&#xff09;&#xff0c;并且空行将被忽略。#将该行的其余部分指定为注释。不是简单标识符或数字的参数值应该用单引号…...

labelme自动标注工具

可以实现多图中相同目标的追踪&#xff0c;自动标注目标位置&#xff0c;速度极快&#xff0c;有需要评论...

【C++学习手札】模拟实现vector

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;くちなしの言葉—みゆな 0:37━━━━━━️&#x1f49f;──────── 5:28 &#x1f504; ◀️ ⏸ ▶️ ☰…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

鸿蒙HarmonyOS 5军旗小游戏实现指南

1. 项目概述 本军旗小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;采用DevEco Studio实现&#xff0c;包含完整的游戏逻辑和UI界面。 2. 项目结构 /src/main/java/com/example/militarychess/├── MainAbilitySlice.java // 主界面├── GameView.java // 游戏核…...

【java】【服务器】线程上下文丢失 是指什么

目录 ■前言 ■正文开始 线程上下文的核心组成部分 为什么会出现上下文丢失&#xff1f; 直观示例说明 为什么上下文如此重要&#xff1f; 解决上下文丢失的关键 总结 ■如果我想在servlet中使用线程&#xff0c;代码应该如何实现 推荐方案&#xff1a;使用 ManagedE…...

CSS(2)

文章目录 Emmet语法快速生成HTML结构语法 Snipaste快速生成CSS样式语法快速格式化代码 快捷键&#xff08;VScode&#xff09;CSS 的复合选择器什么是复合选择器交集选择器后代选择器(重要)子选择器(重要&#xff09;并集选择器(重要&#xff09;**链接伪类选择器**focus伪类选…...

Digital IC Design Flow

Flow介绍 1.设计规格 架构师根据市场需求制作算法模型(Algorithm emulation)及芯片架构(Chip architecture),确定芯片设计规格书(Chip design specification) 原型验证 原型验证(Prototype Validation)通常位于产品开发流程的前期阶段,主要是在设计和开发的初步阶…...