Московский государственный университет путей сообщения
Опубликован: 12.09.2011 | Доступ: свободный | Студентов: 3746 / 306 | Оценка: 4.67 / 4.33 | Длительность: 18:55:00
Специальности: Программист
Лекция 5:

Развитие логической нейронной сети для распознавания объектов по заданному набору признаков

< Лекция 4 || Лекция 5: 123 || Лекция 6 >

Структурированная, не однослойная логическая нейронная сеть

Маша готова к компромиссу. Ее представления о идеальном мужчине расширяются. В качестве желанного жениха она готова рассмотреть не менее шикарный вариант \{блондин,\ рост\ от\ 180\ до\ 190\ см,\ нос\ "картошечкой",\ шляпа\ отсутствует\}.

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

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

(x_1 \land y_2 \land z_2 \land k_1) \to R_5 = <Воскликнуть:\ "Душечка!">.

Легко видеть, что при непосредственном связывании рецепторов с нейронами выходного слоя в однослойной сети задание (единицами) указанной ситуации приведет к активизации двух решений – R_1 и R_5.

Известны два способа ликвидации неоднозначности решений.

Первый способ заключается в строгом воспроизведении структуры нового логического выражения, определяющего решение R1:

(x_1 \land (y_2 \lor y_3) \land z_3 \land k_1) \lor (x_2 \land y_2 \land z_2 \land k2_) \to R_1. ( 5.2)

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

 Структурированная нейронная сеть

увеличить изображение
Рис. 5.3. Структурированная нейронная сеть

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

Преобразование структурированной нейросети в однослойную, допускающую неограниченное развитие

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

В этом случае можно записать два логических выражения, обусловливающих решение R_1: заданное первоначально и новое

x_2 \land y_2 \land z_2 \land k_2  \to R_1.

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

R_{11} = <Сладко\ помечтать\ о\ возможном\ счастье\ с\ высоким\ брюнетом>.

Второе вхождение R_1 может привести к аналогичному изменению:

R_{12} = <Сладко\ помечтать\ о\ возможном\ счастье\ с\ симпатичным\  блондином\ средней\ упитанности>

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

Развитие однослойной логической нейронной сети с функцией активации (5.1)

увеличить изображение
Рис. 5.4. Развитие однослойной логической нейронной сети с функцией активации (5.1)

И тут Машу впервые посещает мысль о действенности такого важного свойства – признака мужчины, как упитанность (рис.5.4; отражено решение R_{13} для признака высокой упитанности; веса, равные единице, не отмечены).

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

Следовательно, необходимо входной слой дополнить тремя рецепторами l_1, l_2 и l_3. Влияние нового фактора на принятие решений неодинаково. Так, ситуация <высокий брюнет с длинным носом, да еще и в шляпе>, приводящая к решению R_{11}, подавляет фактор упитанности, исключает какую-либо зависимость от нее. Поэтому к решению R_{11} должны вести связи от всех рецепторов, ведающих упитанностью.

Ситуация, приводящая к решению R_{12}, как говорилось ранее, напрямую учитывает фактор упитанности, но не так что уж полностью. Подумав, Маша решает учитывать среднюю упитанность с весом 0,8, а высокую – с весом 0,2. Решение R_2 она не ставит в зависимость от упитанности. Поэтому, как и к решению R_{11}, к решению R_2 должны вести связи от рецепторов l_1, l_2 и l_3. Решение R_3 зависит от низкой упитанности с весом единица. Вес высокой упитанности при принятии решений R_4 и R_5 также принимается равным единице.

Поясним необходимость введения связей от рецепторов l_1, l_2 и l_3 к нейронам, определяющим решения R_{11} и R_2. Ведь это может запутать разработчика СПР.

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

 Развитие однослойной логической нейронной сети с  функцией активации (5.3)

увеличить изображение
Рис. 5.5. Развитие однослойной логической нейронной сети с функцией активации (5.3)

Так, комбинация {x_1 = y_2 = z_3 = k_1 = 1} приводит к равному 4 значению возбуждения нейрона выходного слоя, соответствующего решению R_{11}.

Комбинация {x_2 = y_2 = z_2 = k_2 = l_2 = 1} приводит к значению возбуждения, равному 4,8, на выходе, соответствующем решению R_{12}. Это приводит к необходимости приведения величины возбуждения нейронов к одному диапазону изменения - делением на максимальную величину их возбуждения. Такого же эффекта можно добиться корректировкой передаточной функции.

При корректировке функции активации необходимо учесть следующие соображения.

  1. Неодинаковые значения максимального возбуждения нейронов выходного слоя снижают достоверность выводов, порождают их взаимное влияние. Это особенно сказывается при переходе к рассмотрению нечетко (на основе достоверности) задаваемых значений наблюдаемых признаков.
  2. Целесообразно повысить степень определенности влияния важных факторов на принятие наиболее ответственных решений в ущерб второстепенным факторам. Так, при принятии решения R_{12} средняя упитанность, учитываемая с весом 0,8, превалирует над высокой упитанностью, учитываемой всего лишь с весом 0,2. Следовательно, при корректировке параметров нейронной сети, для увеличения достоверности выводов, необходимо сделать выбор в пользу учета средней упитанности, невзирая на возможность дальнейшего подавления учета упитанности высокой.
  3. Необходимо позаботиться о том, что в будущем разрабатываемая нейронная сеть, возможно, образует лишь звено в длинной логической цепочке выводов в процессе общественной или хозяйственной деятельности Маши. Это означает, что выходной слой данной нейронной сети должен быть готов к превращению в рецепторный слой следующей нейронной сети для продолжения дедуктивной логической цепочки умозаключений. Например, в перспективе своей деятельности Маша наметила получить общественный социально-политический срез на основе функции алкогольной зависимости мужского населения родного города. Следовательно, значения возбуждения нейронов выходного слоя не должны превосходить единицы.

На основе этих соображений целесообразно выбрать следующую функцию активации:

f_i=\frac {\sum \limits_j \omega_j V_j}{n_i}
f_{Вых i}= \begin{cases}
f_i,\ при\ f_i \ge h}\\
0,\ в\ противном\ случае
\end{cases} ( 5.3)

Здесь n_i длина конъюнкции на входе нейрона. Она равна максимальному количеству активных входов i-го нейрона выходного слоя, участвующих в формировании конъюнкций, входящих в состав соответствующего логического выражения. Так (рис.5.5), для нейрона, определяющего решение R_{11}, n_{11} = 4; для нейрона, определяющего решение R_{12}, n_{12} = 5; n_{13} = 5; п_2 = 4; n_3 = п_4 = п_5 = 5.

В Лекции 13 предложена более точная функция активации, предполагающая применение в знаменателе выражения (5.3) суммы весов \sum \limits_j \omega_j . Тогда функция активации принимает вид:

f_i=\frac {\sum \limits_j \omega_j V_j}{\sum \limits_j \omega_j}
f_{Вых i}= \begin{cases}
f_i,\ при\ f_i \ge h}\\
0,\ в\ противном\ случае
\end{cases} ( 5.4)

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

< Лекция 4 || Лекция 5: 123 || Лекция 6 >
Кирилл Артамонов
Кирилл Артамонов

"Тогда как задать возбуждение рецепторов, если инспектор точно установил, что скорость автомобиля при наезде на пешехода была равна 114 км/час?
По-видимому, он рассуждает на основе близости скорости к границам указанного интервала: "Достоверность того, что скорость автомобиля составляет 100 км/час, я найду как (114 – 100):(120 – 100), а достоверность того, что скорость автомобиля составляет 120 км/час, я найду как (120 – 114):(120 – 100). Следует обратить внимание на то, что сумма найденных достоверностей равна единице."

Вопрос по расчёту скорости и сумме достоверности: этот математический (приведенный выше в виде контекста из материала лекции 1, страницы 3) метод справедлив к скоростным показателям выходящим за рамки диапазона 100-120. 
То есть, практически применяв к расчёту, скорости из диапазона 114-155, к диапазону 100-120, получал в результате суммирования достоверностей единицу.
Это похоже на то, как я видимые разные скоростные показатели своим рецептором, буду воспринимать линейно с помощью одного диапазона, так как он универсален. 
Правильно ли это ? 
И как манипулировать данными показателями, если есть универсальный диапазон, по результату выводящий в сумме постоянно единицу на разных скоростных показателях стремящегося.

Владислав Гладышев
Владислав Гладышев

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