Closed BruceLeonHeart closed 2 years ago
COCO、DOTA这个规模的数据集都训300epoch,你这点数据还只训20epoch,都还没开始收敛怎么可能有精度
另外可以仔细阅读一下readme中的getstart.md,你问的这些问题里面都有
是按照getStarted来做的
epoch之前也有训练300epoch的,因为我怀疑是除epoch之外的问题
这里贴出300epoch的结果
训练参数有可以修整的地方吗
这个工程其实基于你给的这个路线,我已经做出TX2的tensorrt部署,现在就差自定义数据集了训练和验证了,希望得到你的帮助。
trainbatch0/1/2 发一下,另外再发一下detect可视化图
我调整了学习率,虽说metric并不总为0,但是效果也不算好。
weights: weights/yolov5m.pt
cfg: ''
data: data/yolov5obb_jyz.yaml
hyp: data/hyps/obb/hyp.yaml
epochs: 300
batch_size: 8
imgsz: 640
rect: false
resume: false
nosave: false
noval: false
noautoanchor: false
evolve: null
bucket: ''
cache: null
image_weights: false
device: 0,1
multi_scale: false
single_cls: false
adam: false
sync_bn: false
workers: 8
project: runs/train
name: exp
exist_ok: false
quad: false
linear_lr: false
label_smoothing: 0.0
patience: 100
freeze:
- 0
save_period: -1
local_rank: -1
entity: null
upload_dataset: false
bbox_interval: -1
artifact_alias: latest
save_dir: runs/train/exp7
目标较少,防止被截断效果不好,这里关闭了aug,微调了学习率
lr0: 0.002
lrf: 0.15
momentum: 0.779
weight_decay: 0.00058
warmup_epochs: 1.33
warmup_momentum: 0.86
warmup_bias_lr: 0.0711
box: 0.0539
cls: 0.299
cls_pw: 0.825
theta: 0.299
theta_pw: 0.825
obj: 0.632
obj_pw: 1.0
iou_t: 0.2
anchor_t: 3.44
anchors: 3.2
fl_gamma: 0.0
hsv_h: 0.0188
hsv_s: 0.704
hsv_v: 0.36
degrees: 180.0
translate: 0.0902
scale: 0.25
shear: 0.0
perspective: 0.0
flipud: 0.5
fliplr: 0.5
mosaic: 0.0
mixup: 0.0
copy_paste: 0.0
cls_theta: 180
csl_radius: 2.0
执行detect.py 没有box可以plot。。。
按上面的改改看,mosaic最好还是用,不然一张图就一个目标对yolov5这种类型的网络而言不大友好。 还有网络参数文件最好是不要改,我提供的DOTAv1.5权重文件里包含了所有训练配置,再使用yolov5原版官方权重作为预训练模型直接训你的数据集比较好
好的好的,非常感谢你!
使用自定义的数据集效果不好
自己的数据集大概60多张,720*480分辨率,不涉及到裁剪
数据集目录存放格式:
python train.py --weights weights/yolov5s.pt \ --data data/yolov5obb_jyz.yaml \ --hyp data/hyps/obb/hyp.finetune_dota_CloseAug.yaml \ --batch-size 4 \ --epochs 20 \ --imgsz 640 \ --device 0 \
数据集分布如下:
数据配置为【实际仅有单类别】:
训练过程中有损失,但是结果,recall和acc均为0
如果需要排查问题从哪里着手? 数据需要转换为yolo格式吗,如果需要,目录结构怎么弄? 除了epoch提升还可以从哪里修改?