2017-01-18 3 views
1

Я хочу преобразовать одну из существующих предварительно обученных моделей mxnet available here в полностью сверточный.создание предварительно подготовленной сети mxnet полностью сверточно

Это означает возможность ввода изображения любого размера с указанием шага и получения полного выхода. Например, предположим, что модель была обучена изображениям 224x224x3. Я хочу ввести изображение размером 226x226x3 и указать stride = 1, чтобы получить выход 3x3xnum-классов. Я не спрашиваю «теоретически», а скорее пример кода :-)

Спасибо!

ответ

1

Согласно этому примеру: https://github.com/dmlc/mxnet-notebooks/blob/master/python/tutorials/predict_imagenet.ipynb

Вы можете изменить форму данных при связывании модели:

mod.bind(for_training=False, data_shapes=[('data', (1,3,226,226))]) 

Тогда вы можете ввести в 3 * 226 * 226 изображения.

Другой пример: http://mxnet.io/how_to/finetune.html

Этот пример заменяет последний слой предварительно обучен модели с ФК слоя.

+0

Спасибо за ответ. Действительно, я могу изменить размер ввода. но это не приведет к тому, что сеть будет применяться в нескольких местах. Выход будет оставаться в том же размере. – zuuz

+0

Если вы хотите изменить выход, вы можете рассмотреть возможность изменения уровня вывода. http://mxnet.io/how_to/finetune.html – kevinthesun

Смежные вопросы