Глава 5. Перенос обучения: переиспользование предобученных нейронных сетей
197
5.1.2. Перенос обучения
при несовместимых формах
выходных сигналов:
создание новой модели
на основе выходных
сигналов базовой модели
В примере переноса обучения из предыдущего раздела форма выходного сигнала
базовой модели была аналогична форме нового выходного сигнала. Во многих
других сценариях переноса обучения это не так (рис. 5.5). Например, описанный
выше подход не сработает, если нужно классифицировать
четыре
новые цифры
с помощью базовой модели, обученной на пяти. Более распространенный сцена
рий: решить задачу классификации изображений по небольшому числу классов
(случай Б на рис. 5.5) при наличии глубокой сверточной сети, обученной на на
боре данных ImageNet, который предназначен для классификации изображений
по 1000 выходных классов. Перед вами может стоять, например, задача бинарной
классификации — содержит ли изображение человеческое лицо — или задача
многоклассовой классификации всего по нескольким классам (вспомните пример
в начале главы). В подобных случаях форма выходного сигнала базовой модели
не подходит для новой задачи.
В некоторых случаях даже
тип
задачи машинного обучения отличается от типа
задачи, для которой обучалась базовая модель. Например, можно решать задачу ре
грессии (предсказывать число, как в случае В на рис. 5.5) путем переноса обучения
для базовой модели, обученной на задаче классификации. В разделе 5.2 вы увидите
еще более интересный вариант использования переноса обучения — предсказание
массива чисел, а не одного числа для обнаружения в изображениях объектов и опре
деления их местоположения.
Подробнее разберем рис. 5.5. Случай A: форма выходного сигнала и функция
активации новой модели совпадают с базовой моделью. Примером может служить
перенос модели MNIST на новые цифры в подразделе 5.1.1. Случай Б: функции ак
тивации в новой и базовой моделях совпадают, поскольку совпадают типы исходной
и новой задач (например, обе — задачи многоклассовой классификации). Однако
формы выходных сигналов различаются (например, в новой задаче другое число
классов). Примеры этого типа переноса обучения можно найти в подразделах 5.1.2
(управление компьютерной игрой в стиле PacMan
TM1
с помощью вебкамеры)
и 5.1.3 (распознавание нового множества слов устной речи). Случай В: новая за
дача — иного типа, чем исходная (например, регрессия вместо классификации).
Примером может служить модель обнаружения объектов в изображениях, основан
ная на MobileNet.
Во всех описанных выше случаях форма желаемого выходного сигнала отличает
ся от формы выходного сигнала базовой модели. Поэтому необходимо создать новую
модель. Но раз уж речь идет о переносе обучения, создавать ее с нуля не нужно,
можно использовать базовую. Мы продемонстрируем, как это сделать, в примере
webcamtransferlearning из репозитория tfjsexamples.
1
PacMan — зарегистрированная торговая марка компании Bandai Namco Entertainment Inc.