【论文阅读】Binary Multi-View Clustering
文章地址:https://ieeexplore.ieee.org/document/8387526
出自:IEEE Trans. on Pattern Analysis and Machine Intelligence, 2018.
本文是对《Binary Multi-View Clustering》一文的个人理解总结,详细内容敬请阅读原文。
一、主要解决的问题
1、多视角的大尺度的数据集聚类性能表现欠佳;
2、实值聚类消耗较大的内存资源和计算资源;
2、编码和聚类是独立的,不能相互作用。
二、创新点
1、BMVC是第一个使用二进制编码技术解决大规模多视图聚类问题的方法,BMVC同时从多个视图和联合优化二进制编码和聚类。
2、提出了一种交替优化算法用于解决离散的优化问题,。针对二值聚类中心学习的关键子问题,还提出了一种自适应离散近似线性方法(ADPLM)。
3、BMVC具有较好的聚类性能,还明显更少的计算时间和内存开销,内存和时间上快的不止一点,这一点真的很好。
三、文章概要:
文章是编码的多视角聚类问题。首先说明什么是多视角和如何编码,然后从哈希编码联合聚类模型、优化以及实验分析三个方面简述文章主要思想和实验设计。
所谓多视角,引用原文:1. Different to single-view clustering using singular data descriptor, in this paper, we first describe each data point (e.g., an image) by various features (e.g., different image descriptors, such as HOG, Color Histogram and GIST) and then feed these features from multiple descriptors into our clustering. It is noteworthy that the “Multiview” in our paper indicates multiple image descriptors of features rather than multiple modalities. 简单来说:本文多视角就是多种特征。
1、哈希编码
为什么要进行编码呢?
第一,针对实值聚类需要较大的内存资源,尤其是谱聚类方法,对较大尺度的图像数据集需要占用很大的内存,编码能够对数据特征进行降维处理,尽可能的保留了样本的自身特征。第二、计算机能够更容易处理编码数据,降低计算复杂度。
如何编码:对于任意一个视角(一种特征),n为数据集中图像的数目,m是选取的锚点数。具体或称如下图。

怎么样让编码更好的体现特征,设计了如下代价函数:

- 希望多视角学习得到的 M 个哈希矢量与 二值编码B 能够相似,最小化编码和哈希矢量的L2范式;
- 希望得到的投影转换矩阵约简单越好,最小化U的L2范式;
- 希望数据点的二值码分布均衡,最大化其方差;
- 不同视角扮演的分量不同,不同视角优化不同权重。
2、哈希编码联合聚类模型
聚类模型使用的是矩阵分解的方法,希望每个编码b可以用一个聚类中心C和指示向量g(权重)的乘积来表示,希望分解的误差最小。方法化较为常见,话不多说代价函数详见下式:

文章的一个主要创新点体现再此,作者将编码和聚类同时进行优化,将两者目标方程结合在一起,在学习过程中,相对于pipeline的方法更能将编码和聚类相互作用体现出来。于是总的代价函数:

3、 优化
面对如此复杂的代价函数( 涉及到离散约束条件的np hard问题),如何进行优化训练?
作者,使用了一个交替优化策略,即更新某个变量时,固定其它变量不变的循环更新方法。

更新U ,固定其它量不变,总代价函数变为:

可见该项不含约束项,直接求导,令其倒数为0,得到此时最优U;

其中,
更新B , 总代价函数变为:

包含有离散约束量,怎么办呢,先化简看看啦:

化简到此,是不是有种“柳暗花明又一村“的感觉,第一项是常数,因为B转置和B之间的项是一常数乘以单位阵,又因B转置乘以B为常数,故第一项为常数。于是就变为求第二项的最小值,前面有(-)符号,使得B转置乘以一项的值最大,这一项就为B。因为B为编码,所以取符号操作,B为:



找出每个b到任何聚类中心的hamming距离,最近的给权值g为1,其它置为0。

4、实验分析
作者在Caltech101, NUS-WIDE-Obj, Cifar-10, Sun-397 YouTube Faces 实验验证。
以Caltech101为例,精度上对比如图,在多view上作者算法是最高的,并且提升幅度较大。

效率上的对比,作者算法相对于K-means时间上提升了60倍的速度,是不是相当惊人!

内存资源占用对比,内存降低近1500倍,是不是更加惊人!

有人可能会有疑问,为什么编码后聚类性能能够提升??来看编码后的特征分布,如下两图,相同簇用同种颜色表示,编码后的特征簇间分布更加分散,簇内分布更加紧密,这就更容易对其进行聚类。以至于效果能够提升。


参数灵敏度分析:
手动调整参数较多,作者实验分析了这些参数对性能的影响,好在模型对这些参数不敏感。参数在一定大范围内能够保持稳定的聚类性能!

四、总结
Contributions:
1. 提出了一种能够降低计算复杂度和内存开销的多视角聚类算法;
2. 提供了一种编码和聚类同时优化的思想;
Limitations:
1. 文章中所提,手动调整参数太多(源于太多的约束项)。
如有不足,肯请指出。
张亚超
2018年10月22日
【论文阅读】Binary Multi-View Clustering的更多相关文章
- 【论文阅读】Deep Adversarial Subspace Clustering
导读: 本文为CVPR2018论文<Deep Adversarial Subspace Clustering>的阅读总结.目的是做聚类,方法是DASC=DSC(Deep Subspace ...
- [论文阅读笔记] GEMSEC,Graph Embedding with Self Clustering
[论文阅读笔记] GEMSEC: Graph Embedding with Self Clustering 本文结构 解决问题 主要贡献 算法原理 参考文献 (1) 解决问题 已经有一些工作在使用学习 ...
- SLAM论文阅读笔记
[1]陈卫东, 张飞. 移动机器人的同步自定位与地图创建研究进展[J]. 控制理论与应用, 2005, 22(3):455-460. [2]Cadena C, Carlone L, Carrillo ...
- [论文阅读笔记] Fast Network Embedding Enhancement via High Order Proximity Approximati
[论文阅读笔记] Fast Network Embedding Enhancement via High Order Proximity Approximation 本文结构 解决问题 主要贡献 主要 ...
- [论文阅读笔记] Unsupervised Attributed Network Embedding via Cross Fusion
[论文阅读笔记] Unsupervised Attributed Network Embedding via Cross Fusion 本文结构 解决问题 主要贡献 算法原理 实验结果 参考文献 (1 ...
- 论文阅读(Xiang Bai——【PAMI2017】An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition)
白翔的CRNN论文阅读 1. 论文题目 Xiang Bai--[PAMI2017]An End-to-End Trainable Neural Network for Image-based Seq ...
- BITED数学建模七日谈之三:怎样进行论文阅读
前两天,我和大家谈了如何阅读教材和备战数模比赛应该积累的内容,本文进入到数学建模七日谈第三天:怎样进行论文阅读. 大家也许看过大量的数学模型的书籍,学过很多相关的课程,但是若没有真刀真枪地看过论文,进 ...
- 论文阅读笔记 - YARN : Architecture of Next Generation Apache Hadoop MapReduceFramework
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 更多论文阅读笔记 http:/ ...
- 论文阅读笔记 - Mesos: A Platform for Fine-Grained ResourceSharing in the Data Center
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 更多论文阅读笔记 http:/ ...
- Deep Reinforcement Learning for Dialogue Generation 论文阅读
本文来自李纪为博士的论文 Deep Reinforcement Learning for Dialogue Generation. 1,概述 当前在闲聊机器人中的主要技术框架都是seq2seq模型.但 ...
随机推荐
- JAVA必知必问问题-1
数据类型 1) 基本类型: byte, int, long, float, double, boolean.... 要求记住基本类型占多少字节.范围.例如:byte 1字节范围-128-127,sho ...
- windows系统先安装hexo
一.安装node.js 下载地址为:https://nodejs.org/en/可以根据自己需要下载对于的版本. 打开cmd,输入指令 node -v 若出现上图这样的结果则说明安装好了. 二.安装h ...
- 卷积神经网络详细讲解 及 Tensorflow实现
[附上个人git完整代码地址:https://github.com/Liuyubao/Tensorflow-CNN] [如有疑问,更进一步交流请留言或联系微信:523331232] Reference ...
- 开根号 HYSBZ - 3211
区间修改+区间查询(线段树板子题) 另外因为1e9内的数开5次根号必定为1或0,所以我们可以提前打表i<=sqrt[1e9], s[i]=sqrt(i).这样每次改值不必再调用系统的sqrt: ...
- git .gitignore详解
1.最近使用git又遇到一个陷阱: 场景:A和B使用的不同的编译器做的同一个解决方案下的不同的项目工程,刚开始没考虑到版本问题,后来发现A上传的csproj在B需要做很麻烦修改才能打开,后来想到各自用 ...
- [考试反思]1026csp-s模拟测试89:不公
稍垃圾.因为T1没A. 赶巧前一段时间学了杜教筛,结果因为教练放错题. 然后考场上疯狂yy,最后水到了一个AC. 其实的确挺不公平的,不少人也没学呢. 如果只算T1和T3的分数的话,那70分就是个垃圾 ...
- [springboot 开发单体web shop] 5. 用户登录及首页展示
用户登录及前端展示 用户登录 在之前的文章中我们实现了用户注册和验证功能,接下来我们继续实现它的登录,以及登录成功之后要在页面上显示的信息. 接下来,我们来编写代码. 实现service 在com.l ...
- 使用Typescript重构axios(二十三)——添加withCredentials属性
0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...
- 19.7.29 NOIP模拟10
话说这次三道考试题直接可以连成一个段子:我一个辣鸡,连模板都不会打,只能跪倒在大佬面前; T1 辣鸡 但是我实在是太辣鸡了,最后干的T1,时间不够用,连暴力都没打对,无奈之下交了一个qj程序,60分( ...
- Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
简介 经过一段时间的准备,完善的差不多了,继续分享有关Appium自动化测试框架综合实践.想必小伙伴们有点等不及了吧! driver配置封装 kyb_caps.yaml 配置表 参考代码 platfo ...