Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://top.sinp.msu.ru/lev/phd/node26.html
Дата изменения: Fri Aug 3 16:57:29 2001 Дата индексирования: Sat Feb 2 21:40:49 2013 Кодировка: koi8-r |
Тринадцатая проблема Гильберта была решена в 1957 г. В.А. Арнольдом; oн показал, что любая непрерывная функция трех переменных представляется в виде композиции непрерывных функций двух переменных. В том же 1957 г. А.Н. Колмогоров доказал более сильную теорему. Теорема Колмогорова: любая непрерывная функция от n переменных может быть представлена в виде
(a) |
Эта теорема означает, что для реализации функций многих переменных достаточно операций суммирования и композиции функций одной переменной. Если перевести эту теорему на язык нейронных сетей, то она будет звучать так. Если известны функции , то любую непрерывную функцию от переменных можно точно реализовать с помощью простой трехслойной нейронной сети. Для этого достаточно подобрать передаточных функций нейронов скрытого слоя. Эта сеть не будет перцептроном в строгом смысле, так как на входах второго слоя к сигналам необходимо применить функции , а не просто умножить их на веса (). К сожалению, при всей своей математической красоте теорема Колмогорова мало применима на практике. Это связано с тем, что функции — не гладкие и трудно вычисляемые; также неясно, каким образом можно подбирать функции для данной функции F. Роль этой теоремы состоит в том, что она показала принципиальную возможность реализации сколь угодно сложных зависимостей с помощью относительно простых автоматов типа нейронных сетей [73].
Чтобы получить более значимые для практики результаты в этом направлении, приходится ослабить требования. Во-первых, непринципиально найти точное представление данной функции, — достаточно иметь приближенное. Во-вторых, можно по необходимости увеличивать число нейронов в скрытом слое, насколько это требуется. Новый вариант теоремы Колмогорова, обладающий этими особенностями, был открыт только в 1989 г. одновременно несколькими авторами [74].
Пусть — любая непрерывная функция, определенная на ограниченном множестве, и — любое сколь угодно малое число, означающее точность аппроксимации.
Теорема. Существуют такое число , набор чисел , и набор чисел , что функция
(c) |
Приведенная формула описывает математическую основу "feed-forward" нейронной сети с одним скрытым уровнем, схематично изображенную на рисунке 4.1. Данная теорема доказывает, что любую непрерывную функцию нескольких переменных можно с любой точностью реализовать с помощью обычной трехслойной нейронной сети вида 4.1, с достаточным количеством нейронов в скрытом слое ().
Процесс подбора весов называется обучением нейронной сети. Настоящим прорывом в теории обучения нейронных сетей [75] стало открытие в 1986 г. метода обратного распространения ошибки (error back-propagation). В настоящее время этот метод широко используется в различных приложениях, однако он требует настройки нескольких параметров обучения и не всегда приводит к оптимальному результату. Поэтому необходимо понимать, что хотя нейронная сеть и является механизмом, способным решить широкий класс задач, но правила управления этим механизмом пока что находятся на уровне догадок и эвристических соображений.
В представленном анализе применялись "feed-forward" нейронные сети. Данный тип состоит из набора нейронов (перцептронов) с прямым распространением сигнала. Каждый отдельный нейрон описывается следующим выражением:
(d) |
Смысл действия нейронных сетей в задаче распознавания классов событий в физике высоких энергий можно описать следующим образом. Существует некоторый вектор кинематических переменных (входной вектор), распределения по которым наиболее сильно отличаются для сигнальных и фоновых событий. К примеру можно выбрать те же кинематические переменные, которые описаны в предыдущей главе ( ...). При применении классических обрезаний по таким переменным мы удаляем прямоугольные области в пространстве входных кинематических переменных без учета корреляций между различными переменными. Можно оптимизировать такое разделение, используя более сложные многомерные функции, по которым производится обрезание пространства кинематических переменных, и включающии корреляционные зависимости между переменными. Именно такие функции, учитывающие корреляции между разными переменными, вычисляются в результате тренировки нейронных сетей. Результатом обрезания выходной переменной нейронной сети будет сложная гиперповерхность в пространстве входных переменных сети, а не набор прямоугольных обрезаний в случае классического анализа, описанного в предыдущей главе.
Выходное значение нейронной сети определяется в процессе тренировки. Обычно процесс тренировки (так называемая "тренировка с учителем") выглядит следующим образом. На вход сети подается перемешанный поток сигнальных и фоновых событий, закодированных в виде входного вектора кинематических переменных; для сигнальных событий желаемый выход сети приравнивается к единице, а для фоновых, например, к нулю. Процесс тренировки состоит в коррекции параметров сети (веса, пороги) с целью максимального приближения реального значения выхода сети к желаемому, как для сигнальных, так и для фоновых событий, участвующих в тренировке. Основным критерием сходимости при тренировки выбирается функция ошибки:
здесь реальный выход сети (4.2) для -ого события, желаемый выход, а число тренировочных событий.
Функцию ошибок можно переписать в терминах матрицы весов сети w и порогов через формулу (4.2). Процесс тренировки сети заключается в минимизации функционала (4.5). Технику минимизации обычно называют методом тренировки сети; соответственно, могут быть использованы различные методы минимизации (тренировки).
Для построения и тренировки сети был использован пакет программ MLPfit [76], в котором заложено несколько алгоритмов тренировки. Для нахождения оптимального для данной задачи метода сравнивались два метода: "стохастический" [77] (наиболее широко используемый) и более мощный метод "Hybrid Linear-BFGS" [78], входящие в данный пакет программ. После сравнения результатов предпочтение было отдано последнему методу тренировки.
Основные этапы применения метода нейронных сетей к задаче экспериментального поиска описаны ниже.