使用Ultralytics平台训练Yolov9e时报错:
TypeError: ERROR ❌️ yolov9-e.pt appears to be an Ultralytics YOLOv5 model originally trained with https://github.com/ultralytics/yolov5. This model is NOT forwards compatible with YOLOv8 at https://github.com/ultralytics/ultralytics. Recommend fixes are to train a new model using the latest ‘ultralytics’ package or to run a command with an official YOLOv8 model, i.e. ‘yolo predict model=yolov8n.pt’
训练环境:
Python 3.9
GPU RTX4090 1块
训练代码:
from ultralytics import YOLO
model = YOLO("yolov9e.pt")
result = model.train(
name="yolov9e-640",
data = "xxx.yaml",
epochs=500,
imgsz=640,
batch=16,
patience=500,
device=0
)
解决方案:
从https://github.com/WongKinYiu/yolov9下载的模型yolov9-e.pt与本推理框架ultralytics不匹配,需要使用经过ultralytics训练的模型,模型权重下载地址:https://docs.ultralytics.com/models/yolov9/#performance-on-ms-coco-dataset
继续报错:
Traceback (most recent call last):
File “train.py”, line 2, in
model = YOLO(“yolov9e.pt”)
File “/usr/local/lib/python3.9/site-packages/ultralytics/engine/model.py”, line 94, in init
self._load(model, task)
File “/usr/local/lib/python3.9/site-packages/ultralytics/engine/model.py”, line 140, in _load
self.model, self.ckpt = attempt_load_one_weight(weights)
File “/usr/local/lib/python3.9/site-packages/ultralytics/nn/tasks.py”, line 624, in attempt_load_one_weight
ckpt, weight = torch_safe_load(weight) # load ckpt
File “/usr/local/lib/python3.9/site-packages/ultralytics/nn/tasks.py”, line 563, in torch_safe_load
return torch.load(file, map_location=‘cpu’), file # load
File “/usr/local/lib/python3.9/site-packages/torch/serialization.py”, line 809, in load
return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
File “/usr/local/lib/python3.9/site-packages/torch/serialization.py”, line 1172, in _load
result = unpickler.load()
File “/usr/local/lib/python3.9/site-packages/torch/serialization.py”, line 1165, in find_class
return super().find_class(mod_name, name)
AttributeError: Can’t get attribute ‘RepNCSPELAN4’ on <module ‘ultralytics.nn.modules.block’ from ‘/usr/local/lib/python3.9/site-packages/ultralytics/nn/modules/block.py’>
解决方案:
更新ultralytics版本
pip install --upgrade ultralytics