В этом примере показано, как импортировать пользовательский выходной слой классификации с суммой потерь при ошибке квадратов (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.