Чтение онлайн

на главную - закладки

Жанры

Учебное пособие по курсу «Нейроинформатика»

Миркес Е. М.

Шрифт:

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

При полной или частичной аппаратной реализации нейрокомпьютера компонент исполнитель эффективно реализуется аппаратно, по следующим причинам.

Исполнитель реализует исключительно связные функции по отношению к другим компонентам.

Исполняемые им запросы постоянны и не зависят от реализаций других компонентов нейрокомпьютера.

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

Лекция 11.2, 12. Учитель

Этот компонент не является столь универсальным как задачник, оценка или нейронная сеть, поскольку существует

ряд алгоритмов обучения жестко привязанных к архитектуре нейронной сети. Примерами таких алгоритмов могут служить обучение (формирование синаптической карты) сети Хопфилда [312], обучение сети Кохонена [ 31, 132] и ряд других аналогичных сетей. Однако в главе «Описание нейронных сетей» приводится способ формирования сетей, позволяющий обучать сети Хопфилда [312] и Кохонена [131, 132] методом обратного распространения ошибки. Описываемый в этой главе компонент учитель ориентирован в первую очередь на обучение двойственных сетей (сетей обратного распространения ошибки).

Что можно обучать методом двойственности

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

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

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

Кроме того, использование нейронных сетей позволяет ставить новые вопросы перед исследователем. В практике группы «НейроКомп» был следующий случай. Была поставлена задача обучить сеть ставить диагноз вторичного иммунодефицита по данным анализов крови и клеточного метаболизма. Вся обучающая выборка была разбита на два класса: больные и здоровые. При анализе базы данных стандартными статистическими методами значимых отличий обнаружить не удалось. Сеть оказалась не способна обучиться. Далее у исследователя было два пути: либо увеличить число нейронов в сети, либо определить, что мешает обучению. Исследователи выбрали второй путь. При обучении сети была применена следующая процедура: как только обучение сети останавливалось из-за невозможности дальнейшего уменьшения оценки, пример, имеющий наихудшую оценку, исключался из обучающего множества. После того, как сеть обучилась решению задачи на усеченном обучающем множестве, был проведен анализ исключенных примеров. Выяснилось, что исключено около половины больных. Тогда множество больных было разбито на два класса — больные1 (оставшиеся в обучающем множестве) и больные2 (исключенные). При таком разбиении обучающей выборки стандартные методы статистики показали значимые различия в параметрах классов. Обучение сети классификации на три класса быстро завершилось полным успехом. При содержательном анализе примеров, составляющих классы больные1 и больные2, было установлено, что к классу болные1 относятся больные на завершающей стадии заболевания, а к классу больные2 — на начальной. Ранее такое разбиение больных не проводилось.

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

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

1. Обучать сеть решению задачи.

2. Подбирать входные данные так, чтобы на выходе нейронной сети был заданный ответ.

3. Ставить вопросы о соответствии входных данных задачника постановке нейросетевой задачи.

Задача обучения сети

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

Основная проблема состоит в том, что при оптимизации первой функции, значения других функций не контролируются. И наоборот, при оптимизации всех других функций не контролируется значение первой функции. Если обучение устроено по циклу — сначала оптимизация первой функции, потом второй и т. д., то после завершения цикла значение любой из функций может оказаться не меньше, а больше чем до начала обучения. Такой подход к обучению нейронных сетей привел к появлению различных методов «коррекции» данной трудности. Так, например, появилось правило, что нельзя «сильно» оптимизировать оценку отдельного примера, для того, чтобы при оптимизации сеть «не сильно» забывала остальные примеры. Возникли различные правила «правильного» перебора примеров и т. д. Наиболее ярким примером такого правила является случайный перебор примеров, рекомендованный для обучения сетей, обучаемых без учителя (сетей Кохонена [131, 132]). Однако все эти правила не гарантировали быстрого достижения результата. Более того, часто результат вообще не достигался за обозримое время.

Альтернативой всем правилам «малой оптимизации» и «правильного перебора примеров» является выработка единой функции оценки всего обучающего множества. Правила построения оценки обучающего множества из оценок отдельных примеров приведены в главе «Оценка и интерпретатор ответа».

В случае использования оценки обучающего множества, математическая интерпретация задачи приобретает классический вид задачи минимизации функции в пространстве многих переменных. Для этой классической задачи существует множество известных методов решения [48, 104, 143]. Особенностью обучения нейронных сетей является их способность быстро вычислять градиент функции оценки. Под быстро, понимается тот факт, что на вычисления градиента тратится всего в два-три раза больше времени, чем на вычисление самой функции. Именно этот факт делает градиентные методы наиболее полезными при обучении нейронных сетей. Большая размерность пространства обучаемых параметров нейронной сети (102–106) делает практически неприменимыми все методы, явно использующие матрицу вторых производных.

Описание алгоритмов обучения

Все алгоритмы обучения сетей методом обратного распространения ошибки опираются на способность сети вычислять градиент функции ошибки по обучающим параметрам. Даже правило Хебба использует вектор псевдоградиента, вычисляемый сетью при использовании зеркального порогового элемента (см. раздел «Пороговый элемент» главы «Описание нейронных сетей»). Таким образом, акт обучения состоит из вычисления градиента и собственно обучения сети (модификации параметров сети). Однако, существует множество не градиентных методов обучения, таких, как метод покоординатного спуска, метод случайного поиска и целое семейство методов Монте-Карло. Все эти методы могут использоваться при обучении нейронных сетей, хотя, как правило, они менее эффективны, чем градиентные методы. Некоторые варианты методов обучения описаны далее в этой главе.

Поскольку обучение двойственных сетей с точки зрения используемого математического аппарата эквивалентно задаче многомерной оптимизации, то в данной главе рассмотрены только несколько методов обучения, наиболее используемых при обучении сетей. Более полное представление о методах оптимизации, допускающих использование в обучении нейронных сетей, можно получить из книг по методам оптимизации (см. например [48, 104, 143]).

Краткий обзор макрокоманд учителя

Поделиться:
Популярные книги

Усадьба леди Анны

Ром Полина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Усадьба леди Анны

Чужая дочь

Зика Натаэль
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Чужая дочь

Светлая тьма. Советник

Шмаков Алексей Семенович
6. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Светлая тьма. Советник

Двойник Короля

Скабер Артемий
1. Двойник Короля
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Двойник Короля

Его нежеланная истинная

Кушкина Милена
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Его нежеланная истинная

Последний Паладин. Том 2

Саваровский Роман
2. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последний Паладин. Том 2

Измена. Наследник для дракона

Солт Елена
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Измена. Наследник для дракона

Идеальный мир для Лекаря 9

Сапфир Олег
9. Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
6.00
рейтинг книги
Идеальный мир для Лекаря 9

Мастер темных Арканов

Карелин Сергей Витальевич
1. Мастер темных арканов
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Мастер темных Арканов

Адвокат империи

Карелин Сергей Витальевич
1. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
фэнтези
5.75
рейтинг книги
Адвокат империи

Кодекс Охотника. Книга XXI

Винокуров Юрий
21. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XXI

Вечный. Книга II

Рокотов Алексей
2. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга II

Законы Рода. Том 3

Flow Ascold
3. Граф Берестьев
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 3

Наследник

Шимохин Дмитрий
1. Старицкий
Приключения:
исторические приключения
5.00
рейтинг книги
Наследник