比non-local更好,基于Paddle2.0的GCNet和BAT

本项目使用Paddle2.0复现了改进的non-local网络架构GCNet和BAT,并在动物分类数据集上进行了训练和验证。同时还比较了与传统non-local网络的训练和验证效果区别

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

比non-local更好,基于paddle2.0的gcnet和bat - 创想鸟

项目背景

Non-local是2018年CVPR上的一篇论文Non-local neural networks中提出的一种获取远距离注意力的网络架构,由于non-local是在时域和空域两个维度进行计算的,作者将其用在视频分类中。如果只是在空域进行计算,就可以将其用于图片分类了,这也是本项目的实验任务。

GCNet(Global Context Networks)最初是2019年arxiv上的一篇论文GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond中提出的一种结合SE注意力模块架构和Non local算法原理对non-local进行改进的网络结构。GCNet还获得了ICCV2019 Neural Architects Workshop的最佳论文奖并且最近发表在了期刊TPAMI上。

BAT(Bilinear Attentional Transforms)是2020年CVPR上的一篇论文Non-Local Neural Networks with Grouped Bilinear Attentional Transforms中提出的一种针对non-local网络改进的网络结构。

Non-local可以建模时间和空间维度上的关联性;GCNet结合了基于通道的注意力机制SE和能够捕获全局空间信息的Non-local网络;BAT是在传统的non-local模块上改进的可进行变形操作的新型模块,并且在图片分类和视频分类的性能上已经超过了传统的non-local网络结构。本项目复现GCNet和BAT并和non-local网络进行动物图像分类的实验比较。

项目简介

本项目首次使用paddle2.0复现了non-local网络的改进网络GCNet和BAT,并在动物分类数据集上进行了训练和验证。

动物数据集的划分是按8:2的的划分方法进行训练集与验证集划分的。

GCNet模型简介

一张图片中各个像素点间的关系,特别是长距离像素点间的关系对各种视觉任务非常重要。这种关系可以通过传统的堆叠卷积层的方法获得,但是往往效率低下。Non-local网络通过自注意力机制解决了这个问题。但是对于图片来说,作者通过实验发现,每个像素点的全局特征图基本都是一样的,如图1所示,其中红点是要计算的目标点。基于此,就没有必要计算每个点的全局特征图了。所以,作者就提出了一种比non-local的方法效果好但是计算量小的多的简化的注意力机制模块。

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图1 non-local方法计算的红色点的注意力特征图

Non-local的计算方法有多种,包括高斯、嵌入式高斯、点积和拼接。GCNet采用了嵌入式高斯的方法,这也是通常使用的方法。GCNet模块的实现细节示意图如图2所示。其中,图2中的a表示GCNet模块的流程图,图2中的b表示简化版的non-local模块示意图,图2中的c表示GCNet模块示意图。可以看出,GCNet模块是简化版的non-local和SE模块机制的结合。

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图2 GCNet模块实现细节示意图

具体实现可以fork后见代码细节。

论文原文:Global Context Networks

参考代码:

PyTorch的实现

BAT模型简介

既然是对non-local网络进行改进,我们先来看下non-local的网络架构是什么样的。如图3所示。当然,图3所示的是在时间和空间两个维度上的non-local架构,和纯空间上的没有太大区别,只需要把T去掉然后将三维卷积换成二维卷积即可。

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图3 Non-local网络架构示意图

跟non-local网络相比,BAT可以对图片的局部信息进行各种变换,如缩放、平移、旋转等。如图4所示。图4的a显示的是传统non-local网络的示意图,图4的b显示的是BAT模块的示意图。

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图4 BAT和non-local的比较示意图

BAT的实现细节如图5所示。

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图5 BAT实现细节示意图

具体实现可以fork后见代码细节。

non-local论文原文:Non-local Neural Networks

BAT论文原文:Non-Local Neural Networks with Grouped Bilinear Attentional Transforms

参考代码:

PyTorch的实现

数据集介绍

本项目使用10分类的动物数据集进行训练和验证.

该十分类动物数据集,包含dog,horse,elephant,butterfly,chicken,cat,cow,sheep,spider和squirrel。每一分类的图片数量为2k-5k。

文件结构

文件名或文件夹名 功能

non_local.pynon_local和BAT模块定义文件context_block.pyGCNet模块定义文件nlnet.py网络定义文件animal_dataset.py数据集定义文件config.py配置文件train_val_split.py训练集验证集划分文件train.py模型训练eval.py模型验证

解压数据集

In [ ]

!unzip -q data/data70196/animals.zip -d work/dataset

查看图片

In [ ]

import osimport randomfrom matplotlib import pyplot as pltfrom PIL import Imageimgs = []paths = os.listdir('work/dataset')for path in paths:       img_path = os.path.join('work/dataset', path)    if os.path.isdir(img_path):        img_paths = os.listdir(img_path)        img = Image.open(os.path.join(img_path, random.choice(img_paths)))        imgs.append((img, path))f, ax = plt.subplots(3, 3, figsize=(12,12))for i, img in enumerate(imgs[:9]):    ax[i//3, i%3].imshow(img[0])    ax[i//3, i%3].axis('off')    ax[i//3, i%3].set_title('label: %s' % img[1])plt.show()

划分训练集和验证集

In [ ]

!python code/train_val_split.py
finished train val split!

使用non-local网络进行动物分类的训练并验证

训练

In [1]

!python code/train.py --net 'nl'

验证

In [20]

!python code/eval.py --net 'nl'
W0303 17:08:47.355185  7686 device_context.cc:362] Please NOTE: device: 0, GPU Compute Capability: 7.0, Driver API Version: 10.1, Runtime API Version: 10.1W0303 17:08:47.359616  7686 device_context.cc:372] device: 0, cuDNN Version: 7.6.add nl after block 1 with 512 planes.add nl after block 3 with 512 planes.add nl after block 1 with 1024 planes.add nl after block 3 with 1024 planes.add nl after block 5 with 1024 planes.Eval begin...The loss value printed in the log is the current batch, and the metric is the average value of previous step.step 103/103 [==============================] - loss: 1.0642 - acc: 0.7976 - 228ms/step         Eval samples: 3276{'loss': [1.0642079], 'acc': 0.7976190476190477}

图示训练验证过程

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图6. 使用non-local的训练验证图示

使用GCNet网络进行动物分类的训练并验证

训练

In [2]

!python code/train.py --net 'gc'

验证

In [22]

!python code/eval.py --net 'gc'
W0303 17:13:22.231034  8017 device_context.cc:362] Please NOTE: device: 0, GPU Compute Capability: 7.0, Driver API Version: 10.1, Runtime API Version: 10.1W0303 17:13:22.235092  8017 device_context.cc:372] device: 0, cuDNN Version: 7.6.add gc after block 1 with 512 planes.add gc after block 3 with 512 planes.add gc after block 1 with 1024 planes.add gc after block 3 with 1024 planes.add gc after block 5 with 1024 planes.Eval begin...The loss value printed in the log is the current batch, and the metric is the average value of previous step.step 103/103 [==============================] - loss: 0.6511 - acc: 0.8040 - 217ms/step         Eval samples: 3276{'loss': [0.6511191], 'acc': 0.8040293040293041}

图示训练验证过程

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图7. 使用GCNet的训练验证图示

使用BAT网络进行动物分类的训练并验证

训练

In [ ]

!python code/train.py --net 'bat'

验证

In [21]

!python code/eval.py --net 'bat'
W0303 17:11:59.910156  7866 device_context.cc:362] Please NOTE: device: 0, GPU Compute Capability: 7.0, Driver API Version: 10.1, Runtime API Version: 10.1W0303 17:11:59.914266  7866 device_context.cc:372] device: 0, cuDNN Version: 7.6.add bat after block 1 with 512 planes.add bat after block 3 with 512 planes.add bat after block 1 with 1024 planes.add bat after block 3 with 1024 planes.add bat after block 5 with 1024 planes.Eval begin...The loss value printed in the log is the current batch, and the metric is the average value of previous step.step 103/103 [==============================] - loss: 0.7981 - acc: 0.8159 - 236ms/step         Eval samples: 3276{'loss': [0.7981112], 'acc': 0.8159340659340659}

图示训练验证过程

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图8. 使用BAT的训练验证图示

比较

在本次项目中,可以看出,BAT表现最好,GCNet其次,这两个针对non-local的改进型网络在性能上都超过了原始的non-local网络。

比non-local更好,基于Paddle2.0的GCNet和BAT - 创想鸟

图9. Non-local、GCNet和BAT的验证比较图示

以上就是比non-local更好,基于Paddle2.0的GCNet和BAT的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/63386.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月11日 11:45:02
下一篇 2025年11月11日 12:19:38

相关推荐

  • 如何计算清算价格和破产价格?

    清算价格是触发强制平仓的阈值,破产价格是账户权益归零的极端价格点,且破产价格更接近当前市价;1. 多头清算价=开仓价×(1-维持保证金率/杠杆倍数),空头则用加法;2. 破产价=开仓价×(1-初始保证金率×净值系数);3. 实际操作中需考虑总权益、手续费和流动性影响;4. 案例中10倍杠杆多头仓位下…

    2025年12月11日
    000
  • 什么是GUSD稳定币?它的合规性如何实现?与其他稳定币相比有何特点?

    1、GUSD是由Gemini发行的与美元1:1锚定的ERC-20稳定币,每枚均有等额美元储备支持并存于受监管银行;2、获取GUSD主要通过Gemini平台,也可在Gate.io 、Binance 等第三方交易所进行交易,可用于交易及部分DeFi应用;3、GUSD的合规性依托于纽约州金融服务部(NYD…

    2025年12月11日
    000
  • GENIUS稳定币法案对DeFi影响几何 GENIUS稳定币法案限制去中心化?

    近期备受关注的GENIUS稳定币法案,旨在为稳定币发行方建立监管框架,但其深远影响正波及整个去中心化金融(DeFi)领域。该法案可能在提升合规性的同时,对DeFi的核心理念——去中心化,构成前所未有的挑战。本文将深入剖析该法案对DeFi的具体影响,并探讨其是否会成为去中心化发展的“限制器”。 一、G…

    2025年12月11日
    000
  • 加密货币项目、ROI代币与精英投资者:2025年展望

    探索加密项目、roi 代币与精英投资者的交汇点。揭示 2025 年高潜力代币和投资趋势的深刻洞见。 加密项目、ROI 代币与精英投资者:2025 展望 加密货币市场正经历快速变革,模因币(meme coins)不断涌现,机构投资者也开始积极参与。我们一起来分析 2025 年加密项目、ROI 代币及精…

    2025年12月11日
    000
  • 柴犬币、比特币价格、XRP前景:驾驭加密货币浪潮

    深入了解柴犬币(shiba inu)ai整合的最新趋势、比特币(bitcoin)市场的韧性以及xrp前景的分歧 柴犬币、比特币价格、XRP前景:穿越加密货币的风浪 加密货币世界从不停歇!从柴犬币的AI探索,到比特币的强势盘整,再到XRP前景的分歧,让我们一起梳理一下最新的行业动态。 柴犬币:AI整合…

    2025年12月11日
    000
  • 稳定币app榜单 全球购买稳定币平台前十名推荐

    本文盘点了全球十大稳定币交易平台以帮助用户根据需求选择合适平台。1.Binance提供高流动性与丰富稳定币选项;2.OKX技术强大且支持多种稳定币;3.Gate.io品种丰富并提供增值服务;4.HTX拥有充足流动性与成熟C2C功能;5.Coinbase以安全合规著称且适合初学者;6.Kraken历史…

    2025年12月11日 好文分享
    000
  • 柴犬的AI革命:白皮书引发销毁率狂潮!

    柴犬携手人工智能:新白皮书引爆社区热潮,销毁率飙升。这是 shib 的新纪元吗? 柴犬的 AI 升级:白皮书掀起销毁风暴! 柴犬(Shiba Inu)正在掀起一股新热潮,它不再只是网络迷因,而是一个正在构建技术愿景的加密生态。最近,社区关注的焦点是一份关于人工智能的全新白皮书,这份文件直接推动了 S…

    2025年12月11日
    000
  • 数字货币是加密货币吗

    数字货币与加密货币的关系是包含但不等同,加密货币是数字货币的一个特殊子集。数字货币是一个广义术语,涵盖所有以电子形式存在的货币,包括中央银行数字货币、电子货币和加密货币;而加密货币是基于密码学和区块链技术的去中心化数字资产,如比特币和以太坊。两者在发行机制上存在根本差异:数字货币通常由中央机构发行和…

    2025年12月11日
    000
  • 香港通过数字货币新规!合规风口已至,这6个币圈热门项目已抢先启动

    近日,香港正式通过数字货币相关新规,为加密资产行业带来了更加明确的合规框架和政策支持。这一举措不仅提升了市场的透明度和安全性,也吸引了众多项目方提前布局,抢占合规风口。 已启动的六个热门合规项目简介 在新规推动下,以下六个热门项目率先启动,成为市场焦点: 项目一:AegisChain(Aegis) …

    2025年12月11日
    000
  • 如何理解稳定币的前世今生?稳定币的实质和重要作用是什么?

    稳定币是一种与特定资产挂钩的加密货币,旨在保持价值稳定,解决加密资产的波动性问题。1.其类型主要包括法定资产抵押型、加密资产抵押型和算法型;2.应用场景涵盖加密交易、跨境支付、DeFi及价值存储;3.核心价值在于提供稳定的价值锚,兼具加密资产的流通性与传统资产的稳定性。随着技术进步和监管完善,稳定币…

    2025年12月11日
    000
  • 错过DeFi别遗憾,香港通过数字新规!新赛道正式开启,6大币种率先受益

    近期,香港正式通过数字货币新规,为加密资产行业带来了更加完善的合规环境。这一政策不仅规范了市场秩序,也为新的合规赛道打开了大门,成为行业发展的重要里程碑。 对于刚入圈的新手来说,选择正规平台开户至关重要。推荐使用币安和欧易OKX两大合规交易所,支持快速注册和身份认证: 访问欧易官网;下载欧易客户端A…

    2025年12月11日
    000
  • 币安安卓最新版v3.0.4下载 币安app中文版安装教程

    币安(binance)是全球领先的数字资产交易平台之一,提供现货、合约、理财等多种功能。由于政策限制,大陆用户无法直接在google play或国内应用市场下载币安app,因此需要通过官方渠道获取apk安装包。以下是最新版本v3.0.4的下载与安装教程,帮助您顺利体验币安app中文版。 官网链接: …

    2025年12月11日 好文分享
    000
  • 万事达卡、《天才法案》与稳定币采用:纽约一分钟看加密货币的未来

    解码genius法案及其对万事达币稳定币战略和更广泛加密货币格局的影响 加密爱好者们,准备好了吗?加密市场正迎来新的变化,而当前热议的话题正是GENIUS法案及其可能改变稳定币使用方式的潜力。万事达币正处于这场变革的中心,但这一切究竟意味着什么? GENIUS法案:重塑规则的关键一步? GENIUS…

    2025年12月11日
    000
  • WLD价格瞄准3.07美元突破:趋势线阻力位成焦点

    worldcoin (wld) 面临趋势线阻力、战略合作推进及监管挑战。3.07美元的目标能否达成? 嘿,加密社区的伙伴们!Worldcoin(WLD)最近动作频频,市场普遍关注它是否能突破关键的趋势线阻力,迈向3.07美元的价位。我们一起来看看WLD的价格走势,从市场波动到潜在突破的可能性。 WL…

    2025年12月11日
    000
  • 加密货币、山寨币、立即购买:驾驭山寨币季节性上涨浪潮

    随着比特币的崛起,山寨币市场也沸腾起来!探索当下值得入手的加密货币,包括spx、link、rtx、avax、kas 和 dot,在迷因热度与实际应用之间找到投资平衡点。 加密货币、山寨币、现在买入:把握“山寨季”的浪潮 比特币持续上涨,山寨币市场也愈发火热!这一轮山寨币热潮带来了独特的投资机会,但该…

    2025年12月11日
    000
  • 稳定币交易平台 稳定币app交易所有哪些

    当前主流的稳定币交易平台排名依次为Binance、OKX、gate.io和火币。Binance是全球交易量最大的平台,支持多种稳定币交易对,并提供现货、合约及杠杆交易,手续费竞争力强;OKX以创新产品著称,支持稳定币跨链兑换,提供专业API接口及高安全性;gate.io上线稳定币种类齐全,并提供理财…

    2025年12月11日 好文分享
    000
  • FloppyPepe:2025年在Solana上展现实用性的模因币

    忘记短暂的炒作吧!floppypepe(fppe)在 solana 上将模因魔力与创作者工具结合,正成为有望实现百倍增长的有力竞争者。这会是下一个模因传奇吗? 加密市场的模因币狂热远未结束,但规则正在改变。Solana 充满活力的生态系统正在孕育新一代模因币,而 FloppyPepe(FPPE)正引…

    2025年12月11日
    000
  • Chainlink的阻力目标:LINK会达到150美元吗?

    chainlink(link)近期展现出强劲走势,突破了多年形成的形态。分析师预测其目标价可能达到150美元,但目前20.5美元的阻力位仍未能有效突破。link是否能够成功上破? Chainlink的阻力目标:LINK会触及150美元吗? Chainlink(LINK)正引起市场关注,分析人士预测其…

    2025年12月11日
    000
  • 2026 年加密货币投资组合:在加密领域中实现变革性回报

    探索有望在2026年重塑加密货币收益的潜力币种,包括lilpepe、kaspa和verasity,并获取构建稳健投资组合的策略性见解。 加密货币市场正迎来回报机制的变革,2026年前景令人期待。抛开过往噪音,当前焦点已转向基础设施建设——模因链(meme chains)、高速Layer 1公链以及具…

    2025年12月11日
    000
  • BNB的火箭之旅:去中心化交易所活动与稳定币推动暴涨

    bnb 正在强势攀升,受到去中心化交易所(dex)交易量激增、稳定币持续扩张以及战略性代币销毁的多重推动。这是否预示着币安币(bnb)正步入新的常态? BNB 正迎来一波强劲涨势!这波上涨得益于去中心化交易所(DEX)活跃度的飙升以及稳定币使用的快速增长,推动其屡创新高,成为市场关注的焦点。让我们深…

    2025年12月11日
    000

发表回复

登录后才能评论
关注微信