-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtrain_yolo.py
29 lines (27 loc) · 1.59 KB
/
train_yolo.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO
if __name__ == '__main__':
model = YOLO('yolo11n.yaml')
# 如何切换模型版本, 上面的ymal文件可以改为 yolov11s.yaml就是使用的v11s,
# 类似某个改进的yaml文件名称为yolov11-XXX.yaml那么如果想使用其它版本就把上面的名称改为yolov11l-XXX.yaml即可(改的是上面YOLO中间的名字不是配置文件的)!
# model.load('yolov11n.pt') # 是否加载预训练权重,科研不建议大家加载否则很难提升精度
model.train(data=r"S:\Learn\DATASET\CCPD2019_CAR\yolo_dataset.yaml",
# 如果大家任务是其它的'ultralytics/cfg/default.yaml'找到这里修改task可以改成detect, segment, classify, pose
save_period=1,
cache=False,
imgsz=640,
epochs=50,
# single_cls=False, # 是否是单类别检测
batch=8,
close_mosaic=0,
workers=0,
device='0',
optimizer='SGD', # using SGD 优化器 默认为auto建议大家使用固定的.
# resume=, # 续训的话这里填写True, yaml文件的地方改为lats.pt的地址,需要注意的是如果你设置训练200轮次模型训练了200轮次是没有办法进行续训的.
amp=True, # 如果出现训练损失为Nan可以关闭amp
project='runs/train',
name='exp',
seed=42,
plots = True,
)