Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AFF-FPN #25

Open
lab-gpu opened this issue Jun 1, 2021 · 3 comments
Open

AFF-FPN #25

lab-gpu opened this issue Jun 1, 2021 · 3 comments

Comments

@lab-gpu
Copy link

lab-gpu commented Jun 1, 2021

作者你好,请问一下,根据论文里面的说明,构建AFF-FPN,最后通道数输出就很大啊,看图吧,以resnet18为例吧
微信图片_20210601111510

@YimianDai
Copy link
Owner

因为语义分割的实验我就做了 二分类,所以输出的 channel 我是递减的,从 512 -> 256 -> 128 -> 64

@lab-gpu
Copy link
Author

lab-gpu commented Jun 1, 2021

根据论文里面的说明,蓝线表示通道扩张,红线表示上采样,那按照您的通道递减,那红线就改为通道缩减以及上采样,蓝线就表示逐点卷积,然后再使用AFF进行特征融合,请问这样可以吗
微信图片_20210601112220

@YimianDai
Copy link
Owner

一般论文类别数多的话都是采用比如固定一个维数(FPN 的原始做法,256 维)的,这是主流的做法,毕竟通道信息丰富,有助于分类准确。

image

我觉得还是要看具体的任务,我做实验的时候只做了二分类(我主要的任务是二分类),所以我试了一下发现效果差不多,就采用降采样了。代码需要选一下 fuse_order,看是按照哪种来

            if fuse_order == 'reverse':
                self.fuse12 = self._fuse_layer(fuse_mode, channels=channels[2])  # channels[2]
                self.fuse23 = self._fuse_layer(fuse_mode, channels=channels[3])  # channels[3]
                self.fuse34 = self._fuse_layer(fuse_mode, channels=channels[4])  # channels[4]
            elif fuse_order == 'normal':
	        self.fuse34 = self._fuse_layer(fuse_mode, channels=channels[4])  # channels[4]
	        self.fuse23 = self._fuse_layer(fuse_mode, channels=channels[4])  # channels[4]
	        self.fuse12 = self._fuse_layer(fuse_mode, channels=channels[4])  # channels[4]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants