GithubHelp home page GithubHelp logo

sa-net's People

Contributors

wofmanaf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

sa-net's Issues

热力图问题

请问一下,作者能公开一下,热力图的实现代码吗?十分感谢

加载pretrain模型问题

你好,为什么使用resnet101的pretrain模型时,报错:
pickle.UnpicklingError: A load persistent id instruction was encountered, but no persistent_load function was specified.

SA模块添加位置的疑问

您好,读了您发表的SA注意力机制文章,想尝试一下。但是总得不到较好的结果,甚至比不添加注意力精度要低一点点,我想可能是我添加的位置有问题。
我在尝试往YOLOv3的Darknet-53中添加SA注意力,对于位置的选取有些疑问,比如是将SA添加到Residual模块里面或外面,是否对所有Residual都添加SA,以及Groups分组数是否可以修改呢?
期望您的回复。

ValueError: not enough values to unpack (expected 2, got 1)

我在yolov5中插入sanet,出现错误
x_0, x_1 = x.chunk(2, dim=1)
ValueError: not enough values to unpack (expected 2, got 1)

因此我打印出他们的形状
def forward(self, x):
b, c, h, w = x.shape
print(x.shape)
x = x.reshape(b // 2, 2, h, w)
print(x.shape)
x_0, x_1 = x.chunk(2, dim=1)
输出为为(1,256,32,32)
(256,1,32,32)

请问如何解决问题呢?

中文名称

您好,不知道shuffle attention用中文该怎么描述呢?怎么称呼比较合适呢,写论文要用到,谢谢

shuffle的作用

作者,你好,我看到论文里是将最后的子特征进行aggregation之后再进行shuffle,那么这个shuffle就只是一个单纯改变通道顺序的作用吗?按我理解,单纯改变通道顺序没有什么对特征的改进。所以这个channel shuffle的作用具体是什么呢?因为我最后shuffle后的特征图还想要利用,但是我感觉这个shuffle似乎没有什么作用呢?谢谢你的解答!

关于代码的疑惑

@wofmanaf
作者您好
感谢你们的工作,收益很大。
在看代码的过程中存在疑惑,论文中说对特征层进行分组G=64
而代码中SABottleneck部分中
def __init__(self, inplanes, planes, stride=1, downsample=None, groups=1, base_width=64, dilation=1, norm_layer=None)
group=1,
width = int(planes * (base_width / 64.)) * groups
导致后续的width仍然是plane,这么一看应该没有分组啊?
不知道我的理解是否正确,恳请作者指点!谢谢

Getting error

when using sa_layer in deeplearning model getting following error, kindly help to me, solve this
x = x.reshape(b * self.groups, -1, h, w)
RuntimeError: shape '[64, -1, 64, 64]' is invalid for input of size 327680
kindly solve this

关于sa_layers

作者您好,我看在sa_resnet代码时第一个block卷积完的通道数为64,按64通道分一组,
sa_layers中该句x_0, x_1 = x.chunk(2, dim=1)就分不了两组了

预训练权重

大佬你好,我想问一下yolo网络可以使用您提供的resnet的权重吗,我不怎么了解这个

The position of SA in Resnet50 in the model

你好,我想学习SAnet,并想运用到我的任务中来。我看到你论文中多次的消融实验。好像代码中每一个stage之后都有添加?是我理解错误吗?论文中分类任务最后一个stage的最后一个block(.5.3)之后添加,我应用到我的任务中是否也应该这样尝试?还是从1.2.3.4stage的最后一个block添加开始实验?
是新手,期待您的回复

spatial attention的疑问

作者你好,我看了文章以及代码后对提到的spatial attention有两个疑问:
1.得到的attention map似乎不仅仅是1HW维的,而是仍然有通道维,即CHW?似乎不是纯粹的spatial attention。
2. 文章提到在得到spatial map的第一步是用的GN,但事实上,如果设置nn.GroupNorm(channel // (2 * groups), channel // (2 * groups)),是否就等价于InstanceNorm了,这一步和Group没什么关系。

谢谢!

加入SA层,检测任务效果变差

您好!非常棒的工作!
我最近将SA模块加入YOLO的bottleneck中,无论是从头训练还是用YOLO的预训练权重,似乎都达不到原先的精度,我想问一下,这个注意力机制应该如何训练?

FIG.4

您好,很棒的工作,关于FIG.4 ,我想请教一下是怎么得到最后一个阶段的top1.acc然后按分组画出来的,如果可以的话想请教一下大致的步骤

预训练模型格式

这个预训练格式是什么?我解压下来看不懂,不应该是.pth文件吗?谢谢指教

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.