佛山新网站制作市场/营销型网站的类型
当聚类的方式使用的是某一类预定义好的相似性度量时, 会出现如下情况:
数据聚类方面取得了成功,但它们通常依赖于预定义的相似性度量,而这些度量受原始方法的影响:当输入维数相对较高时,往往是无效的。
1. Deep Multi network Embedded Clustering
主要提出使用 DEC(deep Embed clutering ) 深度编码聚类的 方法,对特征进行聚类;
在此基础上加上了几个 多视图的特征;
2. Deep convolutional self-paced clustering
本文中主要用到的研究方法有:
- 无监督聚类;
- 自步学习方式, 将样本从简单到困难的学习方式;
2.1 存在问题与提出的解决方法
2.1.1 存在问题
当数据点均匀地分布在特征空间中相应的质心周围时,Kmeans算法非常有效。然而,K-means通常不适用于高维数据,因为“维数诅咒”造成的相似度度量效率低下。
2.1.2 解决方法
论文的主要贡献:
具体而言,
-
在预训练阶段,我们提出利用卷积自动编码器来提取包含空间相关信息的高质量数据表示。
-
然后,在精调阶段,直接对学习到的特征施加聚类损失,共同进行特征细化和聚类分配。我们保留解码器,以避免特征空间因聚类损失而被扭曲。
-
为了稳定整个网络的训练过程,我们进一步引入了自步长学习机制,并在每次迭代中选择最自信的样本。通过对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拉流
整体方案: 采集端:摄像头采集(YUV)->编码(YUV转H264)->写封装(H264转FLV)->RTMP推流 客户端:RTMP拉流->解封装(FLV转H264)…...

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

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

09-流媒体-FLV解复用
整体方案: 采集端:摄像头采集(YUV)->编码(YUV转H264)->写封装(H264转FLV)->RTMP推流 客户端:RTMP拉流->解封装(FLV转H264)…...

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

vue directive自定义指令实现弹窗可拖动
vue2 创建一个js文件 // draggable.js export default {// 定义 Vue 插件install(Vue) {Vue.directive(draggable, { // 全局指令名为 v-draggableinserted(el) {el.onmousedown function (ev) {// 获取鼠标按下时的偏移量(鼠标位置 - 元素位置)const…...

07-流媒体-RTMP推流
整体方案: 采集端:摄像头采集(YUV)->编码(YUV转H264)->写封装(H264转FLV)->RTMP推流 客户端:RTMP拉流->解封装(FLV转H264)…...

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

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

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

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

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

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

【PG】PostgreSQL高可用方案repmgr管理之配置文件
1 配置文件 1.1 配置文件格式 repmgr.conf是一个纯文本文件,每行包含一个参数/值组合。 空格是无关紧要的(除了在带引号的参数值内),并且空行将被忽略。#将该行的其余部分指定为注释。不是简单标识符或数字的参数值应该用单引号…...

labelme自动标注工具
可以实现多图中相同目标的追踪,自动标注目标位置,速度极快,有需要评论...

【C++学习手札】模拟实现vector
🎬慕斯主页:修仙—别有洞天 ♈️今日夜电波:くちなしの言葉—みゆな 0:37━━━━━━️💟──────── 5:28 🔄 ◀️ ⏸ ▶️ ☰…...

Python将图片按照表格形式排列
图片按照表格的形式排列,可以使用图像处理库Pillow来实现 事例代码 from PIL import Image, ImageDraw# 创建一个画布,用来存放排列后的图片 canvas Image.new(RGB, (800, 600), white)# 读取图片 im1 Image.open(image1.jpg) im2 Image.open(image…...

Linux 简要命令记录
1、设置时区: #设为上海: timedatectl set-timezone Asia/Shanghai #搜索特定时区 timedatectl list-timezone2、修改时间: #设定系统时间 date -s "2023-11-16 22:30:00" #同步写入BIOS hwclock -w3、fdisk分区 rootheihei:~# …...

深度学习与深度强化学习
1. 深度学习中卷积层的作用是什么?全连接层的作用是什么?二者有什么联系和区别? 在深度学习中,卷积层(Convolutional Layer)和全连接层(Fully Connected Layer)是神经网络中常见的两…...

C++函数重载中形参是引用类型和常量引用类型的调用方法
void fun(int &a) {cout<<"调用func(int &a)<<endl; }void fun(const int &a) {cout<<"调用func(const int &a)<<endl; }int main() {// 1.调用引用类型的函数int a10;func(a);// 2.调用常量引用类型的函数,因为…...

Quest 3期间Sui上游戏处理了数百万笔交易
Sui固有的可扩展性和低且可预测的gas费使其成为Web3游戏的理想平台。在Quest 3中,参与的游戏项目处理了数百万笔交易,这毫无疑问地展示了Sui卓越的能力。 Quest 3的主题是游戏,让开发者有机会向潜在玩家介绍他们激动人心的创作。鼓励这些玩家…...

Python中如何定义类、基类、函数和变量?
在Python中,定义类、基类、函数和变量是非常常见的操作。以下是简单的示例: 定义类: class Animal:def __init__(self, name):self.name namedef make_sound(self):passclass Dog(Animal):def make_sound(self):return "Woof!"上…...

打开文件 和 文件系统的文件产生关联
补充1:硬件级别磁盘和内存之间数据交互的基本单位 OS的内存管理 内存的本质是对数据临时存/取,把内存看成很大的缓冲区 物理内存和磁盘交互的单位是4KB,磁盘中未被打开的文件数据块也是4KB,所以磁盘中页帧也是4KB,内存…...

【Rust】快速教程——模块mod与跨文件
前言 道尊:没有办法,你的法力已经消失,我的法力所剩无几,除非咱们重新修行,在这个世界里取得更多法力之后,或许有办法下降。——《拔魔》 \;\\\;\\\; 目录 前言跨文件mod多文件mod 跨文件mod //my_mod.rs…...

crontab定时任务是否执行
centos查看 crontab 是否启动 systemctl status crond.service 查看cron服务的启动状态 systemctl start crond.service 启动cron服务[命令没有提示] systemctl stop crond.service 停止cron服务[命令没有提示] systemctl restart crond.service 重启cron服务[命令没有提示] s…...

MATLAB程序设计:牛顿迭代法
function xnewton(x0,e,N,fx) %输入x0,误差限e,迭代次数N和函数Fx k1; while k<Nif subs(diff(fx),x0)0disp("输出奇异标志");break;endx1x0-subs(fx,x0)/subs(diff(fx),x0);if abs(x1-x0)<ebreak;endx0x1;kk1; end if k<Ndisp(x1); elsedisp("迭代失败…...