Классификация CustomVision в контейнере Docker: невозможно передать значение формы - PullRequest
0 голосов
/ 07 марта 2019

Я создал модель классификации в CustomVision и экспортировал ее в Dockerfile (Linux). Модель отлично работает при тестировании изнутри пользовательского интерфейса CustomVision, но при подключении к контейнеру Docker и вызове его как

curl -X POST http://127.0.0.1/image -F imageData=@some_file_name.jpg

Я всегда получаю сообщение об ошибке типа

«Ошибка: не удалось предварительно обработать изображение для прогнозирования. Невозможно передать значение формы (1, 227, 227, 3) для тензора« Заполнитель: 0 », который имеет форму» (?, 224, 224, 3) '»

Это даже когда some_file_name.jpg является одним из файлов, из которых модель была обучена ...

Замечание: модели, которые мы создали в августе 18 года и экспортировали в Dockerfiles, работают нормально. При изменении этих моделей сейчас (например, удаление файла из обучающих данных) и перестройка модели, она терпит неудачу, как отмечено выше. Размер zip-файла, созданного при экспорте модели, теперь почти вдвое больше, чем в августе. Конфигурация не была изменена, и модель все еще построена в том же центре обработки данных.

Любые советы / помощь наиболее ценится.

1 Ответ

0 голосов
/ 12 марта 2019

В папке приложения экспорта есть файл Forex.py. Измените строку,

network_input_size = 227 в network_input_size = 224

Затем я перестроил и перезапустил свой док-контейнер, и он заработал.

...