Современные информационные технологии
/1. Компьютерная инженерия
К.т.н., доц. Аждер Т.Б., к.т.н., доц. Зеленко
Г.В., к.т.н., проф. Рощин А.В.
Московский технологический университет, Россия
Обучающие выборки и тестовые данные
Обучающая выборка — это
конечное множество объектов, для которых известна их классовая принадлежность,
используемое для обучения нейронной сети. Обучающая выборка не должна содержать
противоречий, так как нейронная сеть однозначно сопоставляет выходные значения
входным.
Наблюдения в обучающей
выборке содержат опыт, который используется для обучения сети. В задачах
обучения с учителем каждое наблюдение состоит из наблюдаемой (зависимой)
переменной и одной или нескольких независимых переменных.
Тестовое множество (тестовая
выборка) является набором наблюдений, используемым для оценки качества модели.
Никакие наблюдения из
обучающей выборки не должны включаться в тестовую выборку. Иначе трудно оценить,
научился ли алгоритм обобщать на основе обучающей выборки или же просто запомнил
данные. Программа, которая может хорошо обобщать, будет иметь возможность
эффективно решать задачи с новыми данными. Программа же, которая запомнит
обучающие данные, может точно предсказывать значения зависимой переменной для
обучающего множества, но не сможет предсказать значение этой переменной для
новых примеров.
Запоминание обучающей
выборки называется переобучением. Программа, которая запомнит свои наблюдения,
не сможет выполнить поставленную задачу правильно, так как она запомнит
отношения и структуры в данных, являющиеся шумом или простым совпадением.
Балансировка между запоминанием и обобщением является общей проблемой для
многих алгоритмов машинного обучения. Одним из способов избежать данных проблем
для многих моделей является применение регуляризации.
В дополнение к обучающей
и тестовой выборкам иногда требуется третий набор наблюдений, называемый
проверочным множеством. Оно используется для настройки гиперпараметров
– переменных, которые контролируют процесс обучения модели. Программа
по-прежнему оценивается на тестовом множестве, для получения оценки ее
эффективности в реальном мире. Показатели эффективности на проверочном
множестве не должны использоваться в качестве оценки реальной эффективности
модели, так как программа была настроена, используя проверочные данные. Как
правило, единая выборка наблюдений, используемых для обучения, разделяется на обучающее, тестовое и
проверочное множества. Не существует каких-то особенных требований к размерам
таких множеств, и они могут изменяться в соответствии с количеством имеющихся
данных. Для обучающей выборки используется следующая схема:
50% или более данных для
обучающего множества;
25 % данных для тестовой
выборки;
оставшиеся данные для
формирования проверочного множества.
Некоторые обучающие
выборки могут содержать несколько сотен наблюдений, другие могут содержать миллионы
точек данных. Предсказательная сила многих алгоритмов машинного обучения растет
при увеличении размера обучающих выборок данных. Тем не менее, алгоритмы
машинного обучения, также следуют принципу «мусор на входе — мусор на выходе». Алгоритм
обучающийся на большой коллекции зашумленных, не относящихся к делу, или
неправильно маркированных данных не будет работать лучше, чем алгоритм
обучающийся на меньшем наборе данных, которые более адекватны задачам в
реальном мире.
Многие из обучающих множеств
готовятся вручную или же с использованием полуавтоматических процессов.
Создание больших наборов данных для обучения по прецедентам может быть
достаточно затратным процессом в некоторых областях.
Когда для решения задачи
не хватает обучающих данных, то существует методика, называемая перекрестной
проверкой. Она может быть использована и для подготовки и для проверки
алгоритма на одних и тех же данных. При перекрестной проверке обучающие данные
делятся на части. Алгоритм обучается используя все, кроме одной из частей, а
тестируется на оставшейся части данных. Части могут затем меняться несколько
раз так, что алгоритм обучается и оценивается на всех данных. Например, оригинальный
набор данных разбивается на пять подмножеств одинакового размера – А, B, C, D, E. Сначала модель обучается на частях B, C, D, E и тестируется на данных А. На
следующей итерации модель обучается на разделах A, C, D, Е и тестируется на
данных части В. Части меняются до тех пор, пока модель не обучится и не протестируется на всех частях. Следует отметить, что кросс-валидация дает более точную оценку эффективности модели,
чем тестирование с использованием только одной части данных.
Литература
1.
Хайкин С. Нейронные сети. Полный курс: [пер. с англ.
] – 2-e изд. – М.: Вильямс, 2006. – 1104 с.
2.
Галушка В.В., Фатхи В.А. Формирование обучающей выборки при
использовании искусственных нейронных сетей в задачах поиска ошибок баз данных [Электронный
ресурс] // Инженерный вестник Дона. 2013. №2.:
http://www.ivdon.ru/magazine/archive/n2y2013/1597
3. Круг
П.Г. Нейронные
сети и нейрокомпьютеры: учеб. пособие – М.: Изд-во МЭИ, 2002. – 176 с.