Comments (6)
Hi @zhujiesuper
decode_head
is for decoding semantic segmentation output.
auxiliary_head
is just adding an auxiliary loss.
from mmsegmentation.
thank you! but if all the model need auxiliary_head? i find it in all model,but in papers do not all have ,i know pspnet have an auxiliary loss,but others do not have,can you tell me how to handle this
from mmsegmentation.
Hi @zhujiesuper
For fair comparison, we use auxiliary loss for all methods.
Note that, there are many implementation details in our repo that differ from the official repo.
from mmsegmentation.
thank you! but if all the model need auxiliary_head? i find it in all model,but in papers do not all have ,i know pspnet have an auxiliary loss,but others do not have,can you tell me how to handle this
The auxilliary_head is modular and optional, which means that you can remove it if you don't want it.
model = dict(
type='EncoderDecoder', # tells registery to use which module to build this model
pretrained='open-mmlab://resnet50_v1c',
backbone=dict(
type='ResNetV1c',
depth=50,
num_stages=4,
out_indices=(0, 1, 2, 3),
dilations=(1, 1, 2, 4),
strides=(1, 2, 1, 1),
norm_cfg=norm_cfg,
norm_eval=False,
style='pytorch',
contract_dilation=True),
decode_head=dict(
type='PSPHead', # type can be seen as the surrogates for python classes to call from
in_channels=2048,
in_index=3,
channels=512,
pool_scales=(1, 2, 3, 6),
dropout_ratio=0.1,
num_classes=19,
norm_cfg=norm_cfg,
align_corners=False,
loss_decode=dict(
type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0)),
auxiliary_head=dict(
type='FCNHead',
in_channels=1024,
in_index=2,
channels=256,
num_convs=1,
concat_input=False,
dropout_ratio=0.1,
num_classes=19,
norm_cfg=norm_cfg,
align_corners=False,
loss_decode=dict(
type='CrossEntropyLoss', use_sigmoid=False, loss_weight=0.4))
)
For the config of PSPNet as shown above, you just need to remove all the content of auxiliary_head
variable. Then the model won't compute the auxiliary loss any more.
from mmsegmentation.
does it mean i delete
auxiliary_head=dict(
type='FCNHead',
in_channels=1024,
in_index=2,
channels=256,
num_convs=1,
concat_input=False,
dropout_ratio=0.1,
num_classes=19,
norm_cfg=norm_cfg,
align_corners=False,
loss_decode=dict(
type='CrossEntropyLoss', use_sigmoid=False, loss_weight=0.4))
)
and it work?
from mmsegmentation.
Hi @zhujiesuper
Yes. Deleting auxilary_head
in cfg will remove auxiliary head in the model.
from mmsegmentation.
Related Issues (20)
- Can mmseg load multiple pre-training weights at the same time?
- Why is training slower when training two models at the same time?
- Weight of mmpretrain used for backbone is error
- Inference of mask2former on large images HOT 1
- runner.train() is not displaying the log information on terminal while training HOT 1
- Is it possible to use mmsegmentation for pixel-wise prediction other than semantic segmentation?
- about resume HOT 1
- MMsegmentation supports Deepspeed + zero or FSDP? HOT 2
- resume卡住 HOT 8
- 交叉验证
- Accessing data issue from root folder
- nn.cross Entropy error
- The test and inference function in our docs are not work well
- Is the validation loss computed in the mmsegmentation 1.2.2? How do you know if the model in training has converged
- mmseg.ops resize for version 1.2.2
- Trying to migrate 0.x version segmentor model to 1.2.2 version segmentor model.
- RuntimeError: sigmoid_focal_loss_forward_impl: implementation for device cuda:0 not found.
- Confidence Score associated with segmentation
- Why does using Pad in the test_pipeline lead to a significant decrease in IoU and Acc?
- 为何图像分割的评价指标中没有MPA---Why is there no MPA in the evaluation indicators of image segmentation
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mmsegmentation.