陈炜明
陈炜明
from model.rpn.bbox_transform import bbox_overlaps 好像改成这样就可以了
在训练时候,train.py里面的第60行代码会用到 ssd_weights.h5权重( model_path = 'model_data/ssd_weights.h5')。 不太能理解为什么训练时候要用您提供的ssd_weights.h5权重。是为了给前面的VGG16权重吗?
> COCO+07++12是用到07的测试集训练的。所以不能这样训练。 可是您提供的是VOC2007+2012训练集,不是VOC07++12+COCO训练集呀。VOC2007+2012训练集不包括07的测试集的
为什么用您给的VOC2007+2012训练集训练您写的复现SSD的网络后,再用VOC2007测试集测试MAP。MAP结果居然在91.91%,原文对应的MAP是74.1%。我完全按照README步骤操作,不知道哪里出了问题,还是您写的代码本身效果可以这么好呢?希望您能答疑解惑一下,谢谢! ------------------ 原始邮件 ------------------ 发件人: "bubbliiiing/ssd-tf2" ***@***.***>; 发送时间: 2021年7月4日(星期天) 晚上9:47 ***@***.***>; 抄送: "Chen Wei ***@***.******@***.***>; 主题: Re: [bubbliiiing/ssd-tf2] 利用作者网络重新训练作者提供的数据集和测试集,map结果太高:91.91% (#8) 是的。理论上训练VOC2007+2012应该用VGG的主干权重。 — You are receiving this because you authored the thread. Reply to this email...
您代码用的就是VGG16的主干网络吧? ------------------ 原始邮件 ------------------ 发件人: "bubbliiiing/ssd-tf2" ***@***.***>; 发送时间: 2021年7月4日(星期天) 晚上10:30 ***@***.***>; 抄送: "Chen Wei ***@***.******@***.***>; 主题: Re: [bubbliiiing/ssd-tf2] 利用作者网络重新训练作者提供的数据集和测试集,map结果太高:91.91% (#8) 用VGG作为主干的话就是和论文差不多 — You are receiving this because you authored the thread. Reply to this email...
您好,我复现原网络用了这个VGG16的权重,权重名是vgg16_weights_tf_dim_ordering_tf_kernels_notop.h5,用在了train.py里面的model_path中。然后训练结果MAP是63%,原网络的MAP是74.1%。有比较大的差距。请问是不是要增加训练次数呢?另外请问您用的初始权重是VGG16的权重吗? ------------------ 原始邮件 ------------------ 发件人: "bubbliiiing/ssd-tf2" ***@***.***>; 发送时间: 2021年7月15日(星期四) 上午10:59 ***@***.***>; 抄送: "Chen Wei ***@***.******@***.***>; 主题: Re: [bubbliiiing/ssd-tf2] 利用作者网络重新训练作者提供的数据集和测试集,map结果太高:91.91% (#8) 已有的权重是在coco+07++12上训练的,不能作为07+12的预训练权重,因为之前已经训练过07的测试集,你要复现原网络的话,应该要用vgg的权重 — You are receiving this because you authored the thread. Reply to this email...
这个vgg16_weights_tf_dim_ordering_tf_kernels_notop.h5每一层的名字和您当前网络的名字一样吧? /block1_conv1 /block1_conv2 /block1_pool /block2_conv1 /block2_conv2 /block2_pool /block3_conv1 /block3_conv2 /block3_conv3 /block3_pool /block4_conv1 /block4_conv2 /block4_conv3 /block4_pool /block5_conv1 /block5_conv2 /block5_conv3 /block5_pool 这VGG16的block1-5和您那边的1-5一样的。
所以还需要 /conv6_1 /conv6_2 /conv6_2_mbox_conf /conv6_2_mbox_loc /conv7_1 /conv7_2 /conv7_2_mbox_conf /conv7_2_mbox_loc /conv8_1 /conv8_2 /conv8_2_mbox_conf /conv8_2_mbox_loc /conv9_1 /conv9_2 /conv9_2_mbox_conf /conv9_2_mbox_loc /fc6 /fc7 /fc7_mbox_conf /fc7_mbox_loc 这些初始权重吗?请问这些层的初始权重是怎么获得的呢?