TypeError: forward() got an unexpected keyword argument ‘embed‘

使用服务器训练yolov8模型时,无卡模式开机运行代码没有报错,开机后运行报错

Traceback (most recent call last):
  File "train_3.py", line 14, in <module>
    model.train(data='data.yaml', epochs=500, imgsz=640,hsv_h=0,hsv_s=0,hsv_v=0)
  File "/root/ultralytics/ultralytics/engine/model.py", line 389, in train
    self.trainer.train()
  File "/root/ultralytics/ultralytics/engine/trainer.py", line 208, in train
    self._do_train(world_size)
  File "/root/ultralytics/ultralytics/engine/trainer.py", line 322, in _do_train
    self._setup_train(world_size)
  File "/root/ultralytics/ultralytics/engine/trainer.py", line 266, in _setup_train
    self.amp = torch.tensor(check_amp(self.model), device=self.device)
  File "/root/ultralytics/ultralytics/utils/checks.py", line 650, in check_amp
    assert amp_allclose(YOLO("yolov8n.pt"), im)
  File "/root/ultralytics/ultralytics/utils/checks.py", line 637, in amp_allclose
    a = m(im, device=device, verbose=False)[0].boxes.data  # FP32 inference
  File "/root/ultralytics/ultralytics/engine/model.py", line 100, in __call__
    return self.predict(source, stream, **kwargs)
  File "/root/ultralytics/ultralytics/engine/model.py", line 273, in predict
    return self.predictor.predict_cli(source=source) if is_cli else self.predictor(source=source, stream=stream)
  File "/root/ultralytics/ultralytics/engine/predictor.py", line 204, in __call__
    return list(self.stream_inference(source, model, *args, **kwargs))  # merge list of Result into one
  File "/root/miniconda3/lib/python3.8/site-packages/torch/utils/_contextlib.py", line 35, in generator_context
    response = gen.send(None)
  File "/root/ultralytics/ultralytics/engine/predictor.py", line 283, in stream_inference
    preds = self.inference(im, *args, **kwargs)
  File "/root/ultralytics/ultralytics/engine/predictor.py", line 140, in inference
    return self.model(im, augment=self.args.augment, visualize=visualize, embed=self.args.embed, *args, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
TypeError: forward() got an unexpected keyword argument 'embed'

最关键的是最下面


  File "/root/ultralytics/ultralytics/engine/predictor.py", line 140, in inference
    return self.model(im, augment=self.args.augment, visualize=visualize, embed=self.args.embed, *args, **kwargs)
  

在jupyter lab找到上述路径所指文件predictor.py,对应140行,删除=visualize后面的代码,改为如下格式

return self.model(im, augment=self.args.augment, visualize=visualize)

再次开机运行后没有报错,可以尝试

 Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      1/500      3.86G      3.867      5.608      3.876          4        640: 100%|████
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 8/8 [00:00<00:00,  9.28it/s]
                   all        243        163          0          0          0          0

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      2/500      3.85G      3.392      4.313      3.393          4        640: 100%|██████████| 74/74 [00:06<00:00, 11.73it/s]
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 8/8 [00:01<00:00,  6.33it/s]
                   all        243        163    0.00487       0.16     0.0118    0.00169

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      3/500      3.85G      3.226      4.288      3.217          2        640: 100%|██████████| 74/74 [00:06<00:00, 12.04it/s]
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 8/8 [00:00<00:00, 12.34it/s]
                   all        243        163     0.0537     0.0429    0.00546    0.00121

      Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
      4/500      3.85G      3.107      4.258      3.052          3        640: 100%|██████████| 74/74 [00:06<00:00, 12.04it/s]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值