ADA-YOLO:YOLOv8+注意力+Adaptive Head,mAP提升3%

生物医学图像分析中的目标检测和定位至关重要,尤其是在血液学领域,检测和识别血细胞对于诊断和治疗决策至关重要。虽然基于注意力的方法在各个领域中目标检测方面取得了显著的进展,但由于医学影像数据集的独特挑战,其在医学目标检测中的应用受到了限制。

为了解决这个问题,作者提出了一种名为ADA-YOLO的轻量级但有效的医学目标检测方法,该方法将注意力机制与YOLOv8架构相结合。作者提出的这种方法通过自适应头模块利用动态特征定位和并行回归进行计算机视觉任务。

作者在BCCD(血液细胞计数和检测)数据集上进行了实证实验,以评估ADA-YOLO的有效性。结果表明,在BCCD数据集上,与YOLOv8相比,ADA-YOLO在mAP(平均平均精确率)方面取得了更好的性能,而所需的资源比YOLOv8少3倍以上。这表明作者提出的这种方法是有效的。

此外,作者提出的这种方法具有轻量级的特点,使其适合在资源受限的环境中部署,例如移动设备或边缘计算系统,最终可能提高血液学领域的诊断和治疗结果。

1 Introduction

近年来,目标检测技术取得了显著的进展,使得可以实现对解剖结构、病变或异常的自动识别和定位。多年来,目标检测方法取得了重大的进步,这是由于大规模的带有标注的数据集的出现和深度学习技术的开发所驱动的。这些技术在改善医疗诊断和治疗结果方面展示出巨大的潜力。

在深度学习出现之前,医学影像中的目标检测传统方法依赖于手工特征和机器学习算法。这些方法,如模板匹配、边缘检测器、活性形状模型和变形模型,受到复杂结构、类间变异性以及有限泛化能力的影响。随着卷积神经网络(CNNs)的出现,目标检测发生了翻天覆地的变化,使得可以从原始图像数据端到端地学习特征表示,从而引领了基于深度学习的目标检测框架的发展,并取得了显著的性能改进。

基于区域的Faster R-CNN 是第一批成功的基于深度学习的目标检测框架之一,并在医学影像领域得到应用,用于检测肿瘤、器官和解剖标志。例如,Wang等人开发了 ChestX-ray8 数据库,这是一个用于弱监督分类和定位胸部疾病的胸片 X 光的大型数据集。他们的研究展示了深度学习算法准确检测肺结节的潜力,其准确率达到了令人印象的 97.3%。Gulshan 等人开发了一种深度学习算法,在检测糖尿病视网膜病变方面实现了 94% 的准确率。这展示了目标检测技术作为早期检测和诊断该条件的工具的潜力。其他潜在的应用已经得到一定程度的探索。单次方法如 YOLO 和 SSD 实现了实时推理速度,并已应用于病变检测、细胞检测和器官定位。

基于注意的方法,这些方法选择性地关注图像的相关区域以提高检测准确性,在医学目标检测中最近开始受到关注,利用特定领域的知识和规范来提高检测性能。迁移学习,涉及在大规模数据集(如 ImageNet)上预训练的模型上微调,在医学影像数据集上即使有限的数据训练也促进了各种医学应用中强大和准确的检测器的发展。

虽然目标检测技术在医学领域具有巨大的潜力,但也需要解决一些挑战。其中,一个挑战是训练深度学习算法需要大量带有标注的数据。收集和标注医学数据可能耗时且昂贵。其次,深度学习算法的可解释性仍然是一个问题,因为理解这些算法的决策过程对于医学专业人士来说可能是具有挑战性的。

简而言之,本文的主要贡献如下:

  • 提出了一个轻量级但强大的目标检测模型,称为ADA-YOLO,其有效性已经通过实证实验得到证明,该模型在 mAP(平均平均精确率)方面可以超过 YOLOv8,同时还能在精确度和召回率指标之间实现惊人的平衡;同时,在训练过程中,该模型具有内存效率,这展示了其在便携式场景和云边协作中的巨大潜力;
  • 深入研究了 YOLOv8 架构的复杂性,并设计了一个高效的目标检测组件,称为 自适应头(AH),它结合了 动态视觉特征定位(DVF)和 联合引导回归模块(JGR),使得边界框回归和分类预测可以并行计算,从而实现更精确的物体定位,进而提高检测精度,同时由于并行机制,实现了更好的计算效率;
  • 在广泛的实验中,证明了所提出的框架在多类图像分类方面具有卓越的性能,同时也展示了它在处理多尺度目标检测任务方面的能力,打破了 YOLOx 模型在面临小物体、重叠和类别不平衡现象时的技术瓶颈。

2 Related Work

2.1 R-CNN

基于区域的卷积神经网络,简称 R-CNNs,是深度学习模型中用于图像目标检测的一种流行类别。R-CNN 架构的基本思想是首先使用选择性搜索算法在图像中识别感兴趣区域(RoIs)。这些 RoIs 然后被输入到卷积神经网络(CNN)中以提取特征。提取的特征被用于分类物体并改进 RoIs。原始的 R-CNN 模型是由 [7] 提出的,并在当时的目标检测基准测试上实现了最先进的性能。然而,由于它需要为每个 RoI 运行 CNN,因此其计算复杂度成为了瓶颈,使其在实时应用中不切实际。为了提高效率和准确性,后续的一些工作已经解决了这个局限性。

快速 R-CNN [13] 通过添加 RoI 池化层改进了原始 R-CNN,这使得网络可以进行端到端的训练。这意味着分类和边界框回归可以一起学习,而不是像原始 R-CNN 那样分别学习。此外,快速 R-CNN 消除了将 RoIs 转换为固定大小的需求,这是原始 R-CNN 中的一个重要限制,导致特征表示不佳。

R-CNN 的另一个重大改进是在 2016 年提出的 Faster R-CNN。Faster R-CNN 引入了一个 Region Proposal Network(RPN),它可以直接从图像特征中学习目标 Proposal ,从而消除了单独选择搜索算法的需要。RPN 被训练成输出一组候选目标边界框,这些边界框作为后续的 CNN 的 RoIs。通过在 RPN 和 CNN 之间共享卷积特征,Faster R-CNN 实现了比以前 R-CNN 模型更快的计算和更高的准确率与实时性能。

除了 Fast R-CNN 和 Faster R-CNN,还有许多其他 R-CNN 变体已经创建出来,每个都有独特的贡献。例如,由 Kaiming He 等人于 2017 年提出的 Mask R-CNN,将 R-CNN 模型扩展到也可以执行实例分割。这涉及到为每个目标实例预测一个掩码,除了其边界框。因此,可以检测出复杂的形状和被遮挡的目标实例,这在仅使用边界框检测是做不到的。

级联 R-CNN 是一种使用级联 R-CNN 改进目标 Proposal 准确性的变体。级联 R-CNN 的第一阶段产生大量具有高召回率但低精确度的 Proposal 。这些 Proposal 随后通过后续阶段逐步改进,以逐渐提高召回率和精确度。

尽管 R-CNNs 取得了成功,但仍然存在一些局限性和挑战。其中一个局限性是它们的计算要求。虽然 Fast R-CNN 和 Faster R-CNN 一定程度上解决了这个局限性,但它们仍然需要大量的计算资源,使其在低功耗设备上的实时应用不适用。

为了克服这个挑战,研究行人正在开发更高效的 R-CNNs,例如 EfficientDet 和 YOLOv8,它们可以在有限的计算资源下实现高精度。另一个与小目标检测相关的挑战是,R-CNNs 往往难以检测小物体,这可能导致假阴性或不准确的边界框。解决这个问题需要像图像金字塔这样的方法,涉及在不同分辨率下缩放输入图像,或者将多尺度特征集成在一起,以更好地捕捉小物体。

2.2 Yolov8 Model

2.2.1 Model Architecture

YOLOv8 的工作原理可以概括如下:输入图像被缩放到  的大小, 并输入到 CNN 模型中。CNN 模型将输入图像分割成  的网格, 每个单元格负责检测其中心位于该单元格的靶标。CNN 的核心由多个卷积层、激活函数和全连接层组成。卷积层用于对输入图像执行卷积操作以提取特征。激活函数引入非线性因素, 使神经网络更好地学习和识别复杂特征。全连接层用于将卷积层与 YOLO 的输出层连接, 以最终识别目标物体。

Backbone:YOLOv8 中的 Backbone 网络充当特征提取器,通常使用卷积神经网络(CNN)架构,如 Darknet、CSPDarknet 或 CSPDarknet-tiny 等。它的主要功能是从输入图像中提取特征,这些特征用于后续的任务,如目标检测。

通过一系列卷积和池化操作, Backbone 网络逐步减少特征图的空间维度,同时增加这些特征图的深度。这个过程旨在捕捉不同层次的特征,有效允许神经网络捕捉和表示输入图像中不同复杂性和尺度的特征。

Neck:颈是一个可选组件,用于进一步处理 Backbone 网络提取的特征图。其主要目的是集成不同层次的特征信息,以提高目标检测的性能。通常,颈包括各种操作,如卷积、上采样和下采样,旨在合并具有不同分辨率的特征图。这种集成是为了提高网络捕捉目标物体上下文和详细信息的能力。

Head:在目标检测任务中,头是一个关键组件,负责生成边界框、分类概率和目标属性。头通常由卷积层和全连接层组成,用于从特征图中提取与检测到的物体位置和分类标签相关的信息。生成的边界框可能需要经过后处理步骤,如非极大值抑制,以获得最终的目标检测结果。

2.2.2 Prediction

对于每个单元格,YOLO预测边界框及其置信度分数。这些预测包括边界框的预测中心坐标(x, y)、预测的宽度和高度(w, h)以及置信度(置信度分数)。其中,预测的中心坐标是相对于单元格上左角的上标值,单位是细胞大小与图像大小的比值。

预测的宽度和高度是归一化的比率,以整个图像的宽度和高度(即w和h分别除以图像w和h,使得最终的w和h落在0到1的范围内)。YOLO 将目标检测视为回归问题,允许卷积神经网络结构直接从输入图像中预测边界框和分类概率。

2.2.3 Loss Function

为了更好地表述类别不平衡的情况,将DFL集成到原始 YOLOv8 框架中。DFL 是一种增强版的 Focal Loss,旨在解决机器学习任务中的类别不平衡问题,尤其是在目标检测和分类的背景下。DFL 旨在通过根据样本的类别为其分配不同的权重并提供一个可调整的超参数的有效方法来处理不平衡的数据集。

DFL 的数学表达式如下:

在这个等式中,  p_{t}表示模型预测目标为正样本的概率,  \alpha _{t}表示类别t的权重,\gamma是可调整的超参数。使用 \alpha _{t}作为加权因子有助于缓解类别不平衡的影响, 通过为代表性较弱的类别分配更高的权重。

为了解决样本不平衡的问题, \alpha _{t}设置为样本数的倒数, 即

在这里,\omega _{i}表示第i个样本的权重,n是总的样本数量,\omega _{t}是类别t的权重。

此外, DFL 公式中的\gamma参数调整了容易分类样本和难以分类样本的权重。当\gamma > 0时,容易分类样本的权重降低, 而难以分类样本的权重增加。

在实践中, DFL 可以在与其他损失函数 (如交叉熵损失) 结合使用时增强机器学习模型的性能, 尤其是在类别不平衡的场景中, 如计算机视觉任务中的目标检测。

YOLO 算法的损失函数主要包括两部分:分类损失和定位损失。YOLO 还引入了一个预测目标存在的置信度分数, 并将其对应的置信度损失添加到损失函数中。具体而言, YOLO 的损失函数可以表示为:

2.3 Ensemble learning

集成学习通过结合多个单个模型的预测来提高模型的泛化性能,这些模型可以是同质的或异质的,并且可以分别使用不同的数据集进行训练。集成学习的优点在于,它可以利用每个模型的优势,以实现更好的预测准确性。此外,当多个模型集成在一起时,可以应用某些策略,如投票或加权求和,来进一步增强集成模型的性能。在深度学习和集成学习相结合之前,传统集成学习模型主要使用了决策树、支持向量机(SVMs)、k-近邻方法(k-NN)等。然而,这些模型存在一定的局限性,如无法表达复杂的非线性关系或有效地处理大规模数据集,导致在实际应用中性能受限。

随着深度学习的发展,人们开始探索将深度学习模型与集成学习相结合,希望通过深度学习模型良好的特征学习和拟合能力来提高集成学习的性能。这样的深度集成学习模型可以更好地处理复杂的非线性关系,表达复杂的模式,并有效地处理大规模数据集。

  • 基于模型集成的方法。Bagging 和 Boosting 方法涉及训练多个模型并组合它们。Bagging 通过引入随机性来减少过拟合,而 Boosting 则调整权重以提高鲁棒性;Stacking 和基于负相关的方法:这两种方法都涉及将多个基础模型合并为一个元模型。Stacking 训练多个基础模型并使用元模型集成输出,而基于负相关的方法则引入具有负相关性的模型以降低方差并提高泛化性。
  • 基于模型复杂度的方法。显式集成神经网络训练多个神经网络模型并显式地组合它们的输出。这创建了更强大的元模型;隐式集成神经网络涉及训练单个模型,并通过微调其参数创建多个“子模型”,然后将它们的输出组合在一起。这种方法也可以提高泛化性。
  • 基于训练数据的方法。基于袋ging和boosting的方法指的是处理训练数据的方法。Bagging 引入了重采样技术来随机抽样训练数据,从而减少过拟合。Boosting 调整权重以使每个模型专注于前一个模型中具有更高错误率的样本,以更好地泛化;Stacking 和基于负相关的方法采用了多种类型的模型。Stacking 引入了多个基础模型以形成元模型,而另一个方法则创建了具有负相关性的模型以降低方差。
  • 基于算法方面的方法。Boosting 和 Stacking 在算法层面上相似。Boosting 通过加权技术优化算法性能,而 Stacking 通过将多个算法结合到一个新颖的算法结构中,整合不同的算法优势。基于神经网络的方法同时训练和调整神经网络模型,包括显式和隐式技术。如前所述,显式技术涉及直接训练多个神经网络模型并组合它们,而隐式技术涉及微调单个神经网络模型的参数并在此基础上构建。

为了充分发挥集成学习的优势,作者主要采用堆叠方法,并在第4节中进行实验。

3 Methodology

3.1 YOLOv8 Object Detection Algorithm

图3显示了 YOLOv8 的详细架构。YOLOv8 采用了与前一个模型 YOLOv5 类似的 Backbone 网络,但在 CSPLayer(现在称为 C2f 模块)方面取得了显著改进。这个模块的主要目标是通过融合高层次特征和上下文信息来提高检测精度。YOLOv8 框架使用单个神经网络同时预测边界框和分类概率,简化了目标检测过程。与基于 Anchor 点的机制和特征金字塔网络相结合,YOLOv8 特别擅长在不同尺度下检测目标。

YOLOv8 在医学目标检测中的工作流程包括几个关键步骤。首先,将输入的医学图像进行预处理,以确保与 YOLOv8 模型兼容。然后,图像经过神经网络,其中特征提取和目标检测以统一的方式进行。YOLOv8 将输入图像分成网格,并分配每个网格单元的边界框,预测目标类别和置信度分数。值得注意的是,使用多个 Anchor 框增强了模型准确定位和分类不同大小物体的能力。

后续处理步骤,例如非极大值抑制,可以进一步优化输出,确保冗余检测被消除,并保留最准确的边界框。

在医学目标检测的背景下,YOLOv8 具有几个优势。其实时处理能力使其适用于需要及时检测的应用,例如在医学图像中识别异常。此外,模型处理多类别检测的能力和在不同成像条件下的鲁棒性使其在具有复杂视觉数据的医学场景中具有有效性。

然而,将 YOLOv8 适应于医学影像的细微之处需要考虑特定的挑战,例如需要专业数据集和微调以适应 YOLOv8。此外,计算机视觉和医学专家之间的持续研究和合作对于进一步优化 YOLOv8 的性能至关重要。

3.2 Adaptive Head

作者提出了一种基于 YOLOv8 的有效架构,该架构通过一个可适应的 Head 进行微调,该 Head 针对下游任务进行自适应。在标准的计算机视觉任务中, Head 将问题建模为基于 Anchor 点的预测。

具体而言,检测模型使用 Anchor 框,这些 Anchor 框是不同大小和长宽比预定义的边界框。通过预测这些 Anchor 框的偏移量和缩放因子, Head 能够准确地定位各种大小和形状的物体。在实际场景中,这种特性由于输入尺寸的多样性和随机性,可能比简单的检测方法更具有优势。例如,当输入尺寸多样且随机时,非自适应的检测方法可能需要数十次图像预处理或超参数调整才能适应输入。

相反,作者的方法可以自动地根据输入形状动态生成 Anchor 框,称为动态视觉特征定位。这使得模型能够适应不同的输入分辨率和长宽比,使其在检测不同场景下的物体时更加通用和鲁棒。与 [27] 不同,作者删除了激活层,以保留更多的信息在中间张量中,以更好地完全捕捉传递语义,同时提高了一定的计算效率。

同样重要的是,由于预定义的边界框属性,检测问题被简化为一个简单的回归问题,即关于尺度和偏移量的回归。动态 Anchor 框设置使得模型能够挖掘图像中存在的细粒度信息。该架构也利用动态视觉特征定位(DVF)模块来提高训练稳定性和收敛速度,如图所示。DVF模块对预测的边界框坐标进行自适应正则化,使模型能够学习为不同物体大小适当调整预测框的大小。

联合引导回归模块(JGRM)是同时计算分类和边界框任务中的联合分数的关键组件。作者观察到不同目标目标之间的性能(或分数)存在很大差异,这导致了归纳偏差现象,原因是分类预测和边界框回归的分离。这可能导致在复杂场景中检测器的鲁棒性降低。例如,给定一个具有不同类型和不同大小的细胞的图像,模型可能会首先检测边界框,然后将分类预测结果融合,在此过程中产生了间隙。

简而言之,在复杂检测环境中分别训练边界框回归和分类预测是不可能的。受到 [28] 的启发,作者采用分布聚焦损失来优化目标检测中存在的回归任务。它是一种基于边界框和类别预测分别训练的经典交叉熵函数的改进版本。

正如前面提到的,动态视觉特征定位(DVF)旨在为图像特征提供更精确的近似值,这个想法类似于 [29],设计了一个复杂的注意力机制来增强检测器的特征表示,考虑到不同的特征空间位置、任务等。在处理一个属于实值空间、具有维度 L、S 和 C 的特征张量 F 的上下文中,作者考虑应用自注意力机制。这些机制旨在通过关注数据的有关方面来增强特征表示。

特征张量F\in \mathbb{R}^{L\times S\times C}经历一个自注意力过程。这可以表示为F和其注意力变换版本 (由注意力矩阵A乘以F得到) 的乘积:

在这里,\pi \left ( \cdot \right )表示注意力函数。

为了管理计算复杂性, 注意力机制被划分为LSC三个维度。这种按顺序应用注意力的表达式如下:

每个函数\pi _{L}\left ( \cdot \right )\pi _{S}\left ( \cdot \right )\pi _{C}\left ( \cdot \right )分别关注各自的维度。

尺度感知的注意力机制\pi _{L}\left ( \cdot \right )会将不同尺度的特征融合在一起。这种融合可以描述为:

其中f\left ( \cdot \right )是由一个1\times 1卷积层近似的,\sigma \left ( x \right )是一个硬式 sigmoid 函数。

空间感知的注意力 空间感知的注意力\pi _{S}\left ( \cdot \right )聚合特征时, 专注于判别性区域。这种聚合可以表示为:

其中K表示稀疏采样位置的数量。

任务感知的注意力最后,任务感知的注意力\pi _{C}\left ( \cdot \right )根据不同的任务动态地调整特征。这是通过逐通道调整实现的:

其中F_{c}是第c通道的特征切片。超函数\theta \left ( \cdot \right )用于控制激活阈值,它是一个向量\left [ \alpha _{1},\alpha _{2},\beta _{1},\beta _{2} \right ]^{T}。这个函数类似于参考文献 [3] 中所采用的方法, 从全局平均池化LS维度开始, 压缩数据维度。

接下来是一个由两个全连接层和归一化层组成的序列, 最后应用一个位移的sigmoid函数将输出值缩放到\left [ -1,1 \right ]的范围内。

4 Experiments

4.1 Dataset Description

BCCD 数据集是一个全面且有益的图像集合,包含 12,500 张高分辨率显微镜图像,这些图像是由专业血液学家 captured 的。该数据集提供了血细胞形态的多样化范围,包括正常和异常细胞,并捕获了各种形状、大小和染色特征。图像代表了四种主要类型的血细胞:红细胞(RBCs)、白细胞(WBCs)、血小板,以及这些细胞的组合。每个图像都有精确的边界框标注,指示每个细胞的类型和位置。

与此同时,当适用时,相应的元数据,如细胞计数、分布和诊断信息等,可以提供对数据的更全面分析。标注作为训练和评估算法的真实标签,确保了准确的标签。研究行人和从业者可以使用这个数据集进行各种应用,包括细胞计数、细胞分类和异常检测。它作为评估图像处理算法和针对血细胞分析的机器学习技术的性能的基准。

因此,BCCD 数据集在血液学领域的医学诊断、研究和教育方面具有潜在的先进性。它使得可以开发出能够协助医疗保健专业行人快速、准确地分析血细胞的自动化系统,这可以引领临床决策的改善和患者护理的提高。

探索数据集可以对模型输入有一个概述,这涉及到观察图像的代表样本并分析元数据,例如细胞类型和异常的分布。为了说明类别的分布,作者在图 3 中绘制了一个直方图。在图中,显然 'RBC' 类占最大比例,数量约为 2500,其次是 'WBC' 类和 'Platelets' 类。

4.2 Image Preprocessing

在分析数据集之前,对图像进行预处理是非常重要的步骤。这包括将图像缩放到确保图像尺寸一致,归一化像素值以考虑光线和对比度的变化,以及根据实验目标考虑其他预处理技术,如去噪或直方图均衡化。预处理是必要的,以提高数据的质量并减少噪声,以便进行准确的分析。

通常,预处理是通过以下三种方式进行的:

  • 几何变换:这涉及诸如旋转、缩放、裁剪和镜像等操作,用于在不同尺度或角度下改变图像的大小和方向,用于训练和测试。
  • 滤波和降噪:应用各种滤波和降噪算法,如高斯滤波和中值滤波,以减少噪声并提高图像质量。
  • 颜色调整和对比增强:这包括调整图像的亮度、对比度、饱和度和色调,以增强其视觉吸引力和可识别性。

4.3 Results

实验结果如下:与 Faster R-CNN(快速 R-CNN)、SSD(快速 SSD)、YOLOv5(YOLO v5)、YOLOv7(YOLO v7)和 YOLOv8(YOLO v8)等基准相比,提出的 ADA-YOLO 方法。

RT-DETR(实时检测 Transformer)是一种基于 Transformer 架构和端到端学习的新颖目标检测方法,与基于区域 Proposal 的传统目标检测方法(如 Faster R-cnn)不同。RT-DETR 试图通过完全消除手动设计组件(如 Anchor 框和非极大值抑制)来使目标检测的训练和推理更加简单和高效。RT-DETR 使用自注意力机制全局编码一组特征向量,并引入一个特殊的"类别嵌入"向量来表示没有目标的地点。

在训练过程中,RT-DETR 最小化预测框与实际框之间的损失,同时尝试将"无目标"向量匹配到实际无目标位置。这种端到端学习方法使得 RT-DETR 避免了传统目标检测方法中需要手动调整的超参数,并易于应用于具有不同大小和数量的目标检测任务。

ADA-YOLO 模型针对医学影像中的多目标检测,解决了物体遮挡或截断等在医学影像中常见的挑战性问题。如图4所示,提出的检测方法可以成功检测到任何大小的红细胞缺失,与基准相比是一个很大的改进。ADA-YOLO 在所有类别中具有0.918的召回率,优于基准。

结果展示 ADA-YOLO 在医学目标检测中揭示更多阳性实例的能力。通过更准确地识别出更高的真实阳性病例比例,即使存在遮挡,作者的模型也能显著提高疾病检测,减少诊断错误,并可以转化为更早、更准确的诊断。

 与此同时,除了卓越的定量性能外,ADA-YOLO在内存使用方面也非常高效。为了证明这一点,主要实验已经进行,并显示 YOLOv8 模型预测所有样本需要26.9 MB的内存和35.1 GFLOPs的计算能力,而作者的方法只需要8.7MB的内存,比YOLOv8节省了3倍的内存,并仅计算了9.4 GFLOPs。

作者的模型在内存使用方面的出色效率是精心设计和优化的结果。通过有策略地实现紧凑而强大的架构特征,作者可以预期该模型在便携式医疗设备、边缘计算环境和资源受限的医疗设置中的实际应用,最终提高高级医学影像分析的可用性和负担能力。

5 Performances on Other Datasets

为了进一步证明ADA-YOLO的性能,作者在 MAR20 数据集上进行了地面实验,并将在图6中可视化结果。首先,作者按照第4.1节中提到的类似Pipeline预处理输入图像,然后进行模型训练,最后在测试数据集上进行推理。

MAR20目标检测数据集是一个综合的带有标注图像集合,旨在促进目标检测算法的训练和评估。它涵盖了各种实际场景,包括城市街道景观、自然景观和室内环境,确保了数据集适用于各种实际设置。该数据集中的每个图像都带有多个物体类别的精确位置和边界框信息,如行人、车辆和交通标志。

这种详细的标注为算法训练和评估提供了有价值的支持。该数据集的独特之处在于,它包括了真实场景,增强了数据集的实用性,使开发行人可以评估算法的鲁棒性和泛化能力。MAR20数据集适合训练和评估各种目标检测算法。

与YOLOv8 相比,作者的模型由于其经济内存消耗和在大数据集上的同等性能而具有可适应性。在本实验中,作者可以观察到ADA-YOLO在 MAR20 数据集上具有竞争力的结果,所有类别的精度达到 85%,在某些类别(如 A12)的预测准确率甚至可以达到99.4%。从结果中,作者提出的方法的优点突出:模型参数较少,内存空间较小,但作者的模型可以达到与 Baseline 相同的性能。

值得注意的是,该实验只包含一组超参数,在模型微调后,作者认为其性能可以更好,最终可以大大超过Naive方法,如图7(a)所示。如第 2.2.3 节所述,总体损失分为三个组成部分:边界框损失、分布对焦损失和分类损失。从图中可以看出,随着训练周期增加,模型损失和作者的模型(橙色线)损失都持续减小并收敛到某个位置,而作者的模型(橙色线)所需的参数较少,内存使用较少。这种现象强烈地表明了新颖架构的积极影响。

从图7(b)可以看出,作者将评估指标设置为一个复杂的组合, 包括P精确度、R召回率)、mAP@50mAP@50:95。通过这个图表, 随着训练周期增加, 两个模型之间的性能差距变窄, 这意味着在本实验设置下, 提出的模型逐渐平稳地收玫到 Naive 方法。在训练的后半部分, ADA-YOLO 在所有四个指标上都超过了基准模型, 展示了其有效性。通过进一步的参数优化策略或使用特定领域的知识, 作者的模型可以在相应的指标上获得更好的泛化能力和性能。

6 Conclusions and Future Work

在本文中,作者提出了一个内存高效的 ADA-YOLO 模型,该模型利用新颖的架构和训练策略来增强医学图像中多目标检测的鲁棒性。通过在各种数据集上的实验,证明了 ADA-YOLO 在处理医学图像中的遮挡相关挑战方面具有优越性能。模型在准确局部化和分类多个目标方面,即使在遮挡条件下也表现出卓越性能,因此,由于其创新的 Adaptive Head 设计,它在计算机辅助诊断检测方面具有广阔的未来。

然而,这项工作也有一些局限性:首先,大数据集仍然需要消耗大量的训练和推理时间,这可能取决于实际环境中的硬件;其次,模型可解释性可能是一个潜在的副作用。通过智能利用深度机制和领域知识,如多模型嵌入,模型可以变得更加可靠和可解释,为作者的未来工作铺平道路。

7 Conclusions and Future Work

在本文中,作者提出了一种内存高效的ADA-YOLO模型,该模型利用新颖的架构和训练策略来增强医学图像中多目标检测的鲁棒性。通过在各种数据集上的实验,证明了ADA-YOLO在处理医学图像中的遮挡相关挑战方面具有优越性能。模型在准确局部化和分类多个目标方面,即使在遮挡条件下也表现出卓越性能,因此,由于其创新的Adaptive Head设计,它在计算机辅助诊断检测方面具有广阔的未来。

然而,这项工作也有一些局限性:首先,大数据集仍然需要消耗大量的训练和推理时间,这可能取决于实际环境中的硬件;其次,模型可解释性可能是一个潜在的副作用。通过智能利用深度机制和领域知识,如多模型嵌入,模型可以变得更加可靠和可解释,为作者的未来工作铺平道路。

参考

ADA-YOLO: DYNAMIC FUSION OF YOLOV8 AND ADAPTIVE HEADS FOR PRECISE IMAGE DETECTION AND DIAGNOSIS

 

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

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

相关文章

cad的模型怎么打散导入3d---模大狮模型网

将CAD中的模型打散并导入3D建模软件,需要以下步骤: 将CAD中的模型进行分组或分层:在CAD中,将模型按照不同的组或层进行分组或分层。这样可以方便地控制每个部分的显示和隐藏,在导入3D建模软件后,也可以更方…

(超详细)2-YOLOV5改进-添加SimAM注意力机制

1、在yolov5/models下面新建一个SimAM.py文件,在里面放入下面的代码 代码如下: import torch import torch.nn as nnclass SimAM(torch.nn.Module):def __init__(self, e_lambda1e-4):super(SimAM, self).__init__()self.activaton nn.Sigmoid()self…

[开发语言][c++]:Static关键字和全局变量

Static关键字和全局变量 1. 生命周期、作用域和初始化时机2. 全局变量3. Static 关键字3.1 面向过程3.1.1 静态全局变量3.1.2 静态局部变量(单例中会使用)3.1.3 静态函数 3.2 面向对象3.2.1 类内静态成员变量3.2.2 类内静态成员函数 Reference 写在前面&…

使用@Slf4j后引入log,idea标红

引入Slf4j注解 idea标红Cannot resolve symbol ‘log’ 引入Lombok插件 如果在Marketplace查不到时,不妨关闭菜单再打开试下

概率论与数理统计————古典概型、几何概型和条件概率

一、古典概型 特点 (1)有限性:试验S的样本空间的有限集合 (2) 等可能性:每个样本点发生的概率是相等的 公式:P(A) A为随机事件的样本点数;S是样本…

5.3 Verilog 带参数例化

5.3 Verilog 带参数例化 分类 Verilog 教程 关键词: defparam,参数,例化,ram 当一个模块被另一个模块引用例化时,高层模块可以对低层模块的参数值进行改写。这样就允许在编译时将不同的参数传递给多个相同名字的模块…

STC8H8K蓝牙智能巡线小车——1. 环境搭建(基于RTX51操作系统)

1. 基本介绍 开发环境准备:Keil uVision5 烧录软件:STC-ISP(V6.92A) 芯片: STC8H8K64U-45I-LQFP64 芯片引脚: 2.创建项目 打开Keil,点击【Project】,选择【new uVersion proje…

网页设计(八)HTML5基础与CSS3应用

一、当当网企业用户注册页面设计 当当网企业用户注册页面 改版后当当网企业用户注册页面 <!-- prj_8_1.html --> <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>当当网企业用户注册页面设计</title><s…

LLM漫谈(三)| 使用Chainlit和LangChain构建文档问答的LLM应用程序

一、Chainlit介绍 Chainlit是一个开源Python包&#xff0c;旨在彻底改变构建和共享语言模型&#xff08;LM&#xff09;应用程序的方式。Chainlit可以创建用户界面&#xff08;UI&#xff09;&#xff0c;类似于由OpenAI开发的ChatGPT用户界面&#xff0c;Chainlit可以开发类似…

Kafka消费流程

Kafka消费流程 消息是如何被消费者消费掉的。其中最核心的有以下内容。 1、多线程安全问题 2、群组协调 3、分区再均衡 1.多线程安全问题 当多个线程访问某个类时&#xff0c;这个类始终都能表现出正确的行为&#xff0c;那么就称这个类是线程安全的。 对于线程安全&…

CSS3渐变属性详解

渐变属性 线性渐变 概念&#xff1a;线性渐变&#xff0c;指的是在一条直线上进行的渐变。在线性渐变过程中&#xff0c;起始颜色会沿着一条直线按顺序过渡到结束颜色 语法&#xff1a; background:linear-gradient(渐变角度&#xff0c;开始颜色&#xff0c;结束颜色);渐变…

Vue 如何把computed里的逻辑提取出来

借用一下百度的ai 项目使用&#xff1a; vue 文件引入 <sidebar-itemv-for"route in routes":key"route.menuCode":item"route":base-path"route.path"click"onColor"/>import { handleroutes } from "./handle…

三种引入CSS的方式

文章目录 CSS基础知识概述CSS的注释CSS的格式 三种引入CSS的方式内嵌式外链式行内式优先级 CSS基础知识 概述 Cascading Style Sheet 层叠样式表 前端三大基础之一(Html结构 CSS样式 JS动作) 最早由网景公司&#xff08;Netscape&#xff09;提出&#xff0c;在1996年受到w…

k8s的配置资源管理

1、configmap*&#xff1a;1.2加入新的特征&#xff08;重点&#xff09; 2、secret&#xff1a;保存密码&#xff0c;token&#xff0c;保存敏感的k8s资源&#xff08;保存加密的信息&#xff09; &#xff08;1&#xff09;敏感的k8s资源&#xff0c;这类数据可以直接存放在…

计算机毕业设计 基于Java的手机销售网站的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

《手把手教你》系列技巧篇(十)-java+ selenium自动化测试-元素定位大法之By class name(详细教程)

1.简介 按宏哥计划&#xff0c;本文继续介绍WebDriver关于元素定位大法&#xff0c;这篇介绍By ClassName。看到ID&#xff0c;NAME这些方法的讲解&#xff0c;小伙伴们和童鞋们应该知道&#xff0c;要做好Web自动化测试&#xff0c;最好是需要了解一些前端的基本知识。有了前端…

Android Studio 如何设置中文

Android Studio 是一个为 Adndroid 平台开发程序的集成开发环境&#xff08;IDE&#xff09;。 如何安装中文插件 在 Jetbrains 家族的插件市场上&#xff0c;是能够搜到语言包插件的&#xff0c;正常情况下安装之后只需要重启即可享受中文界面&#xff0c;可AndroidStudio 中…

React Store及store持久化的使用

1.安装 npm insatll react-redux npm install reduxjs/toolkit npm install redux-persist2. 使用React Toolkit创建counterStore并配置持久化 store/modules/counterStore.ts&#xff1a; import { createSlice } from reduxjs/toolkit// 定义状态类型 interface Action {…

【设计模式-06】Observer观察者模式

简要说明 事件处理模型 场景示例&#xff1a;小朋友睡醒了哭&#xff0c;饿&#xff01; 一、v1版本(披着面向对象的外衣的面向过程) /*** description: 观察者模式-v1版本(披着面向对象的外衣的面向过程)* author: flygo* time: 2022/7/18 16:57*/ public class ObserverMain…

存储的基本架构

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、存储的需求背景二、自下而上存储架构总结 一、存储的需求背景 1、人的身份信息需要存储 这种信息可以用关系型数据库&#xff0c;例如mysql&#xff0c;那种表…