Найти в Дзене
Работа, учёба и отдых

Нейронные сети: формирование обучающих выборок

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

Основные определения
Основные определения

Прежде всего, под ГЕНЕРАЛЬНОЙ совокупностью (population) понимается множество всех возможных прецедентов (объектов, ситуаций, событий, образцов и т.п.), при этом

под ВЫБОРКОЙ (sample, set) понимается конечный набор прецедентов, некоторым способом выбранных из множества ВСЕХ возможных прецедентов, т.е. это подмножество из генеральной совокупности.

ОБЩУЮ постановку задачи обучения по прецедентам (по примерам) можно сформулировать следующим образом:

ДАНО: конечное множество прецедентов (объектов, ситуаций, событий, образцов и т.п.), по каждому из которых собраны (измерены) некоторые данные (data).

Данные о прецеденте называют также его ОПИСАНИЕМ.

Совокупность ВСЕХ имеющихся описаний прецедентов называется ОБУЧАЮЩЕЙ ВЫБОРКОЙ.

ТРЕБУЕТСЯ: по частным данным выявить общие закономерности, зависимости, взаимосвязи, которые присущи не только этой конкретной выборке, но вообще всем прецедентам, в том числе тем, которые ещё не наблюдались.

ЗАМЕТИМ, что термины выборка (sample, set) и данные (data) взаимозаменяемы, при этом они иногда употребляются вместе как один термин ВЫБОРКА ДАННЫХ (data set).

Поговорим об описаниях.

Признаковое описание
Признаковое описание

Наиболее распространённым СПОСОБОМ описания прецедентов (объектов, ситуаций, событий, образцов и т.п.) является так называемое признаковое описание, суть которого заключается в фиксировании совокупности n показателей, которые можно каким-нибудь образом получить, например, измерить, вычислить, собрать статистику или каким-то другим образом получить для КАЖДОГО прецедента (объекта, ситуации, события, образца и т.п.).

ЗАМЕТИМ, что в случае, когда все n показателей числовые, то признаковые описания представляют собой числовые векторы размерности n.

Более того, признаковые описания называются обучающими векторами или обучающей парой {вход, выход}, где входом является многомерная совокупность показателей, а выход (может также быть многомерным) – рассчитывается, измеряется и т.д. для конкретной совокупности показателей.

ЗАМЕТИМ также, что прецеденты также могут описываться временнЫми рядами, сигналами, изображениями, информацией в текстовой форме и т.д.

Предобработка данных
Предобработка данных

Какие бы ни были признаковые описания, часто они требуют предварительной обработки с целью «улучшения» восприятия нейронной сетью (или другими алгоритмами машинного обучения).

Существует несколько способов такого улучшения «восприятия».

1. Нормировка выполняется в случаях, когда на различные входы подаются данные разной размерности. Например, на первый вход нейронной сети подаются значения от 0 до 1, а на второй - от 100 до 1000. если не производить нормировку, то значения на втором входе будут оказывать существенно бОльшее влияние на выход, чем значения на первом входе.

2. Квантование (от англ. quantization), представляющее собой разбиение на некоторое конечное число интервалов, выполняется над НЕПРЕРЫВНЫМИ величинами, для которых выделяется конечный набор дискретных значений. Например, квантование используют для задания частот звуковых сигналов при распознавании речи.

3. Фильтрация выполняется для «зашумленных» данных.

Типы выборок
Типы выборок

Полученная ВЫБОРКА (sample, set), т.е. конечный набор прецедентов (объектов, ситуаций, событий, образцов и т.п.) из генеральной совокупности делится на следующие части:

1. Непосредственно «Обучающая выборка» (training sample), которая представляет ту часть выборки, по которой производится настройка (оптимизация параметров) нейронной сети (или другого метода машинного обучения).

Для анализа результатов (в том числе определения наличия такого явления как переобучение, когда нейронная сеть (или другой метод машинного обучения) выдаёт хороший результат на примерах из обучающей выборки, но относительно плохо работает на примерах, не участвовавших в обучении (не входивших в обучающую выборку), что свидетельствует о низком качестве обобщения.

Методы предотвращения переобучения
Методы предотвращения переобучения

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

2. Тестовая (или контрольная) выборка (test sample) - та часть выборки, по которой оценивается качество обученной нейронной сети (или другого метода машинного обучения).

ЗАМЕТИМ, что оценку качества обученной нейронной сети (или другого метода машинного обучения), сделанную по тестовой выборке, можно применить для выбора наилучшей модели.

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

Факторы, влияющие на обучение нейронной сети
Факторы, влияющие на обучение нейронной сети

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

I. Нейронная сеть должна быть достаточно ГИБКОЙ, чтобы научиться правильно решать все примеры из обучающей выборки, поэтому в нейронной сети должно быть достаточное число нейронов и связей.

II. Обучающая выборка должна быть непротиворечивой, т. е. в обучающей выборке должны отсутствовать одинаковые входные векторы данных с соответствующими РАЗНЫМИ выходными.

В случае с противоречивыми данными нейронная сеть (или другой метод машинного обучения) не сможет качественно обучиться даже при увеличении числа слоёв и нейронов в слоях.

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

В любом случае перед обучением необходимо проанализировать обучающую выборку и чаще всего противоречивость примеров решается путём исключения (удаления) конфликтных примеров из обучающей выборки.

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

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

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

В качестве упражнения предлагается записать в комментарии пример признакового описания для решения какой-нибудь интересной для Вас задачи. Какую при этом совокупность n показателей необходимо определить у прецедентов?