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

ai_drive67_基于不确定性的多视图决策融合

论文链接:https://openreview.net/forum?id=OOsR8BzCnl5
https://arxiv.org/abs/2102.02051

代码链接:https://github.com/hanmenghan/TMC

Zongbo Han, Changqing Zhang, Huazhu Fu, Joey Tianyi Zhou, Trusted Multi-View Classification, International Conference on Learning Representations (ICLR) 2021

作者另外一篇结合不确定性与 mix up 的相关文章
UMIX: Improving Importance Weighting for Subpopulation Shift via Uncertainty-Aware Mixup

1. 方法动机

1.1. 方法动机

多模态人工智能技术正在被广泛应用到智能医疗、无人系统等重要领域,设计精准、可靠的多模态学习技术成为支持重要应用的关键。

多模态数据为智能系统决策提供了丰富信息,使得多模态智能系统可以 “兼听则明”,提高分类和预测准确性。

然而,在许多代价敏感场景中,多模态融合及决策的可信性往往更加重要。

对于多模态分类任务,传统方法通常假设各模态质量和任务相关性是稳定的。

但实际上,对于不同样本或在不同场景下,模态的质量和任务的相关程度往往具有动态性。如多传感器场景中,RGB 图像在光线好时更有效,而近红外图像在可以在视觉困难情况下提供更重要的信息。

多模态医学诊断中,往往存在多项检查数据,对于不同患者同一检查项目所提供信息的重要性也会有所不同。此外,传感器的不稳定以及损坏导致数据获取异常,也给融合带来挑战。考虑到多模态数据质量的动态性,需要使多模态智能系统可以做到可靠而且有证据地融合多模态信息,即 “信而有征”,从而提高分类和预测的稳定性和可信性。

本文使用不确定性对此动态性进行建模、利用一种改进的证据融合策略集成多模态信息。论文题为 Trusted Multi-View Classification ,现已被 ICLR 2021 收录。

基于此,不仅能在模态质量动态变化时获得更加稳定的分类结果,同时能够估计决策信心,并对分类结果和分类信心进行模态级溯源。整体上,所提方法在多模态协同学习(兼听则明)中,对不同模态进行证据估计(信而有征),从而支持融合及决策的可靠性和稳定性。

在这里插入图片描述

1.2

1.3

2. proposed method

2.1 不确定性和证据理论

在使用 softmax 的分类模型中,最大的 softmax 输出用于最终预测会使即使错误的预测也有较高的置信度(over-confident)。

主观逻辑(subjective logic)算法能够很好的解决这一问题。与普通的分类不同,主观逻辑通过将输出建模为狄利克雷分布来获得不同类的分配概率和不确定性。

具体地,对于视图 ,我们有,

其中 表示不确定性, 表示第 类的分配概率。对第 个视图,主观逻辑将证据 和狄利克雷分布的参数

进行了联系,即

。然后,不同类的分配概率和不确定性可以由以下公式计算得到:

其中,

2.2 DS 组合规则用于多模态分类

DS 组合规则用于多模态分类

对于模态 可以得到图片,现在考虑使用 DS 组合规则将 个独立的模态所得到的分配概率进行组合。

给定 和 ,可以使用以下规则进行融合:

具体的计算方式为:

其中 反映了 和 的冲突程度。

根据 DS 组合规则的可传递性,我们可以得到,对于 个模态的融合方式:
.

该组合方式具有较好的合理性和可解释性。不同类的分配概率和不确定性计算的过程实际保证了如下特性:(1)观测到的第 类的证据越多,分配给第 类的可能性就越大,反之亦然;(2)若所有类证据都不足,则整体不确定性较大。此外,目标函数还通过抑制错误标签对应的证据避免不确定性小但分类错误的情况。

通过学习获得

2.3 通过学习获得 M

传统神经网络通常使用交叉熵损失进行训练:

在这里插入图片描述

由于模型的输出为狄利克雷分布,需要对其进行调整,得到下式:

在这里插入图片描述

其中 ψ 是 digamma 函数。

上述损失能够促进模型每个样本的正确标签比其他类生成更多的证据,但是不能保证错误类的证据尽量少。我们期望对于错误分类的样本的证据变为 0。因此以下损失函数被引入用来对证据进行正则化。

在这里插入图片描述

给出狄利克雷分布参数 后的损失可以写作:
在这里插入图片描述

在多模态框架下,我们采用多任务策略,总损失如下所示:
在这里插入图片描述

3.3. 实验结果

实验表明,所提方法可以较为灵敏地感知噪声的动态变化 (更多实验见论文):

3.1 实验分析

在这里插入图片描述
图 2. 不确定性密度分布:分布内 / 外样本对比.

在这里插入图片描述
图 3. 典型确定性和不确定性分类结果.

3.2 小结

针对多模态之间关系的不稳定性或动态性,此次研究首次提出可信多模态融合方法,设计了支持可信和可解释的多模态分类算法。

所提出的模型基于证据理论以可学习方式进行自适应的动态集成,对每个样本的每个模态进行不确定性估计,使模型能够在复杂多变场景下保证分类的可靠性和稳定性。

3.3 应用场景

潜在应用场景主要包括:

  1. 需要可信决策的多模态分类任务,如智能医疗、自动驾驶等代价敏感任务;

  2. 模态质量动态变化的应用场景;

  3. 寻求决策可溯源的多模态集成场景;

  4. 多传感器系统中容易出现传感器故障的场景。

相关文章:

ai_drive67_基于不确定性的多视图决策融合

论文链接:https://openreview.net/forum?idOOsR8BzCnl5 https://arxiv.org/abs/2102.02051 代码链接:https://github.com/hanmenghan/TMC Zongbo Han, Changqing Zhang, Huazhu Fu, Joey Tianyi Zhou, Trusted Multi-View Classification, Internatio…...

Docker逃逸---procfs文件挂载

一、产生原因 将宿主机/proc目录挂载进了容器,而该目录内的/proc/sys/kernel/core_pattern文件是负责进程奔溃时内存数据转储的,当第一个字符是| 管道符时,后面的部分会以命令行的方式进行解析并运行,攻击者可以将恶意文件写入该…...

[Python小项目] 从桌面壁纸到AI绘画

从桌面壁纸到AI绘画 一、前言 1.1 确认问题 由于生活和工作需要,小编要长时间的使用电脑,小编又懒,一个主题用半年的那种,所以桌面壁纸也是处于常年不更换的状态。即时改变主题也是在微软自带的壁纸中选择,而这些自…...

【Docker 内核详解】namespace 资源隔离(五):User namespaces

【Docker 内核详解 - namespace 资源隔离】系列包含: namespace 资源隔离(一):进行 namespace API 操作的 4 种方式namespace 资源隔离(二):UTS namespace & IPC namespacenamespace 资源隔…...

网络原理必知会

衔接上文:网络原理必知会_念君思宁的博客-CSDN博客 流量控制: 流量控制也是保证可靠性的机制 对于滑动窗口,批量发送数据而言,窗口越大,相当于批量发送的数据越多,整体的速度也就越快了,但是&…...

ELK 日志分析系统介绍与部署

目录 一、ELK 简介: 1.开源工具介绍: 2.其它组件: 2.1 Filebeat: 2.2 Fluentd: 2.3 缓存/消息队列(redis、kafka、RabbitMQ等): 3. filebeat 结合 logstash 带来好处: 二、为什么要…...

Android 内存治理之线程

1、 前言 当我们在应用程序中启动一个线程的时候,也是有可能发生OOM错误的。当我们看到以下log的时候,就说明系统分配线程栈失败了。 java.lang.OutOfMemoryError: pthread_create (1040KB stack) failed: Out of memory这种情况可能是两种原因导致的。…...

三、K8S之ReplicaSet

ReplicaSet 一、概述 Kubernetes最核心的功能是编排,编排操作都是依靠控制器对象来完成,高级控制器控制着基础的控制器,基础控制器再去控制Pod,Pod里面再包容器。K8S项目里API对象层级大概就是这样。 而ReplicaSet这个控制器是…...

【基础篇】四、本地部署Flink

文章目录 1、本地独立部署会话模式的Flink2、本地独立部署会话模式的Flink集群3、向Flink集群提交作业4、Standalone方式部署单作业模式5、Standalone方式部署应用模式的Flink Flink的常见三种部署方式: 独立部署(Standalone部署)基于K8S部署…...

简述什么是迭代器(Iterator)?

迭代器(Iterator)是一种设计模式,Java 中的迭代器是集合框架中的一个接口,它可以让程序员遍历集合中的元素而无需暴露集合的内部结构。使用迭代器可以遍历任何类型的集合,例如 List、Set 和 Map 等。 通过调用集合类的 iterator() 方法可以获取一个迭代器,并使用 hasNext…...

DarkGate恶意软件通过消息服务传播

导语 近日,一种名为DarkGate的恶意软件通过消息服务平台如Skype和Microsoft Teams进行传播。它冒充PDF文件,利用用户的好奇心诱使其打开,进而下载并执行恶意代码。这种攻击手段使用了Visual Basic for Applications(VBA&#xff0…...

LeetCode——动态规划篇(六)

刷题顺序及思路来源于代码随想录,网站地址:https://programmercarl.com 目录 300. 最长递增子序列 - 力扣(LeetCode) 674. 最长连续递增序列 - 力扣(LeetCode) 718. 最长重复子数组 - 力扣&#xff08…...

sql 注入(2), 文件读写 木马植入 远程控制

sql 注入 文件读写 木马植入 远程控制 一, 检测读写权限 查看mysql全局变量 SHOW GLOBAL VARIABLES LIKE %secure%secure_file_priv 空, 则任意读写secure_file_priv 路径, 则只能读写该路径下的文件secure_file_priv NULL, 则禁止读写二, 读取文件, 使用 load_file() 函数…...

求直角三角形第三点的坐标

文章目录 求直角三角形第三点的坐标1. 原理2. 数学公式3. 推导过程 求直角三角形第三点的坐标 1. 原理 已知内容有: P1、P2 两点的坐标; dis1 为 P1与P2两点之间的距离; dis2 为 P2与P3两点之间的距离; 求解: …...

【Kotlin精简】第3章 类与接口

1 简介 Kotlin类的声明和Java没有什么区别,Kotlin中,类的声明也使用class关键字,如果只是声明一个空类,Kotlin和Java没有任何区别,不过定义类的其他成员会有一些区别。实例化类不用写new,类被继承或者重写…...

关于面试以及小白入职后的一些建议

面试的本质 面试的过程是一个互相选择的过程;面试官的诉求是,了解应聘者的个人基本信息、工作态度、专业能力及其他综合能力是否与公司招聘岗位匹配;面试者的诉求是,拿下招聘岗位offer,获得工作报酬; 面试…...

Excel 从网站获取表格

文章目录 导入网站数据导入股票实时行情 用 Excel 获取网站数据的缺点:只能获取表格类的数据,不能获取非结构化的数据。 导入网站数据 转到地址之后: 实测该功能经常导致 Excel 卡死。 导入股票实时行情...

rsync 备份工具(附rsync+inotify 实时同步部署实例)

rsync 备份工具(附rsyncinotify 实时同步部署实例) 1、rsync概述1.1关于rsync1.2rsync 的特点1.3工作原理 2、rsync相关命令2.1基本格式和常用选项2.2启动和关闭rsync服务2.3下行同步基本格式2.4上行同步基本格式2.5免交互2.5.1指定密码文件2.5.2rsync-daemon方式2.…...

Java架构师缓存性能优化

目录 1 缓存的负载策略2 缓存的序列化问题3 缓存命中率低4 缓存对数据库高并发访问5 缓存数据刷新的策略5.1. 实时策略5.2. 异步策略5.3. 定时策略6 何时写缓存7 批量数据来更新缓存8 缓存数据过期的策略9 缓存数据如何恢复10 缓存数据如何迁移11 缓存冷启动和缓存预热想学习架…...

探索服务器潜能:创意项目、在线社区与其他应用

目录 一、部署自己的创意项目 优势: 劣势: 结论: 二、打造一款全新的在线社区 优势: 劣势: 结论: 三、其他用途 总结: 随着互联网的发展,越来越多的人开始拥有自己的服务器…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序

一、开发准备 ​​环境搭建​​: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 ​​项目创建​​: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域&#xff0c;MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步&#xff0c;这两种通讯协议也正在被逐步融合&#xff0c;形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...

Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案

在大数据时代&#xff0c;海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构&#xff0c;在处理大规模数据抓取任务时展现出强大的能力。然而&#xff0c;随着业务规模的不断扩大和数据抓取需求的日益复杂&#xff0c;传统…...

若依登录用户名和密码加密

/*** 获取公钥&#xff1a;前端用来密码加密* return*/GetMapping("/getPublicKey")public RSAUtil.RSAKeyPair getPublicKey() {return RSAUtil.rsaKeyPair();}新建RSAUti.Java package com.ruoyi.common.utils;import org.apache.commons.codec.binary.Base64; im…...

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...