论文阅读 | Incomplete Multi-view Clustering via Prototype-based Imputation

文章介绍

在这里插入图片描述
IJCAI 23年的文章,出自彭玺团队。
附上源码: IJCAI-23-ProImp

Major Contributions

  • From the standpoint of data recovery for IMvC, we proposed a novel imputation method which restores the missing samples using the prototypes and the sample prototype relationship. Such a prototype-based imputation paradigm could preserve instance commonality and view versatility that are favorites to IMvC.(基于原型去恢复缺失数据)
  • From the standpoint of unsupervised multi-view representation learning, we propose a novel dual-stream model which learns sample representation using prototypes and prototype representation using the input samples. Thanks to the dual-stream model, our method could learn better representation for boosting IMvC performance. (提出了一个双流模型——双注意力层和双对比学习
  • Extensive experiments on five benchmarks demonstrate the superiority of our method in both incomplete multiview clustering and data recovery performance, compared with 11 baselines. (实验性能好

主要框架

在这里插入图片描述
(a) 是双注意力层 (b) 是ProImp模型大致模样和双对比学习模块 © 是基于原型对缺失数据进行恢复

双注意力层模块

在这里插入图片描述

在这里插入图片描述

这一模块的主要作用是得到注意力矩阵Av,去增强原型和样本表示,用于后续的对比学习模块。

双对比学习模块

在这里插入图片描述
分别进行了样本之间的对比学习和实例间的对比学习。

样本对比损失

在这里插入图片描述

原型对比损失

在这里插入图片描述
在这里插入图片描述

注意力正则化项

在这里插入图片描述

Overall Loss

在这里插入图片描述

基于原型的数据补全模块

在这里插入图片描述
在这里插入图片描述
讲人话可以理解成:对于一个实例,视图1没有缺失,视图2有缺失,利用视图1的样本特征,和视图2所对应的原型,去补全视图2该实例的数据。

实验性能

在这里插入图片描述
ProImp 均表现为最优 !

下图是不同方法在不同缺失率下,分别在 Scene-15 该数据集上的聚类性能(最上面的红线为DSIMVC)
在这里插入图片描述

t-SNE 聚类可视化效果
在这里插入图片描述

总结

为了实现所提出的基于原型的插补方法,作者提出了一个双流模型,通过设计一个双注意力层和双对比学习损失模块。由于所提出的模型,**实例的通用性和视图的多样性(instance commonality & view versatility)**可以得到很好的表示,从而提高IMvC的性能。大量的实验结果表明,该模型在聚类和数据恢复性能的优越性。

Log data follows: | DEBUG: Executing shell function do_configure | CMake Warning at CMakeLists.txt:7 (message): | Build type not set, falling back to Release mode. | | To specify build type use: | -DCMAKE_BUILD_TYPE=<mode> where <mode> is Debug or Release. | | | -- Building without demo. To enable demo build use: -DWITH_DEMO=True | -- The C compiler identification is GNU 7.3.0 | -- The CXX compiler identification is GNU 7.3.0 | -- Check for working C compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-gcc | -- Check for working C compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-gcc -- works | -- Detecting C compiler ABI info | -- Detecting C compiler ABI info - done | -- Detecting C compile features | -- Detecting C compile features - done | -- Check for working CXX compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-g++ | -- Check for working CXX compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-g++ -- works | -- Detecting CXX compiler ABI info | -- Detecting CXX compiler ABI info - done | -- Detecting CXX compile features | -- Detecting CXX compile features - done | -- Found PkgConfig: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/pkg-config (found version "0.29.2") | -- Checking for module 'uuid' | -- Found uuid, version 2.32.1 | -- Output libraries to /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/git/runtime/Cpp/dist | CMake Error at runtime/CMakeLists.txt:104 (install): | install TARGETS given no LIBRARY DESTINATION for shared library target | "antlr4_shared". | | | CMake Error at runtime/CMakeLists.txt:107 (install): | install TARGETS given no ARCHIVE DESTINATION for static library target | "antlr4_static". | | | -- Configuring incomplete, errors occurred! | See also "/home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/build/CMakeFiles/CMakeOutput.log".这是报错的log,如何解决这个问题
07-11
根据提供的日志,可以看出在CMake配置过程中出现了两个错误。错误信息分别是: 1. CMake Error at runtime/CMakeLists.txt:104 (install): install TARGETS given no LIBRARY DESTINATION for shared library target "antlr4_shared". 2. CMake Error at runtime/CMakeLists.txt:107 (install): install TARGETS given no ARCHIVE DESTINATION for static library target "antlr4_static". 这些错误表明在配置期间,对于共享库目标 "antlr4_shared" 没有给出 LIBRARY DESTINATION,对于静态库目标 "antlr4_static" 没有给出 ARCHIVE DESTINATION。 要解决这个问题,你可以尝试以下方法: 1. 检查CMakeLists.txt文件:打开 "/home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/git/runtime/CMakeLists.txt" 文件,并查找与 "antlr4_shared" 和 "antlr4_static" 相关的安装指令。 2. 添加正确的目标安装路径:在对应的安装指令中,确保给出了正确的目标安装路径。例如,对于共享库目标 "antlr4_shared",应该设置 LIBRARY DESTINATION,而对于静态库目标 "antlr4_static",应该设置 ARCHIVE DESTINATION。 3. 重新运行CMake配置:保存文件,并重新运行CMake配置命令以重新生成项目。可以尝试使用以下命令:`cmake /path/to/source`。 4. 编译和安装:如果配置成功,继续进行编译和安装。使用 `make` 命令编译项目,并使用 `make install` 命令安装项目。 如果问题仍然存在,可能需要进一步检查CMakeLists.txt文件中的其他配置,以及确保所有依赖项都正确安装。在解决问题时,可以查看 "/home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/build/CMakeFiles/CMakeOutput.log" 文件,以获取更多有关配置错误的详细信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值