2016-07-14 3 views
2

Я экспериментировал с новым 8-bit quantization feature, доступным в TensorFlow. Я мог бы запустить пример, указанный в сообщении в блоге (квантование googlenet) без каких-либо проблем, и он отлично работает для меня!Ошибка с 8-битовым квантованием в тензорном потоке

Теперь я хотел бы применить то же самое для более простой сети. Поэтому я использовал предварительно подготовленную сеть для CIFAR-10 (которая обучалась на Caffe), извлекла ее параметры, создала соответствующий график в тензорном потоке, инициализировала веса с помощью этих предварительно подготовленных весов и, наконец, сохранила его как объект GraphDef. См. Это IPython Notebook для полной процедуры.

Теперь я применил 8-разрядное квантование со сценарием tensorflow, как указан в блоге Пита Стражницей:

bazel-bin/tensorflow/contrib/quantization/tools/quantize_graph --input=cifar.pb --output=qcifar.pb --mode=eightbit --bitdepth=8 --output_node_names="ArgMax" 

Теперь я хотел запустить классификацию по этой квантованной сети. Поэтому я загрузил новый qcifar.pb в сеанс tensorflow и передал изображение (так же, как я передал его в оригинальную версию). Полный код можно найти в этом IPython Notebook.

Но как вы можете видеть, в конце концов, я получаю следующее сообщение об ошибке:

NotFoundError: Op type not registered 'QuantizeV2'

Кто-нибудь может предложить то, что я здесь отсутствует?

ответ

3

Поскольку квантованные операционные системы и ядра находятся в contrib, вам необходимо явно загрузить их в свой скрипт python. Там пример того, что в the quantize_graph.py script itself:

from tensorflow.contrib.quantization import load_quantized_ops_so from tensorflow.contrib.quantization.kernels import load_quantized_kernels_so

Это то, что мы должны обновить документацию упомянуть!

+0

Спасибо. Но я получаю importError. Я использую tensorflow 0.9, используя установку pip. Есть ли что-нибудь еще во время установки для импорта этих модулей? –

+0

Хотя я не мог импортировать, как вы, я сделал небольшую работу, как я объяснил здесь: ** http: //stackoverflow.com/a/38495999/1134940. Теперь все работает нормально. Спасибо. Мне бы очень хотелось увидеть более подробную информацию о документации, также я хочу попробовать другие методы квантования. –

+0

Какие файлы следует включать, чтобы заставить его работать с использованием интерфейса C от iOS? – Senad

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