я обученный модель с использованием MNIST пример архитектуры (но на моем собственном наборе из 3 классов изображений) и пытался интегрировать его в Пример C ++. Я изменил файл архитектуры MNIST, чтобы сделать его похожим на файл deploy.prototxt для Пример C ++ (замена обучающего и тестового слоев входным слоем).
К сожалению, когда я запускаю программу C ++, она выдает мне следующую ошибку:
F0827 14: 57: 28.427697 25511 insert_splits.cpp: 35] Неизвестный нижний двоичный объект
«метка» (слой «точность», нижний индекс 1)
Я попытался найти его в Google, и я думаю, что есть некоторая разница между слоями в файлах для примеров MNIST и C ++, но я не могу понять, что я могу изменить, чтобы это работало.
Как указано Комментарий Абдул Рахмана Аль Хамали кажется, что вы оставили в своем deploy.prototxt
подать слои потерь и точности, которые ожидаются в качестве входных данных («нижние» значения) "label"
,
Удаление этих слоев потерь из deploy.prototxt
должен решить проблему.
Обратите внимание, что если вы использовали "SoftmaxWithLoss"
слой как потеря, вам нужно замещать это с "Softmax"
слой, чтобы получить вероятности класса в качестве чистых выходов. "Softmax"
слой занимает только один "bottom"
и не требует bottom: "label"
,