Проблема преобразования модели Caffe в dlc с использованием SNPE

Я сталкиваюсь с проблемой при преобразовании моей модели кафе в dlc с использованием SNPE.

Конкретно в слое "Масштаб".

Первые два слоя следующие

name: "First"
input: "data"
input_shape {
dim: 1
dim: 3
dim: xxx
dim: xxx
}




    layer {
  name: "data/Scale"
  type: "Scale"
  bottom: "data"
  top: "data/Scale"
  scale_param {
    filler {
      value: 0.0078125   }
    bias_term: true
    bias_filler: 
      value: -1
    }
  }
  param {
    lr_mult: 0
    decay_mult: 1
  }
  param {
    lr_mult: 0
    decay_mult: 0
  }
}

layer {
  name: "Conv2d_0/convolution"
  type: "Convolution"
  convolution_param {
    num_output: 32
    pad: 1
    kernel_size: 3
    stride: 2
  }
  bottom: 'data/Scale'
  top: "Conv2d_0/convolution"
}

Я получаю следующую ошибку:

("Обнаружена ошибка:", "индекс списка вне диапазона")

Stack Trace: Traceback (последний вызов был последним):

Файл "/home/nithin.ga/SNPE_19/snpe-1.19.2/bin/x86_64-linux-clang/snpe-caffe-to-dlc", строка 115, в args.enable_strict_validation)

Файл "/home/nithin.ga/SNPE_19/snpe-1.19.2/lib/python/snpe/snpe_caffe_to_dlc.py", строка 1145, в конвертируемой self.convert_caffe_new(self.spec)

Файл "/home/nithin.ga/SNPE_19/snpe-1.19.2/lib/python/snpe/snpe_caffe_to_dlc.py", строка 1327, в convert_caffe_new layer_seq = self._blob_connectivity_map.check_s_folding(layer)

Файл "/home/nithin.ga/SNPE_19/snpe-1.19.2/lib/python/snpe/snpe_caffe_to_dlc.py", строка 459, в check_s_folding

output_layer = self._blobs [prev_layer_output_blob] ['output_of_layers'] [0] IndexError: индекс списка вне диапазона

Заранее спасибо.

0 ответов

Вот документация по ограничению уровня масштабирования SNPE:

https://developer.qualcomm.com/docs/snpe/limitations.html

Пакетная нормализация (+ масштабирование)

  • Caffe: масштабирование (scale_layer) не является обязательным. Если присутствует, он расширяет функциональность пакетной нормализации (batch_norm_layer). Если нет, batch_norm_layer все равно будет преобразован в соответствии со спецификацией Caffe. scale_layer используется где-либо еще в сети, но сразу после batch_norm_layer не поддерживается.

Есть поддержка масштабирования, но только если это часть уровня данных:

https://developer.qualcomm.com/docs/snpe/network_layers.html

Масштаб (изображение)

Масштабирование входного изображения с сохранением соотношения сторон. Эта функция в первую очередь предназначена для изображений, но технически любые входные 2D-данные могут быть обработаны, если это имеет смысл. Параметры масштабирования предоставляются в качестве опции для инструмента преобразования моделей.

Сам по себе такой слой Caffe не существует. Эта функция технически является частью поставщика данных Caffe.

Другие вопросы по тегам