Почему результаты Pycaffe отстали всегда 0? - PullRequest
0 голосов
/ 09 декабря 2018
net.blobs['data'].data[...] = transformed_image
output = net.forward()

output_prob = output['prob'][0]  # the output probability vector for the 
first image in the batch

print 'predicted class is:', output_prob.argmax()

label_index = output_prob.argmax()
caffeLabel = np.zeros((1,1000))
caffeLabel[0,label_index] = 1;

vis_layer = 'pool5' # visualization layer

grads=net.backward(diffs=[vis_layer],**{'prob':caffeLabel})
print(np.sum(grads))

Я хочу получить градиенты таким способом, но print (np.sum (grads)) всегда равен 0, я изменяю слой conv5 или другие слои, он не работал!

1 Ответ

0 голосов
/ 10 декабря 2018

Я решил проблему, добавил следующий код в 'deploy.prototxt'

force_backward:true
...