Рефераты. Функциональные модели универсального нейрокомпьютера

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

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

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

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

1.      Тестирование решения примера

1.1.     Взять пример у задачника.

1.2.     Предъявить его сети для решения.

1.3.     Предъявить результат интерпретатору ответа.

2.      Оценивание решения примера

2.1.     Взять пример у задачника.

2.2.     Предъявить его сети для решения.

2.3.     Предъявить результат оценке.

3.      Оценивание решения примера с вычислением градиента.

3.1.     Взять пример у задачника.

3.2.     Предъявить его сети для решения.

3.3.     Предъявить результат оценке с вычислением производных.

3.4.     Предъявить результат работы оценки сети для вычисления градиента.

4.      Оценивание и тестирование решения примера.

4.1.     Взять пример у задачника.

4.2.     Предъявить его сети для решения.

4.3.     Предъявить результат оценке.

4.4.     Предъявить результат интерпретатору ответа.

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

Последним компонентом, которого необходимо выделить, является контрастер нейронной сети. Этот компонент является надстройкой над учителем. Его назначение – сводить число связей сети до минимально необходимого или до «разумного» минимума (степень разумности минимума определяется пользователем). Кроме того, контрастер, как правило, позволяет свести множество величин весов связей к 2-4, реже к 8 выделенным пользователем значениям. Наиболее важным следствием применения процедуры контрастирования является получение логически прозрачных сетей – сетей, работу которых легко описать и понять на языке логики [80, 81].

Для координации работы всех компонентов нейрокомпьютера вводится макрокомпонента Нейрокомпьютер. Основная задача этого компонента – организация интерфейса с пользователем и координация действий всех остальных компонентов.

В литературе по нейроинформатике (см. например, [226, 227]) встречаются такие понятия как «соревновательные нейроны» и «обучение без учителя». Для определения места этих понятий, относящихся к сетям Кохонена [130, 131] рассмотрим более подробно работу нейрокомпьютера, реализующего сеть Кохонена. Сеть Кохонена состоит из изолированных нейронов (см. рис. 18 к главе 4). Работа нейрокомпьютера при решении примера состоит из следующих этапов:

1.     Из задачника выбирается очередной пример

2.     Выбранный пример предобрабатывается.

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

4.     Полученный выходной вектор интерпретируется максимальным интерпретатором (см. главу «Оценка и интерпретатор ответа»).

5.     При необходимости доучивания вычисляется вектор поправок к выходным сигналам сети (работает компонент оценка).

6.     Вычисленный вектор поправок подается на выход сети. На входах весов сети снимается вектор поправок к весам сети (работает компонент сеть).

7.     После того, как этапы 1 – 6 проведены для всех примеров задачника проводится обучение сети (работает компонент учитель).

Таким образом в сети Кохонена нет «соревновательных элементов». То, что понимаю под этим термином – работа интерпретатора ответа. Название «обучение без учителя» – некорректная метафора, поскольку при обучении сети Кохонена проводится минимизация функции оценки (см. например, [93]), и производится она с использованием компонента учитель.

1.3.               Запросы компонентов нейрокомпьютера

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

Рис 1. Схема запросов в нейрокомпьютере

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

1.3.1.                       Запросы к задачнику

Запросы к задачнику позволяют последовательно перебирать все примеры обучающей выборки, обращаться непосредственно к любому примеру задачника и изменять обучающую выборку. Обучающая выборка выделяется путем «раскрашивания» примеров задачника в различные «цвета». Понятие цвета и способ работы с цветами описаны в разделе «Переменные типа цвет и операции с цветами».

Запросы последовательного перебора обучающей выборки:

«Инициировать выдачу примеров цвета К». По этому запросу происходит инициация выдачи примеров К-го цвета.

«Дать очередной пример». По этому запросу задачник возвращает предобработанные данные очередного примера и, при необходимости, правильные ответы, уровень достоверности и другие данные этого примера.

«Следующий пример». По этому запросу задачник переходит к следующему примеру обучающей выборки. Если такого примера нет, то возвращается признак отсутствия очередного примера.

Для непосредственного доступа к примерам задачника служит запрос «Дать пример номер N». Действия задачника в этом случае аналогичны выполнению запроса «Дать очередной пример».

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

1.3.2.                       Запрос к предобработчику

Предобработчик сам никаких запросов не генерирует. Единственный запрос к предобработчику – «Предобработать пример» может быть выдан только задачником.

1.3.3.                       Запрос к исполнителю

«Обработать очередной пример». Вид ответа зависит от параметров запроса.

1.3.4.                       Запросы к учителю

«Начать обучение сети». По этому запросу учитель начинает процесс обучения сети.

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

«Провести N шагов обучения» – как правило, выдается контрастером, необходим для накопления показателей чувствительности.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.