I'd like to know if there's a way to get the top-k error on PyCaffe while doing training phase.
I know there's the top_k parameter for the .prototxt file but is there any way I can use it on PyCaffe?
layer {
name: "accuracy"
type: "Accuracy"
bottom: "..."
bottom: "label"
top: "accuracy"
accuracy_param {
top_k: 5
}
include {
phase: TEST
}
}
For anyone wondering I just find out you need to put multiple accuracy layers with different top-k numbers. Here is an example of a top-3 accuracy.
layer {
name: "accuracy1"
type: "Accuracy"
bottom: "score"
bottom: "label"
top: "accuracy1"
include {
phase: TEST
}
}
layer {
name: "accuracy2"
type: "Accuracy"
bottom: "score"
bottom: "label"
top: "accuracy2"
accuracy_param {
top_k: 2
}
include {
phase: TEST
}
}
layer {
name: "accuracy3"
type: "Accuracy"
bottom: "score"
bottom: "label"
top: "accuracy3"
accuracy_param {
top_k: 3
}
include {
phase: TEST
}
}