Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шолле Ф. - Глубокое обучение на Python (Библиотека программиста) - 2023.pdf
Скачиваний:
6
Добавлен:
07.04.2024
Размер:
11.34 Mб
Скачать

6.2. Разработка модели    217

ваших.предшественников..Это.поможет.определить.методы.конструирования. признаков.и.выбрать.архитектуру.модели,.которые.с.большой.вероятностью. подойдут.для.решения.вашей.задачи.

Обратите.внимание,.что.не.всегда.удается.достичь.статистической.мощности.. Если.модель.не.в.состоянии.дать.более.высокую.точность,.чем.простой.случайный. выбор.(базовый.случай),.после.опробования.нескольких.разумных.архитектур,. вполне.возможно,.что.во.входных.данных.отсутствует.ответ.на.вопрос,.который. вы.пытаетесь.задать..Не.забывайте,.что.вы.ставите.две.гипотезы:

.гипотезу.о.том,.что.выходные.данные.можно.предсказать.по.входным.данным;

.гипотезу.о.том,.что.доступные.данные.достаточно.информативны.для.изучения.отношений.между.входными.и.выходными.данными.

Вполне.возможно,.что.эти.гипотезы.ложны,.и.тогда.вам.придется.выполнить. проектирование.с.самого.начала.

6.2.4. Следующий шаг: разработка модели с переобучением

После.получения.модели,.обладающей.статистической.мощностью,.встает.вопрос.о.достаточной.мощности.модели..Достаточно.ли.слоев.и.параметров,.чтобы. правильно.смоделировать.задачу?.Например,.модель.логистической.регрессии. будет.иметь.некоторую.статистическую.мощность.для.классификации.цифр.из. набора.MNIST,.но.этой.мощности.не.будет.достаточно,.чтобы.считать.задачу. решенной..Не.забывайте.о.распространенной.проблеме.машинного.обучения.—. противоречии.между.оптимизацией.и.общностью;.идеальной.считается.модель,. которая.стоит.непосредственно.на.границе.между.недообучением.и.переобучением,.между.недостаточной.и.избыточной.емкостью..Чтобы.понять,.где.пролегает. эта.граница,.ее.сначала.нужно.пересечь.

Для.оценки.того,.насколько.большой.должна.быть.модель,.сначала.нужно.сконструировать.модель,.обладающую.эффектом.переобучения..Как.вы.помните.из. главы.5,.сделать.это.просто.

1.. Добавьте.слои.

2.. Задайте.большое.количество.параметров.в.слоях. 3.. Обучите.модель.на.большом.количестве.эпох.

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

218    Глава 6. Обобщенный процесс машинного обучения

6.2.5. Регуляризация и настройка модели

Получив.модель,.обладающую.статистической.мощностью,.и.добившись.ее. переобучения,.вы.будете.спокойны.в.том,.что.движетесь.в.верном.направлении.. С.этого.момента.вашей.целью.становится.максимизация.общности.

Этот.этап.занимает.больше.всего.времени:.вам.придется.многократно.изменять. свою.модель,.обучать.ее,.оценивать.качество.на.проверочных.данных.(контрольные.данные.не.должны.принимать.здесь.никакого.участия),.снова.изменять. ее.и.повторять.цикл,.пока.качество.модели.не.достигнет.желаемого.уровня.. Вот.кое-что.из.того,.что.вы.должны.попробовать:

. добавить.прореживание;

. опробовать.разные.архитектуры,.добавлять.и.удалять.слои;

. если.модель.не.очень.большая,.то.добавить.L1-.и/или.L2-регуляризацию;

.опробовать.разные.гиперпараметры.(например,.число.нейронов.на.слой.или. шаг.обучения.оптимизатора),.чтобы.найти.оптимальные.настройки;

.дополнительно.можно.выполнить.цикл.курирования.данных.или.конструи­ рования.признаков:.собрать.больше.данных.и.выполнить.их.маркировку,. добавить.новые.признаки.или.удалить.имеющиеся,.которые.не.кажутся. информативными.

Большую.часть.подобной.работы.можно.автоматизировать.с.помощью.программного обеспечения для автоматической настройки гиперпараметров,.такого. как.KerasTuner..Эту.возможность.мы.рассмотрим.в.главе.13.

Помните: .каждый .раз, .когда .вы .используете .обратную .связь .из .процесса. проверки.для.настройки.модели,.происходит.утечка.информации.в.модель.. Если.цикл.повторяется.лишь.несколько.раз,.в.этом.нет.ничего.страшного;.но. если.цикл.проверки.и.настройки.выполняется.многократно,.в.конечном.итоге. это.приведет.к.переобучению.модели.на.проверочных.данных.(даже.притом,. что .модель .напрямую .не .получает .их)..Это .снижает .надежность .процесса. оценки.

Получив.удовлетворительную.конфигурацию,.можно.обучить.окончательный. вариант.модели.на.всех.доступных.данных.(обучающих.и.проверочных).и.оценить.ее.качество.на.контрольном.наборе..Если.качество.модели.на.контрольных. данных.окажется.значительно.хуже,.чем.на.проверочных,.это.может.означать,. что.ваша.процедура.проверки.была.ненадежной.или.в.процессе.настройки. параметров.модели.проявился.эффект.переобучения.на.проверочных.данных..

Тогда.можно.попробовать.переключиться.на.использование.другого,.более. надежного.протокола.оценки.(такого.как.итерационная.проверка.по.K.блокам. с.перемешиванием).