OpenGVLab / Vision-RWKV

Vision-RWKV: Efficient and Scalable Visual Perception with RWKV-Like Architectures
https://arxiv.org/abs/2403.02308
Apache License 2.0
371 stars 14 forks source link

detection中的RWKV #32

Closed Kai-C-Kaslana closed 2 weeks ago

Kai-C-Kaslana commented 4 months ago

您好,我想请问detection的所提供的mask_rcnn_vrwkv_adapter_base_fpn_1x_coco.py等模型在哪里使用了VRWKV结构?在我理解代码过程中,发现VRWKV_Adapter除了继承VRWKV外,好像并没有再使用VRWKV其中的计算方式,比如InteractionBlock中的交互方式采用MSDeformAttn而非RWKV的计算方法。如果我的理解有误,还请您指正。

duanduanduanyuchen commented 3 months ago

您好,我想请问detection的所提供的mask_rcnn_vrwkv_adapter_base_fpn_1x_coco.py等模型在哪里使用了VRWKV结构?在我理解代码过程中,发现VRWKV_Adapter除了继承VRWKV外,好像并没有再使用VRWKV其中的计算方式,比如InteractionBlock中的交互方式采用MSDeformAttn而非RWKV的计算方法。如果我的理解有误,还请您指正。

您好,感谢您对Vision RWKV的关注! Detection(或者Segmentation)中使用的VRWKV_Adapter是采用的另一篇研究ViT-Adapter的结构生成多尺度的特征,方便更好的做密集预测任务。这里一系列交互的DeformAttn为采样的attention,计算量已经很低,不再需要线性的attention(线性attention也很可能没有DeformAttn效果好)。VRWKV_Adapter的主干网络依旧是VRWKV,只是使用了一系列Injector和Extractor通过MSDeformAttn算子从VRWKV Block的输出中提取出了多尺度的特征。 InteractionBlock在forward过程中传入的blocks参数即为VRWKV Block,参考: https://github.com/OpenGVLab/Vision-RWKV/blob/master/detection/mmdet_custom/models/backbones/adapter_modules.py#L177