Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Методы обучения сетей встречного распространения.

Читайте также:
  1. I. Условия обучения
  2. PR» «совдепии», гитлеризма и либерастии, как методы блокировки Абсолютной Духовности.
  3. The effect methods (Методы с эффектами).
  4. V Диагностические методы мониторинга УУД учащихся
  5. Административные методы в муниципальном управлении.
  6. Административные нормы и методы гос. управления
  7. Алгоритм обучения многослойного персептрона с учителем.

Слой Кохонена обучается без учителя (самообучается). В результате обучения слой приобретает способность разделять несхожие входные векторы. Какой именно нейрон будет активироваться при предъявлении конкретного входного сигнала, заранее трудно предсказать. При обучении слоя Кохонена на вход подается входной вектор и вычисляются его скалярные произведения с векторами весов всех нейронов. Скалярное произведение является мерой сходства между входным вектором и вектором весов. Нейрон с максимальным значением скалярного произведения объявляется "победителем" и его веса подстраиваются (весовой вектор приближается к входному). Уравнение, описывающее процесс обучения, имеет вид: (1) где - новое значение веса, соединяющего входную компоненту x с выигравшим нейроном, - предыдущее значение этого веса, - коэффициент скорости обучения. Каждый вес, связанный с выигрывшим нейроном Кохонена, изменяется пропорционально разности между его величиной и величиной входа, к которому он присоединен. Направление изменения минимизирует разность между весом и соответствующим элементом входного сигнала. Переменная является коэффициентом скорости обучения, который вначале обычно равен 0.7 и может постепенно уменьшаться в процессе обучения. Это позволяет делать большие начальные шаги для быстрого грубого обучения и меньшие шаги при подходе к окончательной величине. Если бы с каждым нейроном Кохонена ассоциировался один входной вектор, то слой Кохонена мог бы быть обучен с помощью одного вычисления на вес (=1). Как правило, обучающее множество включает много сходных между собой входных векторов, и сеть должна быть обучена активировать один и тот же нейрон Кохонена для каждого из них. Веса этого нейрона должны получаться усреднением входных векторов, которые должны его активировать. Входной вектор, являющийся выходом слоя Кохонена, подается на слой нейронов Гроссберга, и выходы слоя Гроссберга вычисляются как при нормальном функционировании. Далее, каждый вес корректируется только в том случае, если он соединен с нейроном Кохонена, имеющим ненулевой выход. Величина коррекции веса пропорциональна разности между весом и требуемым выходом нейрона Гроссберга, с которым этот вес соединен. В символьной записи (2) где — выход i-го нейрона Кохонена (только для одного нейрона Кохонена он отличен от нуля); — j-я компонента вектора желаемых выходов. Первоначально берется равным приблизительно 0,1 и затем постепенно уменьшается в процессе обучения. Отсюда видно, что веса слоя Гроссберга будут сходиться к средним величинам от желаемых выходов, тогда как веса слоя Кохонена обучаются на средних значениях входов. Обучение слоя Гроссберга — это обучение с учителем, алгоритм располагает желаемым выходом, по которому он обучается. Обучающийся без учителя, самоорганизующийся слой Кохонена дает выходы в недетерминированных позициях. Они отображаются в желаемые выходы слоем Гроссберга. Применим сеть встречного распространения для распознавания кластеров данных из таблицы X1 1.0 9.4 2.5 8.0 0.5 7.9 7.0 2.8 1.2 7.8 X2 1.0 6.4 2.1 7.7 2.2 8.4 7.0 0.8 3.0 6.1 Выход 1 -1 1 -1 1 -1 -1 1 1 -1 Покажем на этом примере, как реализуется обучение такой сети. Допустим, параметр х1 в таблице представляет скорость двигателя в силовой установке, а х2 – его температуру. Оба параметра откалиброваны таким образом, что принимают значения из диапазона [1;10]. Предположим, система мониторинга через заданные интервалы времени снимает данные с двигателей, и должна рассылать уведомление, если скорость и температура чрезмерно возрастут. Переименуем выходные значения в таблице следующим образом: будем считать, что значение +1 соответствует безопасному состоянию, а -1, соответственно опасному. Сеть встречного распространения будет выглядеть примерно так: Поскольку точно известно, каким выходным значениям слоя Гроссберга должны соответствовать нейроны-победители слоя Кохонена, можно напрямую задать эти значения. Для демонстрации обучения слоя Гроссберга обучим сеть с помощью указанной выше формулы (1). Если (произвольным образом) принять решение о том, что узел S выходного слоя отвечает за безопасную ситуацию, а узел D — за опасную, то веса связей нейрона А слоя Кохонена с выходным слоем должны быть равны [1; 0], а веса связей нейрона В — [0; 1]. Благодаря симметрии этой ситуации можно ограничиться рассмотрением процесса обучения только для "исходящей звезды" нейрона А. Прежде чем приступать к обучению слоя Гроcсберга необходимо обучить слов Кохонена. Входные векторы для обучения исходящих связей нейрона А имеют вид [x1, x2, 1, 0] Здесь x1, x2 - это значения из таблицы, соответствующие нейрону А слоя Кохонена, а два других компонента указывают на то. что узел А является победителем, те. безопасное состояние двигателя соответствует значению Истина, а опасное - значению -ложь. Веса исходящих связей нейрона А инициализируем значениями [0; 0] и коэффициент скорости обучения сделаем равным 0,2. W1 = [0;0] + 0,2([1;0]-[0;0]) = [0;0] +[0,2;0]=[0,2;0]. W2 = [0,2;0] + 0,2([1;0]-[0,2;0]) = [0,2;0] +[0,16;0]=[0,36;0]. W3 = [0,36;0]+ 0,2([1;0]-[0,36;0]) = [0,36;0] +[0,13;0]=[0,49;0]. W4 = [0,49;0]+ 0,2([1;0]-[0,49;0]) = [0,49;0] +[0,1;0]=[0,59;0]. W5 = [0,59;0]+ 0,2([1;0]-[0,59;0]) = [0,59;0] +[0,08;0]=[0,67;0]. Несложно удостовериться, что в процессе обучения значения весовых коэффициентов сходятся к [1;0]. Естественно, из-за однозначности соответствия нейрона победителя нейрону выходного слоя можно было бы просто назначить веса связей и не использовать алгоритм обучения вообще. Покажем, что такие значения весов обеспечивают адекватное функционирование сети встречного распространения. Если на вход сети подать первый вектор из таблицы, то уровень активности нейрона А составит [1;1], а нейрона В – [0;0]. Взвешенная сумма этих значений для нейрона S выходного слоя составит 1. Если веса исходящих связей нейрона В составляют [0;1], то уровень активации нейрона D будет равен нулю, что и требуется для данной задачи. Выбирая второй вектор из таблицы, получим уровень активации для узла А [0; 0], а для узла В [1;1 ]. Взвешенная сумма этих значений для нейрона S составляет 0, а для нейрона D - 1. Аналогично можно проверить корректность функционирования сети для всех данных из таблицы. С точки зрения теории познания для сети встречного распространения можно предложить ассоциативную интерпретацию. Вернемся к рисунку. Обучение слоя Кохонена можно рассматривать как знакомство с условным стимулом, поскольку сеть изучает образы по мере их поступления. Обучение слоя Гроссберга — это связывание нейронов (безусловных стимулов) с некоторым откликом. В рассмотренном случае сеть обучится рассылать уведомление об опасности при ссответствии данных некоторому шаблону. После обучения система будет правильно реагировать на новые данные даже без участия учителя.


Дата добавления: 2015-11-30; просмотров: 69 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.006 сек.)