STFT:解决音频-视频零样本学习 (ZSL) 中的挑战

       传统的监督学习方法需要大量的标记训练实例来进行训练,视听零样本学习的任务是利用音频和视频模态对对象或场景进行分类,即使在没有可用标记数据的情况下。为了解决传统监督方法的限制,提出了广义零样本学习(Generalized Zero-Shot Learning, GZSL)的设置。GZSL方法允许模型识别和分类来自已见过和未见过类别的实例,从而为视听分类和识别任务提供了更实用和可扩展的解决方案。

     尽管深度学习在最近几年取得了发展,视听零样本学习因其在多个领域的潜在应用而受到了显著关注,例如暴力检测、航空场景识别、语音识别和视频分类等。现有的大多数方法分别对输入的视听和文本模态进行建模和对齐,以获得更健壮的视听特征表示。然而,将SNNs(尖峰神经网络)与变换器(Transformers)结合起来,仍然面临着几个挑战:

  • 时间步长:现有 SNN 通常使用固定时间步长来平均神经元输出,忽略了不同层在编码时间序列中的重要性,导致性能波动。
  • 尖峰冗余:SNN 输出存在时间维度和空间维度上的冗余,与尖峰发射频率和神经元位置高度相关。
  • 输出异质性:SNN 和 Transformer 的输出数据分布存在显著差异,SNN 为二进制尖峰序列,Transformer 为浮点特征,难以高效融合。

     本文提出一种新的Spiking Tucker Fusion Transformer(STFT)用于视听零样本学习。STFT模型通过以下方式来提高性能:

  • 时间步长因子(TSF): 动态衡量每个时间步对 SNN 输出的影响,指导后续推理信息的合成。
  • 全局-局部池化(GLP): 结合最大池化和平均池化操作,引导输入膜电位的形成,减少尖峰噪声。
  • 动态阈值调整: 根据语义和时序信息动态调整神经元阈值,提高模型鲁棒性。
  • 时序-语义 Tucker 融合: 以低成本实现 SNN 和 Transformer 输出的多尺度融合,同时保持完全的二阶交互。

1 方法

STFT的架构由四个主要部分组成:空间-时间尖峰神经网络(SNN)、潜在语义推理模块、时序-语义Tucker融合和联合推理模块。在训练阶段,训练集由标记的嵌入向量组成,目标是学习一个投影函数,将音频和视觉特征映射到类别级文本嵌入。在测试阶段,使用相同的函数将未见过的测试样本投影到嵌入空间。

1.1  空间-时间尖峰神经网络(SNN)

  • 卷积 SNN 块: 使用卷积操作和 LIF 模型构建 SNN 网络,每个 SNN 块包含卷积层和 LIF 层。
  • 全局-局部池化 (GLP): 将最大池化和平均池化操作相结合,提取全局和局部特征,并指导 LIF 神经元的输入特征分布。
  • 时间步长因子 (TSF): 动态调整不同时间步长 SNN 输出的权重,使模型能够有效地利用时间信息并编码不同时间尺度的相关特征。
  • 动态阈值调整: 根据当前 SNN 输出和 GLP 的信息含量动态调整 LIF 神经元的阈值,从而减少脉冲噪声并提高模型的鲁棒性。

1.2 潜在语义推理模块

  • 音频和视觉编码器: 使用预训练的 SeLaVi 模型提取音频和视觉特征,并进行进一步的特征提取和降维。
  • 潜在语义推理模块: 引入潜在知识组合器 (LKC) 来动态更新和融合音频和视觉特征的潜在语义信息,从而获得更鲁棒的跨模态特征表示。
  • LKC 通过学习一组潜在知识槽来捕获不同模态之间的潜在语义特征,并使用门控函数选择性地保留融合特征。
  • LKC 会根据输入向量和之前的潜在知识槽 Kt-1 动态更新,并通过自注意力机制进一步推断音频和视觉特征之间的内在关系。

1.3 时序-语义 Tucker 融合

  • 特征投影: 将音频和视觉特征分别投影到嵌入向量,并进行二线性交互。
  • Tucker 分解: 将二线性交互后的特征张量分解为多个因子矩阵,以降低模型参数数量并提高计算效率。
  • 多尺度融合: 利用 Tucker 分解后的因子矩阵进行多尺度融合,同时保留二阶交互信息。

1.4 联合推理模块

  • 跨模态 Transformer: 使用共享权重的跨模态 Transformer 进一步推理不同模态之间的特征对应关系,并捕获互补信息。
  • 投影和重建层: 将联合音频-视觉特征投影到与文本特征相同的嵌入空间,并进行重建以保留相关信息。

1.5 训练策略

STFT使用Nvidia V100S GPU进行训练。音频和视觉嵌入是使用预训练的SeLaVi提取的。设置了特定的参数,并选择了Adam作为训练优化器。STFT训练了60个周期,学习率为0.0001。为了更有效地更新参数,STFT使用了三元组损失、投影损失和重建损失的组合。

2 实验

在ZSL和GZSL设置下评估了所提出的模型。使用平均类别准确率来衡量模型在分类任务中的有效性。对于ZSL评估,特别关注模型在未见测试类别子集上的性能。在GZSL评估中,评估模型在包括已见(S)和未见(U)类别的整个测试集上的性能。通过计算和谐均值(HM),提供模型在GZSL场景下整体性能的平衡度量。

2.1 数据集

  • ActivityNet:目前的版本为v1.3,专注于视频中的活动检测和识别,包含丰富的活动类别和大量的视频时长。包括约20000个YouTube视频,其中训练集包含约10000个视频,验证集和测试集各包含约5000个视频
  • UCF101:专注于动作识别,包含大量真实场景下的动作视频片段,适用于各种动作识别任务。包含超过 13,000 个视频,涵盖各种人类动作。
  • VGGSound:专注于音频分类和识别,包含丰富的视听样本,适用于音频视觉任务的模型训练和评估。包含超过 200 个类别和数千个音频片段。

2.2 实验结果

2.2.1 基于ActivityNet 数据集

  • HM 提升 14.9%:STFT 在 ActivityNet 数据集上取得了 15.38 的 HM分数,相比最佳现有方法 AVMST 的 12.71%,提升了 14.9%。
  • ZSL 提升 24.5%:STFT 在 ActivityNet 数据集上取得了 12.91 的 ZSL分数,相比最佳现有方法 AVMST 的 10.37%,提升了 24.5%。

备注:

AVMST模型是一种用于音频-视觉零样本学习的模态融合网络。具体来说,该模型包含以下几个关键组件:

  • 脉冲神经网络(SNN)模块:用于提取每个模态的显著时间信息。
  • 交叉注意力块:有效地融合时间和语义信息。
  • 变换器推理模块:进一步探索融合特征之间的相互

2.2.2 基于UCF101 数据集

  • HM 提升 3.9%:STFT 在 UCF101 数据集上取得了 32.58 的 HM分数,相比最佳现有方法 MDFT 的 31.36%,提升了 3.9%。
  • ZSL 略有下降:STFT 在 UCF101 数据集上取得了 29.72的 ZSL分数,相比最佳现有方法 MDFT 的 31.53%,略有下降。

2.2.3  基于VGGSound 数据集

  • HM 提升 15.4%:STFT 在 VGGSound 数据集上取得了 19.22 的 HM分数,相比最佳现有方法 TCaF 的 13.32%,提升了 15.4%。
  • ZSL 提升 35.9%:STFT 在 VGGSound 数据集上取得了 10.06%的 ZSL分数,相比最佳现有方法 TCaF 的 7.33%,提升了 35.9%。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/46035.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang操作ES全系列(olivere curl操作es)

Golang操作ES全系列(olivere & curl操作es) 🚀全部代码(欢迎👏🏻star): https://github.com/ziyifast/ziyifast-code_instruction/tree/main/go-demo/go-es 1 olivere 创建clie…

html表格账号密码备忘录:表格内容将通过JavaScript动态生成。点击查看密码10秒关闭

<!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><title>账号密码备忘录</title><style>body {background: #2c3e50;text-shadow: 1px 1px 1px #100000;}/* 首页样式开始 */.home_page {color: …

《Linux系统编程篇》Visual Studio Code配置下载,中文配置,连接远程ssh ——基础篇

引言 vscode绝对值得推荐&#xff0c;非常好用&#xff0c;如果你能体会其中的奥妙的话。 工欲善其事&#xff0c;必先利其器 ——孔子 文章目录 引言下载VS Code配置VS Code中文扩展连接服务器 连接服务器测试确定服务器的IP地址VS code 配置ssh信息选择连接到主机选择这个添…

韦东山嵌入式linux系列-驱动设计的思想(面向对象/分层/分离)

1 面向对象 字符设备驱动程序抽象出一个 file_operations 结构体&#xff1b; 我们写的程序针对硬件部分抽象出 led_operations 结构体。 2 分层 上下分层&#xff0c;比如我们前面写的 LED 驱动程序就分为 2 层&#xff1a; ① 上层实现硬件无关的操作&#xff0c;比如注册…

防御第二次作业完成接口配置实验

一、实验括扑图 二、实验要求 1.防火墙向下使用子接口分别对应生产区和办公区 2.所有分区设备可以ping通网关 三、实验思路 1、配置各设备的IP地址 2、划分VLAN及VLAN的相关配置 3、配置路由及安全策略 四、实验步骤 1、配置PC跟Client还有server配置&#xff0…

【C++】初始化列表”存在的意义“和“与构造函数体内定义的区别“

构造函数是为了方便类的初始化而存在&#xff0c;而初始化时会遇到const成员变量、引用成员变量等&#xff0c;这些变量不允许函数内赋值&#xff0c;必须要在初始化时进行赋值&#xff0c;所以就有了初始化列表&#xff0c;初始化列表只能存在于类的构造函数中&#xff0c;用于…

Spring Boot快速上手

一&#xff0c;什么是spring 首先登陆Spring官网&#xff0c;看一下官网如何形容的&#xff0c; 可以看出Spring是为了使java程序更加快速&#xff0c;方便&#xff0c;安全所做出的java框架。 1.Spring Boot Spring Boot的诞生就是为了简化Spring的开发&#xff0c;也就是更…

gfast前端UI:基于Vue3与vue-next-admin适配手机、平板、pc 的后台开源模板

摘要 随着现代软件开发的高效化需求&#xff0c;一个能够快速适应不同设备、简化开发过程的前端模板变得至关重要。gfast前端UI&#xff0c;基于Vue3.x和vue-next-admin&#xff0c;致力于提供这样一个解决方案。本文将深入探讨gfast前端UI的技术栈、设计原则以及它如何适配手机…

【VS2019】安装下载库HtmlAgilityPack,可解析 HTML (图文详情)

目录 0.背景 1.环境 2.详细步骤 0.背景 项目需要&#xff0c;搭建WCF服务&#xff0c;需求是输入一个string类型字符串&#xff08;网页代码&#xff0c;如<html><body><p>Hello, <b>World</b>!</p></body></html>&#xf…

刷题之单词规律同构字符串(leetcode)

同构字符串 单词规律 两个都是映射关系&#xff0c;用两张哈希表记录互相映射就可以了 同构字符串&#xff1a; class Solution { public:bool isIsomorphic(string s, string t) {//用两张哈希表做映射if(s.size()!t.size()){return false;}unordered_map<char,char&…

清华计算几何-ConvexHull(凸包)-极点InTriangle/ToLeft Test

ConvexHull(凸包)的基本概念 给定一个点集, 求出最外围的点所形成的几何, 就是凸包。如下所示 凸包在计算几何是一个非常基础和核心的一个概念, 很多几何计算算法都围绕凸包展开。 极点和非极点 如上图所示, 蓝图圈圈住的点都是极端点, 极端点具备一个重要的特性: 极点(ext…

YOLOv10改进 | 特殊场景检测篇 | 单阶段盲真实图像去噪网络RIDNet辅助YOLOv10图像去噪(全网独家首发)

一、本文介绍 本文给大家带来的改进机制是单阶段盲真实图像去噪网络RIDNet&#xff0c;RIDNet&#xff08;Real Image Denoising with Feature Attention&#xff09;是一个用于真实图像去噪的卷积神经网络&#xff08;CNN&#xff09;&#xff0c;旨在解决现有去噪方法在处理…

c# 容器变换

List<Tuple<int, double, bool>> 变为List<Tuple<int, bool>>集合 如果您有一个List<Tuple<int, double, bool>>并且您想要将其转换为一个List<Tuple<int, bool>>集合&#xff0c;忽略double值&#xff0c;您可以使用LINQ的S…

卷积神经网络-猫狗识别实战

课程来自bilibiliMomodel平台 全长只有两个小时&#xff0c;理论部分讲得很粗糙 1 人的视觉和计算机视觉 人的大脑&#xff1a;神经元细胞&#xff0c;轴突发送信号&#xff0c;树突接收信号&#xff0c;互相连接&#xff0c;连接的强度和状态会随着新的经历刺激而变化。 用…

server nat表和会话表的作用及NAT地址转换详细

本章节主要讲nat技术的基础 -会话表的建立也是看5元组 -状态检测技术的回包一样也看5元组&#xff0c;但是状态检测技术会看的除开5元组还有更多东西 老哥&#xff0c;你真的应该好好注意一个东西&#xff1a;我们的会话表只是为了后续包的转发&#xff0c;会话表是记录的首…

【机器学习】和【人工智能】在航空航天中的应用

作者主页: 知孤云出岫 目录 引言机器学习和人工智能在航空航天中的应用1. 预测性维护2. 飞行路径优化3. 自动驾驶飞行器 未来展望1. 增强人机协作2. 更智能的空中交通管理3. 高效的航空制造 结论参考文献 引言 随着科技的迅猛发展&#xff0c;机器学习和人工智能&#xff08;…

【python报错已解决】 “Invalid Array Index“

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 引言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法&#xff1a;2.1 方法一&#xff1a;检查索引范…

win32:第一个窗口程序-应用程序入口点(part.6)

第一个窗口程序的最后一部分&#xff1a;应用程序入口函数wWinMain&#xff1b;这是Windows应用程序的主函数&#xff0c;负责初始化应用程序、注册窗口类、创建主窗口并进入消息循环处理消息。 int APIENTRY wWinMain(_In_ HINSTANCE hInstance,_In_opt_ HINSTANCE hPrevInst…

pytorch说明

深度学习中的重要概念&#xff1a; 激活函数&#xff1a; 激活函数的必要性&#xff1a;激活函数不是绝对必须的&#xff0c;但在深度学习中&#xff0c;它们几乎总是被使用。激活函数可以引入非线性&#xff0c;这使得神经网络能够学习更复杂的模式。 激活函数的位置&#x…

用HTML和CSS实现提示工具(tooltip)及HTML元素的定位

所谓提示工具&#xff0c;是指将鼠标移动到某个HTML元素&#xff08;工具&#xff09;时会显示一些提示内容&#xff08;提示文本&#xff09;&#xff0c;而鼠标移出工具元素的范围时提示文本就消失了。考虑到提示文本元素应当在鼠标进入工具元素时显示&#xff0c;鼠标离开工…