Импорт пользовательского слоя в Deep Network Designer

В этом примере показано, как импортировать пользовательский выходной слой классификации с суммой потерь при ошибке квадратов (SSE) и добавить его в предварительно обученную сеть в Deep Network Designer.

Задайте пользовательский выходной слой классификации. Чтобы создать этот слой, сохраните файл sseClassificationLayer.m в текущей папке. Дополнительные сведения о построении этого слоя см. в разделе «Определение пользовательского выходного слоя классификации».

Создайте образец слоя.

sseClassificationLayer = sseClassificationLayer('sse');

Откройте Deep Network Designer с предварительно обученной сетью GoogLeNet.

deepNetworkDesigner(googlenet);

Чтобы адаптировать предварительно обученную сеть, замените последний усвояемый слой и конечный слой классификации новыми слоями, адаптированными к новому набору данных. В GoogLeNet эти слои имеют имена 'loss3-classifier' и 'output', соответственно.

На панели Designer перетащите мышью новую fullyConnectedLayer из библиотеки слоев на холст. Задайте OutputSize к новому числу классов, в этом примере, 2.

Редактируйте скорости обучения, чтобы учиться быстрее в новых слоях, чем в переданных слоях. Задайте WeightLearnRateFactor и BiasLearnRateFactor на 10. Удалите последний полностью подключенный слой и соедините новый слой.

Затем замените слой выхода пользовательским слоем выхода классификации. Щелкните Создать (New) на панели Конструктор (Designer). Пауза в рабочей области и нажмите Импортировать. Чтобы импортировать пользовательский слой классификации, выберите sseClassificationLayer и нажмите OK.

Добавьте слой к текущей предварительно обученной сети GoogLeNet с помощью нажатия Add. Приложение добавляет пользовательский слой в верхнюю часть панели Designer. Чтобы увидеть новый слой, масштабируйте его с помощью мыши или нажмите кнопку «Масштабировать».

Перетащите пользовательский слой в нижнюю часть панели Designer. Замените слой выхода новым слоем выхода классификации и соедините новый слой.

Проверьте сеть нажав Анализировать. Сеть готова к обучению, если Нейронная Сеть для Глубокого Обучения Analyzer сообщает о нулевых ошибках.

После того, как вы создаете свою сеть, вы готовы импортировать данные и обучать. Для получения дополнительной информации об импорте данных и обучении в Deep Network Designer, смотрите Передача Обучения with Deep Network Designer.

См. также

Похожие темы