我正在使用 CNN 进行迁移学习。我想用我的数据训练网络,但在进行前向传递时出现此错误:
Error using CHECK (line 4)
input data cell length must match input blob number
Error in caffe.Net/forward (line 92)
CHECK(length(input_data) == length(self.inputs), ...
Error in main (line 79)
results= Unet.forward({data});
为了慢慢来并逐步解决错误,我的网络中现在只有一个数据层。这是我的 train.prototxt 文件:
name: 'my_phseg_v5-train'
force_backward: true
layer {top: 'image' top:'anno' name: 'loaddata' type: 'HDF5Data' hdf5_data_param { source: '/home/alexandra/Documents/my-u-net/my_data.txt' batch_size: 1} include: { phase: TRAIN }}
在matlab中:
model = '/home/alexandra/Documents/my-u-net/my_phseg_v5-train.prototxt';
weights = '/home/alexandra/Documents/my-u-net/my_phseg_v5.caffemodel';
%defining the net:
Unet = caffe.Net(model, weights, 'train'); % create net and load weights
results= Unet.forward({'image'});
我真的不明白我必须在 forward(argument) 中提出什么作为论点。有人可以在这一点上帮助我吗?
我还注意到,在我的 Unet 中,输入单元格的尺寸为 0x1 ...我想这也是它无法正常工作的原因。
有人知道如何解决这个问题吗?