Извлечение весов модели MatConvnet

В настоящее время я разрабатываю приложение для распознавания лиц.

Алгоритмы реализованы и обучены с использованием библиотеки MatConvnet (http://www.vlfeat.org/matconvnet/). В конце у меня есть сеть (.mat файл), которая выглядит так:
введите описание изображения здесь

введите описание изображения здесь

Я хотел бы знать, было ли возможно извлечь веса Сети, используя ее файл .mat, записать их в файл XML и прочитать их с помощью Caffe C ++. Я хотел бы повторно использовать их в Caffe C ++ для того, чтобы провести тестирование и реализовать аппаратное обеспечение. Есть ли эффективный и практичный способ сделать это?

Большое спасибо за вашу помощь.

1

Решение

Существует скрипт преобразования, который преобразует модели matconvnet в модели caffe Вот который вы можете найти полезным.

1

Другие решения

Слой, параметры которого вы хотите сохранить, должен быть установлен как «драгоценный». В net.var вы можете получить доступ к параметрам и записать их.

2

Вы не можете использовать веса обученной Сети с помощью matconvnet для кафе. Вы можете просто импортировать свою модель из matconvnet в caffe. (https://github.com/vlfeat/matconvnet/blob/4ce2871ec55f0d7deed1683eb5bd77a8a19a50cd/utils/import-caffe.py). Но этот скрипт не поддерживает все слои, и у вас могут возникнуть трудности с его использованием.
Лучший способ — определить прототип вашего caffe в python как модель matconvnet.

0
По вопросам рекламы [email protected]