1,本文介绍

PSA是一种改进的自注意力机制,旨在提升模型的效率和准确性。传统的自注意力机制需要计算所有位置对之间的注意力,这会导致计算复杂度高和训练时间长。PSA通过引入极化因子来减少需要计算的注意力对的数量,从而降低计算负担。极化因子是一个向量,通过与每个位置的向量点积,确定哪些位置需要计算注意力。这种方法可以在保持模型准确度的前提下,显著减少计算量,从而提升自注意力机制的效率。

关于PSA 的详细介绍可以看论文:https://arxiv.org/pdf/2405.14458

本文将讲解如何将PSA 融合进yolov8

话不多说,上代码!

2, 将PSA融合进yolov8

2.1 步骤一

找到如下的目录'ultralytics/nn/modules',然后在这个目录下创建一个PSA.py文件,文件名字可以根据你自己的习惯起,然后将PSA的核心代码复制进去

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_特征工程

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_机器学习_02

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_机器学习_03

2.2 步骤二

在task.py导入我们的模块

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_YOLO_04

from .modules.PSAimportPSA

2.3 步骤三

在task.py的parse_model方法里面注册我们的模块

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_深度学习_05

到此注册成功,复制后面的yaml文件直接运行即可

yaml文件

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_YOLO_06

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_特征工程_07

关于PSA添加的位置可以自行调试,针对不同数据集位置不同,效果不同


机器学习算法AI大数据技术

 搜索公众号添加: datanlp

爆改YOLOv8|利用yolov10的PSA注意力机制改进yolov8-高效涨点_特征工程_08