УДК 004.056
О. Т. Данилова, В.В. Соколов
Омский государственный технический университет, г. Омск
ЛОГИЧЕСКАЯ СХЕМА РЕАЛИЗАЦИИ НЕЙРОННОЙ СЕТИ, АНАЛИЗИРУЮЩЕЙ ФУНКЦИЮ БЕЗОПАСНОСТИ В СИСТЕМЕ ИНФОРМАЦИОННОЙ ЗАЩИТЫ
Одной из главных целей нейронного моделирования является использование принципов построения и функционирования мозга для решения практических задач по обработке информации, трудно поддающихся решению другими средствами. Эта цель реализуется путем создания и использования нейронных конфигураций, которые имитируют некоторые свойства, присущие естественному интеллекту, такие как обобщение, обучение, распознавание, принятие решений и др. Такие конфигурации и называются искусственными нейронными сетями (ИНС). Одним из основных преимуществ искусственных нейронных сетей является то, что нейронные сети не линейны по свой природе и представляют собой метод моделирования, позволяющий устанавливать чрезвычайно сложные зависимости. Кроме того, нейронные сети справляются с «проблемой» размерности, которая не позволяет моделировать линейные зависимости для большого числа переменных [1]. Очевидно, что задача моделирования не характеризуется строгими математическими зависимостями между компонентами, ее исходные данные несовместимы по природе, типам, размерности. Принимаемое решение порой основывается на неполной, противоречивой информации. Все это приводит к необходимости имитации ассоциативного мышления, к моделированию методов искусственного интеллекта, основным средством которого являются нейронные сети.
Алгебра высказываний «один в один» ложится в основу нейронной сети. То есть, если в терминах алгебры высказываний можно описать некоторую систему, определяющую поведение, распознавание, управление или принятие решений, то практически без каких-либо преобразований этого описания можно получить структуру нейросети, соответствующую данной системе и имитирующую ассоциативное мышление. Подавая на ее вход информацию о сложившейся ситуации или изображение, на выходе получаем указание на результат распознавания или на необходимые действия.
Пусть в качестве входных данных будет являться совокупность дестабилизирующих факторов (ДФ), воздействующих на информационную систему. Следовательно, на первом этапе построения модели требуется составление полного (насколько это возможно) перечня потенциальных дестабилизирующих факторов £ = (51, ..., и исследование возможности их воздействия на систему обработки информации.
354
Следующий этап - описание в терминах алгебры логики реакций моделируемой системы защиты уравнениями вида:
Б1(Хь ..., Хм) = Уь . . . (1)
Б8(Х1, ..., Хм) = У8,
где X = х(^г), 1 = 1, . N логическая переменная - высказывание о наступлении события, принимающее значение ИСТИНА «1», если событие наступило, и ЛОЖЬ «0» в противном случае; ¥] , ] = 1, ... £, логическая функция указанных переменных - высказываний, значение ИСТИНА которой определяет принимаемое решение ^ . При этом считается, что каждая логическая функция ¥[ , 1 = 1, ... £, представляет собой дизъюнктивную нормальную форму (ДНФ). Это следует из того, что любая булева формула может быть приведена к ДНФ.
Затем следует построение граф-схемы выполнения системы логических функций (1),
вида:
Y,
X2
2
3
k YS
-N
Рис. 1. Граф-схема выполнения системы логических выражений
(И-ИЛИ сеть)
Вершины 1 i к этого графа соответствуют логическим элементам - конъюнкторам, а вершины Y, - Ys - дизъюнкторам. Построенная схема отображает функционально законченное устройство. Задавая на входе значения булевых переменных, характеризующих ситуацию, на одном из выходов получаем булево значение «1», указывающее на принимаемое решение.
Четвертым этапом формирования модели является построение нейронной сети той же структуры, что и граф-схема выполнения системы логических выражений (1) на третьем этапе (рис.1). Вершины Х1 - XN соответствуют нейронам-рецепторам входного слоя. От булевых значений их возбуждения перейдем к действительным - к оценкам достоверности соответствующих высказываний. В логической схеме каждой конъюнкции соответствует вершина из множества {1, ... k}. В нейронной сети эти вершины обозначают нейроны промежуточного или скрытого слоя. Нейроны Y1 - YS образуют выходной слой; их возбуждение указывает на принимаемое решение.
355
На вход искусственного нейрона поступает некоторое множество сигналов, каждый из которых является выходом другого нейрона. Каждый вход умножается на соответствующий вес, аналогичный синаптическому весу, и все произведения суммируются, определяя уровень активации нейрона [1]. Множество входных сигналов, обозначенных х1, Х2,..., xn, поступает на вход искусственного нейрона. Эти входные сигналы, в совокупности, обозначаемые вектором X, соответствуют сигналам, приходящим в синапсы биологического нейрона. Каждый сигнал умножается на соответствующий вес w1, w2,..., wn, и поступает на суммирующий блок, обозначенный Е. Каждый вес соответствует «силе» одной биологической синаптической связи. Множество весов в совокупности обозначается вектором W. Суммирующий блок, соответствующий телу биологического элемента, складывает взвешенные входы алгебраиче-
n
ски, создавая выход, который обозначается NET. Т.е.
NET = I,- Х, w{ . При инициализации
вес сформированных связей wi принимаем равным единице. Это корректно, т.к. веса связей будут откорректированы при применении алгоритма обучения.
JT,
*2
w2 V F NET _ г~,
L
Искусственный ней/н?н
^our-F(mT)
Рис. 2. Схема искусственного нейрона
Сигнал NET преобразуется активационной функцией F и дает выходной нейронный сигнал OUT. На рис. 2 блок, обозначенный F, принимает сигнал NET и выдает сигнал OUT. Искусственный нейрон полностью характеризуется своей передаточной функцией F, которая определяет зависимость сигнала на выходе нейрона от взвешенной суммы сигналов на его входах. В большинстве случаев эта функция является монотонно возрастающей и имеет область значений [-1,1] или [0,1].. Использование различных передаточных функций позволяет вносить нелинейность в работу нейрона и в целом нейронной сети.
Выбор передаточной функции в каждом конкретном случае определяется типом решаемой задачи. В нашем случае каждая конъюнкция высказываний в записи логических функций «1» есть совокупность событий, которая определяет ситуацию. Достаточно выбрать такую передаточную функцию, которая по некоторым правилам отбрасывала бы маловероятные «не опасные» ситуации, не требующие какой-либо ответной реакции, и оставляла бы те ситуации, которые требуют вмешательства в систему защиты. Этим требованиям соответствует пороговая функция активации:
{NET,
F (NET ) = ^ if NET > h [0, else
где h - порог активации нейрона. При моделировании конъюнктора с помощью нейрона для того, чтобы этот нейрон приходил в возбужденное состояние только после прихода сигналов
356
возбуждения от всех связанных с ним нейронов, необходимо задать ему высокое значение порога. Однако этот порог должен быть преодолен и в том случае, когда отдельные события, составляющие ситуацию, появляются с достоверностью, меньше единицы. В этом случае необходимо так подобрать пороги для всех нейронов, прообразами которых являются конъ-юнкторы, чтобы «нужные» нейроны возбуждались, а «побочные эффекты» исключались. Это требование приводит к важной исходной предпосылке создания нейросети, основанной на понятии существенности события.
На этапе проектирования нейросети выбирается некоторое значение h достоверности. Тогда событие является существенным, если его достоверность не ниже значения h.
На последнем этапе для решения поставленной задачи необходимо применить один из алгоритмов обучения. Наиболее целесообразным в нашем случае является использование алгоритмов «обучения с учителем», т.к. совокупность обучающих выборок будет являться желаемой реакцией системы на действия внешних факторов.
Библиографический список
1. Нейронные сети. STATISTICA Neural Network: Методология и технологии современного анализа данных / Под редакцией В. П. Боровикова. -М.: Горячая линия - Телеком, 2008. - 392 с.
2. Домарев В.В. Безопасность информационных технологий. Методология создания систем защиты / В.В. Домарев - К.: ООО ТИД Диа Софт, 2002. - 688 с.