yolov5-6.x训练参数

  • Post author:
  • Post category:其他


借鉴了大佬的,链接找不到了。

预训练模型,如果为空则从头开始,如果使用已有模型继续训练,只是会更好的拟合数据,并不会继承上一个模型,(个人理解)

parser.add_argument(‘–weights’, type=str, default=ROOT / ‘yolov5s.pt’, help=’initial weights path’)

模型的参数配置, 例如yolov5s.yaml,这个文件一般只需要修改一个参数nc,几个类别nc就等于几

parser.add_argument(‘–cfg’, type=str, default=”, help=’model.yaml path’)

标签文件,主要是类名和类别数目,图片路径

parser.add_argument(‘–data’, type=str, default=ROOT / ‘data/coco128.yaml’, help=’dataset.yaml path’)

超参数,对模型进行一些微调

parser.add_argument(‘–hyp’, type=str, default=ROOT / ‘data/hyps/hyp.scratch.yaml’, help=’hyperparameters path’)

训练轮数,按自己电脑配置来调-默认300

parser.add_argument(‘–epochs’, type=int, default=300)

批次,按自己电脑配置来调,默认16

parser.add_argument(‘–batch-size’, type=int, default=16, help=’total batch size for all GPUs’)

输入网络的图片尺寸-640,640

parser.add_argument(‘–imgsz’, ‘–img’, ‘–img-size’, type=int, default=640, help=’train, val image size (pixels)’)

非矩阵大小图片处理方式,是否采用矩形训练

parser.add_argument(‘–rect’, action=’store_true’, help=’rectangular training’)

意外中断后修改此参数可以继续训练

parser.add_argument(‘–resume’, nargs=’?’, const=True, default=False, help=’resume most recent training’)

不保存模型,默认false

parser.add_argument(‘–nosave’, action=’store_true’, help=’only save final checkpoint’)

不进行test,默认false

parser.add_argument(‘–noval’, action=’store_true’, help=’only validate final epoch’)

锚点,不自动调整anchor,默认false

parser.add_argument(‘–noautoanchor’, action=’store_true’, help=’disable autoanchor check’)

超参数进化

parser.add_argument(‘–evolve’, type=int, nargs=’?’, const=300, help=’evolve hyperparameters for x generations’)

谷歌云盘bucket,一般不会用到

parser.add_argument(‘–bucket’, type=str, default=”, help=’gsutil bucket’)

是否缓存图片到内存,加快训练速度

parser.add_argument(‘–cache’, type=str, nargs=’?’, const=’ram’, help=’–cache images in “ram” (default) or “disk”‘)

对效果不好的类别修改权重

parser.add_argument(‘–image-weights’, action=’store_true’, help=’use weighted image selection for training’)

gpu和cpu的使用,如果多gpu,default=’0,1,2,3’,表示四块gpu

parser.add_argument(‘–device’, default=”, help=’cuda device, i.e. 0 or 0,1,2,3 or cpu’)

多尺度训练

parser.add_argument(‘–multi-scale’, action=’store_true’, help=’vary img-size +/- 50%%’)

训练数据集是否只有一个类别

parser.add_argument(‘–single-cls’, action=’store_true’, help=’train multi-class data as single-class’)

优化器adam,默认是SGD

parser.add_argument(‘–adam’, action=’store_true’, help=’use torch.optim.Adam() optimizer’)

是否使用跨卡同步bn操作,再DDP中使用 默认False

parser.add_argument(‘–sync-bn’, action=’store_true’, help=’use SyncBatchNorm, only available in DDP mode’)

进程数,能最大化显卡的使用效率,跟电脑的实际配置也有关系

parser.add_argument(‘–workers’, type=int, default=8, help=’maximum number of dataloader workers’)

保存模型路径

parser.add_argument(‘–project’, default=ROOT / ‘runs/train’, help=’save to project/name’)

parser.add_argument(‘–name’, default=’exp’, help=’save to project/name’)

parser.add_argument(‘–exist-ok’, action=’store_true’, help=’existing project/name ok, do not increment’)

数据处理方式,dataloader取数据时, 是否使用collate_fn4代替collate_fn,四合一

parser.add_argument(‘–quad’, action=’store_true’, help=’quad dataloader’)

学习率

parser.add_argument(‘–linear-lr’, action=’store_true’, help=’linear LR’)

标签平滑, 默认0.0不增强 要增强一般就设为0.1

parser.add_argument(‘–label-smoothing’, type=float, default=0.0, help=’Label smoothing epsilon’)

早停机制,训练到一定的epoch,如果模型效果未提升,就让模型提前停止训练。

parser.add_argument(‘–patience’, type=int, default=100, help=’EarlyStopping patience (epochs without improvement)’)

冻结层?冻结模型层数,默认0不冻结,冻结主干网就传10,冻结所有就传24

parser.add_argument(‘–freeze’, type=int, default=0, help=’Number of layers to freeze. backbone=10, all=24′)

设置多少个epoch保存一次模型

parser.add_argument(‘–save-period’, type=int, default=-1, help=’Save checkpoint every x epochs (disabled if < 1)’)

为进程编号,分布式训练参数

parser.add_argument(‘–local_rank’, type=int, default=-1, help=’DDP parameter, do not modify’)

权重与偏差论证

parser.add_argument(‘–entity’, default=None, help=’W&B: Entity’)

是否上传dataset到wandb tabel(将数据集作为交互式 dsviz表 在浏览器中查看、查询、筛选和分析数据集) 默认False

parser.add_argument(‘–upload_dataset’, action=’store_true’, help=’W&B: Upload dataset as artifact table’)

设置界框图像记录间隔

parser.add_argument(‘–bbox_interval’, type=int, default=-1, help=’W&B: Set bounding-box image logging interval’)

parser.add_argument(‘–artifact_alias’, type=str, default=’latest’, help=’W&B: Version of dataset artifact to use’)



版权声明:本文为Scream_1原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。