本人下载了YOLOv3的一个MobileNetv2-spp的cfg文件,发现存在deconvolutional反卷积网络。
在使用cfg进行训练时反卷积网络无法识别,进行修改时发现反卷积后缺少上采样模块(被注释了),取消注释后,进行训练到反卷积那层时出现错误:
63 max 13x13/ 1 1 x 1 x 160 -> 1 x 1 x 160 0.000 BF
64 route 63 61 59 58 -> 1 x 1 x 640
65 conv 160 1 x 1/ 1 | 1 x 1 x 640 -> 1 x 1 x 160 0.000 BF 0.394 MB
66 conv 960 1 x 1/ 1 | 1 x 1 x 160 -> 1 x 1 x 960 0.000 BF 0.590 MB
67 conv 960/ 960 3 x 3/ 1 | 1 x 1 x 960 -> 1 x 1 x 960 0.000 BF 31.648 MB
68 conv 160 1 x 1/ 1 | 1 x 1 x 960 -> 1 x 1 x 160 0.000 BF 0.590 MB
69 activation: Using default 'linear'
Shortcut Layer: 65, wt = 0, wn = 0, outputs: 1 x 1 x 160 0.000 BF 0.001 MB
70 conv 960 1 x 1/ 1 | 1 x 1 x 160 -> 1 x 1 x 960 0.000 BF 0.590 MB
71 conv 960/ 960 3 x 3/ 1 | 1 x 1 x 960 -> 1 x 1 x 960 0.000 BF 31.648 MB
72 conv 320 1 x 1/ 1 | 1 x 1 x 960 -> 1 x 1 x 320 0.001 BF 1.177 MB
73 conv 1280 1 x 1/ 1 | 1 x 1 x 320 -> 1 x 1 x1280 0.001 BF 1.569 MB
74 conv 33 1 x 1/ 1 | 1 x 1 x1280 -> 1 x 1 x 33 0.000 BF 0.166 MB
75 yolo
[yolo] params: iou loss: ciou (4), iou_norm: 0.07, cls_norm: 1.00, scale_x_y: 1.05
76 route 69 -> 1 x 1 x 160
77 conv 256 1 x 1/ 1 | 1 x 1 x 160 -> 1 x 1 x 256 0.000 BF 0.158 MB
78 Type not recognized: [deconvolutional]
Unused field: 'filters = 32'
Unused field: 'size = 3'
Unused field: 'stride = 2'
Unused field: 'pad = 1'
Unused field: 'batch_normalize = 1'
Unused field: 'activation = relu'
79 Cuda malloc failed
: No error
Assertion failed: 0, file ..\..\src\utils.c, line 325
由于刚接触到深度学习,不太会找问题;怀疑是哪里少调用了函数或者少了哪个环境(没装pytorch)
使用的是WIN10、python语言,已配置了CUDA、tensorflower、numpy、matplotlib等环境可以跑通YOLOv3普通cfg训练和检测。
还希望有人指点一下~~~