一、前言
在复现论文代码的时候,遇到了这样的一个错误:
Traceback (most recent call last):
File "/home/wangzhenkuan/CORA-master/main.py", line 22, in <module>
from models import build_model
File "/home/wangzhenkuan/CORA-master/models/__init__.py", line 1, in <module>
from .fast_detr import build
File "/home/wangzhenkuan/CORA-master/models/fast_detr.py", line 21, in <module>
from .dab_transformer import build_transformer as build_dab_transformer
File "/home/wangzhenkuan/CORA-master/models/dab_transformer.py", line 23, in <module>
from models.ops.modules import MSDeformAttn
File "/home/wangzhenkuan/CORA-master/models/ops/modules/__init__.py", line 9, in <module>
from .ms_deform_attn import MSDeformAttn
File "/home/wangzhenkuan/CORA-master/models/ops/modules/ms_deform_attn.py", line 21, in <module>
from ..functions import MSDeformAttnFunction
File "/home/wangzhenkuan/CORA-master/models/ops/functions/__init__.py", line 9, in <module>
from .ms_deform_attn_func import MSDeformAttnFunction
File "/home/wangzhenkuan/CORA-master/models/ops/functions/ms_deform_attn_func.py", line 18, in <module>
import MultiScaleDeformableAttention as MSDA
ModuleNotFoundError: No module named 'MultiScaleDeformableAttention'
主要的错误来源是:
ModuleNotFoundError: No module named 'MultiScaleDeformableAttention'
二、问题分析与解决
2.1 最初的想法
这个错误提示表明你的Python环境中没有安装名为"MultiScaleDeformableAttention"的模块。可能是因为你还没有安装该模块,或者安装出现了问题。
要解决这个问题,你可以尝试以下几个步骤:
- 确认你的Python环境中是否已经安装了该模块。你可以在终端或命令行中输入以下命令,查看该模块是否已经安装:
pip list
如果该模块已经安装,你应该能够在输出列表中看到该模块的名称。
- 如果该模块没有安装,你可以尝试使用pip命令来安装该模块。在终端或命令行中输入以下命令:
pip install MultiScaleDeformableAttention
如果安装成功,你应该能够在输出中看到安装信息。
但是很明显,报错:
2.2 编译
进入下面的路径:
CORA-master/models/ops
我们可以看到一个make.sh文件,打开:
python setup.py build install
我们运行它:
顺利编译完成!
不再报错!