评估视觉在CNN 在人类动作识别准确率

大家读完觉得有帮助记得关注和点赞!!!

抽象

本研究使用 COCO 图像语料库的三类子集探索人类动作识别,对从简单的全连接网络到 transformer 架构的模型进行基准测试。二进制 Vision Transformer (ViT) 实现了 90% 的平均测试准确率,明显超过卷积网络等多类分类器 (≈35%)和基于 CLIP 的模型 (≈62-64%)。单因素方差分析 (F=61.37,p<0.001) 证实这些差异具有统计学意义。使用 SHAP 解释器和 LeGrad 热图的定性分析表明,ViT 定位姿势特定区域(例如,walking_running的下肢),而更简单的前馈模型通常关注背景纹理,解释它们的错误。这些发现强调了变压器表示的数据效率以及可解释性技术在诊断特定类故障中的重要性。

姿势问题:评估视觉转换器和 CNN 在小 COCO 子集上的人类动作识别

1介绍

自动识别人类粗略的动作,例如坐、站和walking_unning是行为监控的一项基本任务。尽管像 MSCOCO 这样的大规模数据集提供了多样化的场景,但其丰富的上下文杂波也对严格依赖局部感受野的传统卷积网络提出了挑战。最近的 transformer 架构有望更好地进行全局上下文建模,但对小的、平衡的动作子集的系统比较仍然很少。因此,我们组装了一个 285 张图像、标签验证的 COCO 子集,并对经典前馈和卷积基线、更广义的 CNN 变体、两个 CLIP 传输管道以及二进制和多类 ViT(视觉转换器)进行了广泛的评估。通过将交叉验证的性能指标与统计假设检验和事后可解释性工具相结合,我们不仅旨在阐明哪个模型更优越,还旨在阐明为什么某些架构在有限的数据约束下会成功或失败。

2数据和方法说明

2.1数据

COCO 基准测试的精选子集(Lin 等人,2015),其中每个条目最初都包含许可证代码、文件名、COCO URL、Flickr URL、捕获日期、图像尺寸、唯一标识符和活动标签(坐着、站着或 walking_running)。出于态势分类的目的,仅保留了文件名、COCO URL、高度、宽度、唯一 ID 和活动标签;自动生成的索引、许可元数据、冗余的 Flickr URL 和捕获日期被丢弃。图 1 显示了每个类别的代表性图像。随后的手动审计揭示了不可分类数据的情况,例如,图 6 描绘了一个马桶,尽管它被注释为 “站立的”,并且在模型训练之前删除了所有这些噪声样本,以防止虚假特征关联的传播。

图 1:每个类的随机样本

为了表征我们精选的 COCO 子集的特性,我们首先进行了探索性数据分析。如图 2(a) 所示,walking_running (n = 98)、坐着 (n = 95) 和站立 (n = 92) 这三个类别分别相差不超过 6 个样本,因此证明采用未加权准确性作为我们的主要评估指标是合理的,而无需重新加权或过度采样。图 2(b) 描绘了每张图像的原始高度和宽度,尽管分辨率各不相同,但绝大多数图像都聚集在 640 张图像附近×640 像素,只有少量图像处于较高或较低尺寸。此聚类表示将大小统一调整为 224×224px 时,特定于类的失真将可以忽略不计。最后,图 2(c) 中的纵横比分布在≈1.0(正方形)与次级模式一起,大约为≈1.33 (4:3) 和≈1.50 (3:2).总的来说,这些分析为预处理管道提供了原则性的基础,该管道为下游模型提供了均衡、成分一致的输入。

请参阅标题

(一)标签

请参阅标题

(二)散布图

(三)纵横比

图 2:(a) 图像标签的分布 (b) 按类划分的高度与宽度散点图 (c) 纵横比直方图

特征计数意味 着±性病中位数四分位线范围
宽度285565.74±99.17640480–640300–640
高度285499.44±100.48480427–640240–640
纵横比2851.195±0.3501.3330.75–1.4990.601–2.025

表 1:图像尺寸的描述性统计量,包括标准±平均值、中位数、四分位数范围和全范围。

2.2模型/算法

我们评估了各种架构,包括全连接 FNN、三层 CNN 和广义 CNN,以及两种基于 transformer 的方法(ViT 和 CLIP 嵌入,有和没有余弦相似性特征)。

2.2.1CNN 和 FNN

CNN 由三个卷积块 (32→64→128 个过滤器,每个过滤器后跟 ReLU 激活和 2 个×2 max-pooling)、一个展平层、一个 256 个单位的 ReLU 激活的密集隐藏层以及 n 个类的 softmax 输出。选择这种设计是因为卷积层可以有效地捕获图像中的局部空间模式。相比之下,FNN 使 224×224×3 输入到向量中,并将其通过两个密集层 (128→64 单位) 在最终 softmax 之前(普里亚,2023).我们将 FNN 作为对照“仅像素”基线,以衡量 CNN 的空间归纳偏差提供了多少好处。

2.2.2CNN_gen

这种广义 CNN 建立在我们的基础 CNN 之上,通过结合更强的正则化和广泛的增强来改进我们小的 MS COCO 子集的泛化。每个卷积块 (32→64→128 个过滤器)用途L2权重衰减1e−4)和批量归一化,然后是 ReLU 和 SpatialDropout2D(0.2),以防止过度依赖任何单个特征图。然后,GlobalAveragePooling2D 层替换一个大型的扁平化和密集块,以减少参数并强制执行平移不变性(Li 等人,2024).在训练期间,我们应用了激进的增强 - 随机旋转 (±25∘)、移位 (±20%)、切变、缩放、翻转、亮度抖动 (0.8-1.2×) 和通道偏移 - 通过 ImageDataGenerator,有效地将我们的少数图像扩展为更丰富、更多样化的语料库。

2.2.3维特

为了研究 Vision Transformers (ViT) 用于姿势识别的泛化能力,我们微调了一个预先训练的 ViT 模型(斯里坎特,2024)在 COCO 派生的图像子集上,×按照Steiner 等人 (2022)并分为 80% 的训练集、10% 的验证集和 10% 的测试集。分类头首先适用于二元坐walking_running任务,随后扩展到五次独立运行的三类坐姿、行走和跑步公式,采用具有权重衰减和提前停止的 Adam 优化器。通过利用 ViT 的自我注意机制来捕获长期依赖关系和全局上下文,我们的目标是证明与基于卷积的替代方案相比,它在相对较小的、多样化的图像数据集上的卓越泛化性。

2.2.4夹

接下来,我们利用 OpenAIRadford 等人 (2021)的 CLIP 预训练视觉编码器作为固定特征提取器,并且仅在顶部训练一个轻量级多层感知器。我们首先加载 openai/clip-vit-base-patch32 及其处理器,将每个 224×224 RGB 图像通过 get_image_features 生成 512 维嵌入,然后将其收集到设计矩阵 X 和标签向量 y 中。随后,我们将数据拆分为 (80/20)% 的训练/测试拆分,定义一个五层 MLP (512→256→128→64→num_classes) 在每个隐藏层之后应用 BatchNorm 和 Dropout,使用 Adam 和稀疏分类交叉熵对其进行编译,并训练最多 30 个 epoch,并根据验证损失提前停止。之所以选择这种方法,是因为 CLIP 的自我监督、多模态预训练产生了语义丰富且线性可分离的图像表示,非常适合我们的小 MS COCO 子集,而浅层 MLP 头需要最少的数据和计算资源进行微调。

2.2.5CLIP 余弦

我们通过余弦距离特征将 CLIP 图像嵌入的语义对齐显式编码到每个类标签,从而进一步丰富了 CLIP 图像嵌入。首先,我们使用相同的 CLIP 处理器和 get_text_features API 为每个标签计算固定的文本嵌入。然后,对于每个图像的 512-D 视觉嵌入,我们计算它与每个标签嵌入的余弦相似性,从而生成一个 N 维“相似性向量”,其中 N 是类的数量。我们将这个向量连接到原始图像嵌入,从而将特征大小加倍,并训练一个轻量级的五层 MLP(512→256→128→64→num_classes) 在增强的表示上,再次使用批量规范化、dropout 和 Early Stopping。通过结合直接的图像-文本对齐分数,该模型利用 CLIP 的多模态预训练将视觉特征置于类语义中,从而提高了对 MSCOCO 子集进行微调时的线性可分离性和稳健性。

2.3实验方法

我们在 Google Colab 中使用固定 (80/10/10)% 分层训练/验证/测试拆分和全局随机种子进行所有实验以实现可重复性。对于每种架构 - CNN 、 FNN 、 广义 CNN 、微调 ViT 、 CLIP 嵌入 MLP 和 CLIP+余弦 MLP - 我们运行了 5 个独立的训练试验(种子 42-46),提前停止 (耐心 = 5) 收敛,记录每次运行的测试准确性,然后对每个模型的这 5 个准确性值执行单向方差分析,以比较它们的平均性能。

3结果

准确性精度召回F1 分数
CNN_base0.343±0.0740.300±0.1570.343±0.0740.261±0.107
FNN_base0.407±0.0290.501±0.1000.407±0.0290.366±0.042
CNN_gen0.350±0.0270.263±0.1460.350±0.0270.211±0.050
0.639±0.0850.742±0.0370.639±0.0850.606±0.115
CLIP 余弦0.618±0.0890.743±0.0280.618±0.0890.576±0.126
ViT 多类0.572±0.0640.585±0.0570.572±0.0640.568±0.061
ViT 二进制文件0.900±0.0000.912±0.0100.900±0.0000.901±0.000

表 2:模型性能 (平均值性病±超过 5 次运行)

表 2 显示了平均测试准确度、精密度、召回率和 F1 分数 (±标准差)进行 7 次独立运行。

3.1准确性

两个基于二进制视觉 transformer 的模型的性能大大优于所有卷积基线。ViT Binary 实现了 90% (±0.0),在运行之间表现出很好的一致性。CLIP 和 CLIP 余弦紧随其后,平均精度为 63.9% (±8.5%)和 61.8% (±8.9%)。相比之下,CNN_base 和 CNN_gen 型号获得 34.3% (±7.4%)和 35% (±2.7%),而FNN_base达到 40.7% (±2.9%).多类 ViT 产生中等性能,平均准确率为 57.2% (±6.4%).

3.2精度、召回率和 F1 分数

精度与精度趋势密切相关。ViT Binary 再次以 91.2% 的精度领先 (±1%),其次是 CLIP 余弦,占 74.3% (±2.8%)和 CLIP 为 74.2% (±3.7%).FNN_base 实现了令人惊讶的 50.1% (±10%),尽管其整体准确性仍然很低。CNN_base 和 CNN_gen 两种 CNN 模型的精度较低,分别为 30% 和 26.3%,表明误报率较高。召回率和 F1 分数反映了类似的模式——transformer 模型在这两个指标上都占主导地位,而密集和卷积基线则滞后。

3.3运行之间的可变性

标准差突出稳定性 - ViT Binary 的方差为零,表示在固定种子值下的确定性行为。两种 CLIP 模型都表现出更高的可变性 (±8-9%),可能是由于随机拆分和下游分类器训练。CNN_gen 模型显示准确率的可变性较低 (±2.7%),但其平均性能仍低于 CNN_base (±7.4%).这表明 CNN_gen 中额外的正则化和增强提高了一致性,但并没有提高整体准确性。

请参阅标题

图 3:模型精度比较

图 3 显示了每个模型在五次运行中的每次运行测试准确性,证实了 ViT 二进制的完美稳定性和基于 CLIP 的分类器的可变性,以及连续运行中 CNN_base 和 CNN_gen 的性能下降漂移。

3.4统计分析

为了确认观察到的平均检验准确性差异是否具有统计学意义,我们进行了单因素方差分析,比较了所有七个模型在五次运行中的准确性得分。分析结果是

F=61.3706,p<0.001,

表明模型的平均精度之间存在非常显著的差异。此结果支持以下结论:至少有一个模型在具有统计意义的方式上优于其他模型。

4讨论与结论

4.1可解释的 AI

与简单的分类器不同,神经网络模型很复杂,这使得其预测的可解释性极具挑战性。了解影响每个预测的因素至关重要,即使模型获得高准确率分数也是如此。因此,我们的研究采用了 SHAP 等可解释性技术(Lundberg 和 Lee,2017)和 LeGrad(Bousselham 等人,2025)突出显示驱动模型行为的输入特征,并有助于调试由不良特征引起的错误预测。

如图 7 所示,使用 LeGrad 获得的经验显著性模式提供了一个明确的证据,表明我们的 ViT 动作探针将其预测建立在语义一致的姿势特定区域。例如,使用 walking_running 标签时,相关性始终集中在演员的下肢和近端运动线索上。相比之下,站立归因图倾向于垂直对齐的躯干和质心。相反,每当存在坐姿配置时,坐姿图就会转向长凳水平结构或受试者的弯曲臀部。此外,我们在上下文、非人类元素(例如第一行示例中的标志)上没有发现零星的热量,这表明模型能够将其注意力限制在人类主体上。

使用 SHAP 将 FNN 和 CNN 分类器的 logit 分解为像素级贡献,揭示了每种架构如何编码姿势语义。FNN 表现出的 SHAP 星等大约比图 9 中观察到的 CNN 中观察到的急剧局部归因小一个数量级,并且明显更加分散。如图 8 所示,这种色散反映了 FNN 的结构特性,其中没有保持局部性的卷积核会稀释任何单个像素的影响。总的来说,SHAP 分析证实,这两个模型都依赖于语义上合理的姿势提示,同时突出了 FNN 相对于其卷积对应物更粗糙的空间选择性。

图 4:用于误差分析的模型预测

4.2误差分析

为了更好地理解图 4 所示模型中分类错误的原因,我们对每个动作类别(坐着、walking_running、站着)中的一个代表性示例进行了定性误差分析。

实证评估表明,基线 CNN 和增强变体都屈服于过度拟合,主要是因为数据集尺寸过小Yamashita et al. (2018).由于独立样本少得多,网络在几个 epoch 后产生的验证性能会停滞不前。然而,我们观察到通过迁移学习模型实现了有意义的性能提升,因为这些模型已经在大型数据集上进行了预训练。

尽管如此,二进制和三级性能之间的明显差异凸显了 Vision Transformer 倾向于描绘严重不同的运动模式,同时努力解决更精细的姿势微妙之处。在二进制任务中,该模型 90.0% 的准确率证明了它能够利用将静止坐姿与动态步态模式分开的明显时空线索;然而,当 “站立 ”作为一个中间类别被引入时,整体准确率下降到57.2%(±0.064),这表明与坐着和walking_running共享关键视觉特征的站立框架会引起混淆的自我注意激活。

图 5:来自 “Sitting” 标签的不良数据集注释示例

示例图像(图 5)说明了注释噪声的典型实例,尽管主要受试者的直立姿势表现为垂直躯干对齐。然而,该图像仍然被错误地标记为“坐着”,表面上是由于背景中存在坐着的人物。这种令人困惑的注释会破坏训练过程中的特征-标签映射,导致 CNN 模型内化虚假相关性,而不是真正的空间配置(布朗利,2022).因此,与更简单的 FNN 模型相比,这些模型可能表现出较差的泛化,因为缺乏明确的空间先验,因此不太容易受到背景驱动的标签混淆的影响。此外,当这些嘈杂的注释渗透到验证集时,它们会侵蚀性能指标的有效性,从而破坏任何后续比较分析的可靠性。

4.3结论

我们的实验表明,在二元分类设置中评估时,迁移学习转换器,特别是以任务为中心的二元 ViT,在适度的三类 COCO 子集上提供了最先进的准确性。由于 “standing” 和 “walking_running” 之间的视觉特征相同,因此二进制模型比多职业设置有了显著的改进。此外,基于显著性的错误分析表明,这种优势源于 ViT 能够专注于语义相关的身体部位线索而不是偶然的风景,而 CLIP 的多模态嵌入提供了一种有竞争力但更具可变性的替代方案。相比之下,浅层或狭义正则化的 CNN 仍然容易受到背景偏差和数据稀缺的影响。未来的工作应该研究半监督增强以弥合多类 ViT 差距,结合时间上下文以进行细粒度的动作消歧,并扩展可解释性审计以评估人口统计属性的公平性。

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

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

相关文章

Self-supervised Learning(BERT/GPT/T5)

李宏毅老师《Pre-train Model》 什么是:Self-supervised Learning BERT BERT 能做什么 Mask Input Next Sentence Prediction(not helpful) BERT其它的能力 上述的能力&#xff0c;可以认为是一种填空的能力&#xff0c;那么除了这些&#xff0c;还有哪些有用的能力呢&…

《NuGet:.NET开发的魔法包管理器》

一、NuGet 初相识 在软件开发的广袤天地中&#xff0c;依赖管理始终是一个核心议题。想象一下&#xff0c;在没有高效包管理工具的年代&#xff0c;开发者如同在黑暗中摸索前行。当项目逐渐庞大&#xff0c;所需的外部库和组件日益增多&#xff0c;手动管理这些依赖就如同一场噩…

Vulkan 学习笔记12—深度缓冲

一、3D几何体与深度问题 Z坐标引入 将2D几何体扩展为3D时&#xff0c;需在Vertex结构体中添加glm::vec3 pos表示三维位置&#xff0c;并更新顶点输入描述符格式为VK_FORMAT_R32G32B32_SFLOAT。顶点着色器需接收3D坐标并通过模型-视图-投影矩阵转换为裁剪坐标。 深度冲突问题 当…

AWS EC2使用SSM会话管理器连接

&#x1f9e9; 前提条件 已创建并运行中的 Amazon EC2 实例&#xff08;Amazon Linux 2023&#xff09; 拥有管理员权限的 AWS 账户 已连接到实例&#xff08;例如通过 EC2 Instance Connect&#xff09; 第一步&#xff1a;手动安装 SSM Agent Amazon Linux 2023 默认未安…

Llama 4 模型卡及提示格式介绍

以下是Llama 4支持的特殊标记和标签的完整列表: 通用标记 <|begin_of_text|>:指定提示符的开始。 <|end_of_text|>:模型将停止生成更多标记。此标记仅由预训练的模型生成。 <|header_start|>…<|header_end|>:这些标记包含特定消息的角色。可能的…

flutter bloc 使用详细解析

源码地址 flutter_bloc 是基于 BLoC&#xff08;Business Logic Component&#xff09;模式的 Flutter 状态管理库&#xff0c;它封装了 bloc package&#xff0c;帮助我们更清晰地组织业务逻辑与 UI 的分离。核心思想是 事件驱动 和 状态响应。 &#x1f9e0; 原理简介 1. 核…

c++ 语言在无人机应用开发中的应用

C 语言在无人机应用开发中扮演着核心角色&#xff0c;特别是在对性能、实时性、资源利用效率和底层硬件控制有严格要求的领域。以下是其主要应用领域&#xff1a; 飞控系统 (Flight Control System - FCS) 核心功能&#xff1a; 这是无人机的大脑。C 用于实现核心的导航、制导与…

Uniapp本地存储(uni.setStorage)全面解析与实践指南

在移动应用开发中&#xff0c;本地存储是不可或缺的核心功能之一。作为跨平台开发框架&#xff0c;Uniapp提供了一套完善的本地存储解决方案&#xff0c;使开发者能够轻松实现数据的持久化存储。本文将深入探讨Uniapp本地存储的方方面面&#xff0c;从基础使用到高级技巧&#…

n8n教程:5分钟部署+自动生AI日报并写入飞书多维表格

哈喽&#xff0c;大家好&#x1f44f; 我是阿星&#xff01; 最近n8n太火了。什么是n8n&#xff1f;有点像扣子和dify的综合体。 简单来说就是替你打工的「自动化工作流」 我们今天就从部署&#x1f449;搭建第一个工作流。用它实现自动抓取新闻并分类。 教程有点长&#x…

禾纳 AET3152AP 电源MOS IC完全替代TDM3307 替代TDM2307泰德电子料 国产芯片

禾纳半导体的电源管理芯片AET3152AP不含卤素和锑&#xff0c;符合Rohs标准&#xff0c;应用在交换机切换&#xff0c;便携式/台式机中的电源管理等&#xff0c;可pin to pin替代TDM3307或TDM2307. AET3152AP 封装为PDFN3030 &#xff0c;最小包装数为5000pcs AET3152AP工作温…

专题:2025信创产业新发展+AI趋势数字化研究报告|附30+份报告PDF汇总下载

原文链接&#xff1a;https://tecdat.cn/?p42711 本报告汇总解读聚焦信创产业核心发展脉络&#xff0c;以数据驱动视角剖析技术演进与市场变革。信创产业作为国家数字安全与技术自主可控的核心载体&#xff0c;正经历从“可用”到“好用”的关键跃迁。 本报告洞察基于《亿欧智…

电子电气架构 --- 分区电子电气架构如何支持软件定义汽车

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…

【简单】344.反转字符串

题目描述 编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间&#xff0c;你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 1&#xff1a; 输入&#xff1a;s ["h&quo…

CVE-2025-24813源码分析与漏洞复现(Tomcat 路径等效漏洞与反序列化RCE)

漏洞概述 漏洞名称&#xff1a;Tomcat 路径等效漏洞反序列化远程代码执行&#xff08;RCE&#xff09; CVE 编号&#xff1a;CVE-2025-24813 CVSS 评分&#xff1a;9.8 影响版本&#xff1a; 9.0.0.M1 ≤ Tomcat ≤ 9.0.9810.1.0-M1 ≤ Tomcat ≤ 10.1.3411.0.0-M1 ≤ Tomcat…

深入解析:如何实时获取Socket接收缓冲区的数据量

在网络编程中&#xff0c;精确掌握接收缓冲区的数据状态是优化性能的关键。本文将揭秘如何跨平台获取socket接收缓冲区的可读数据量&#xff0c;并分析实际应用中的注意事项。 一、核心API&#xff1a;操作系统级数据探针 1. Windows平台方案 #include <winsock2.h>// …

Edge卸载应用

Edge安装应用后&#xff0c;出现在开始菜单&#xff0c;不能卸载。

Cursor Rules 的核心定位与作用

Cursor Rules 是 AI 编程工具 Cursor IDE 中的核心功能&#xff0c;用于约束 AI 生成代码的行为&#xff0c;确保其符合项目规范、编码风格或特定技术需求。它本质上是一套持久化、可复用的指令集&#xff0c;会动态插入到 AI 模型的上下文提示中&#xff0c;指导其生成代码的逻…

多线程爬虫优化:快速爬取并写入CSV

在数据驱动的时代&#xff0c;爬虫技术已成为获取网络数据的重要手段。然而&#xff0c;随着数据量的不断增加&#xff0c;单线程爬虫的效率逐渐难以满足需求。多线程爬虫通过并行处理&#xff0c;能够显著提升爬取速度&#xff0c;同时将数据快速写入CSV文件&#xff0c;为后续…

Deepseek+墨刀,1min快速生成流程图!

想要了解快速了解产品逻辑&#xff0c;可以用ds墨刀快速生成流程图~ deepseek链接&#xff1a;https://www.deepseek.com/ 墨刀在线&#xff1a;https://modao.cc/brand 如何操作呢&#xff1f; 1.打开deepseek&#xff0c;输入以下咒语&#xff0c;让AI用Mermaid语法绘制流…

LangChain4j流式调用、消息注解与会话记忆

我们先用AiService工具类把调用ai大语言模型的代码写出来。因为AiService工具类中整合有记忆、Rag知识库、tools工具等&#xff0c;我们直接配置调用即可。 我用的是qwen-plus模型。 引入依赖&#xff1a; <dependency><groupId>dev.langchain4j</groupId>…