УДК 004.032.26:681.518.54
ЧИСЛЕННЫЙ МЕТОД ГЕНЕРАЦИИ ТЕСТОВОЙ ПОСЛЕДОВАТЕЛЬНОСТИ КОНТРОЛЯ РАБОТОСПОСОБНОСТИ
НЕЙРОСЕТЕВЫХ СИСТЕМ
© 2013 г. Д.В. Маршаков, А.И. Зотов
Маршаков Даниил Витальевич - ст. преподаватель, кафедра «Вычислительные системы и информационная безопасность», Донской государственный технический университет. E-mail: daniil_marshakov@mail.ru
Зотов Алексей Иванович - канд. техн. наук, профессор, кафедра «Вычислительные системы и информационная безопасность», Донской государственный технический университета. E-mail: zotovai38@mail.ru
Marshakov Daniil Vitalievich - Senior lecturer, department «Computing systems and information security», Don State Technical University. E-mail: daniil_marshakov@mail.ru
Zotov Alexey Ivanovich - Candidate of Technical Sciences, professor, department «Computing systems and information security», Don State Technical University. E-mail: zotovai38@mail. ru
Рассматривается использование конгруэнтных процедур для генерации случайных, равномерно распределенных независимых чисел при синтезе тестов контроля работоспособности искусственных нейронных сетей. Предложен алгоритм синтеза тестовой последовательности на основе управляемого процесса расчета входных воздействий мультипликативным методом. Проведено экспериментальное исследование предложенного алгоритма на примере нейросетевой системы распознавания образов.
Ключевые слова: искусственные нейронные сети; тестирование; контроль работоспособности; конгруэнтные процедуры.
The paper deals with using the multiplicative congruence generator for generation a sequence of random numbers of even distribution and minimal correlation between successive values to use as tests for control of operability of artificial neural networks. The algorithm of generating the test sequence based on modified multiplicative congruence generator is given. Experimental investigation the algorithm for artificial neural network for Pattern Recognition is given.
Keywords: artificial neural networks; testing; operability control, congruential method.
Введение
Сфера применения искусственных нейронных сетей (ИНС) постоянно расширяется в связи с растущими потребностями в высокоскоростной обработке информации, которая достигается за счет массового параллелизма в нейросетях. Аппаратно реализованные нейросетевые системы обработки информации находят широкое применение в космических исследованиях, атомной и энергетической областях, системах военного назначения и других ответственных сферах, для которых основным требованием является безошибочность и высокая скорость принятия решений. Безошибочности принятия решений данного рода систем противодействуют отказы нейронов, объективно возникающие под воздействием внешней среды и влекущие за собой частичную или полную потерю функциональных возможностей нейронной сети.
На сегодня обеспечение требуемых показателей надежности нейросетевых систем обработки информации достигается проведением многих мероприятий, среди которых выделяют: разработку и модификацию обучающих алгоритмов [1], введение аппаратной и информационной избыточности [2], резервирование нейронов и связанных с ними весов с использованием мажоритарного голосования [3], проведение повторного обучения нейронной сети и т.д. При этом особое место занимает организация тестового контроля и функционального диагностирования [4], что связано в первую очередь с широким внедрением нейросетевой технологии в различные современные системы управления, где отказоустойчивость и свойство деградации нейросетей приобретают особое значение.
Построение тестов с минимальным количеством элементарных проверок и в то же время обеспечи-
вающих требуемую полноту проверки является важнейшей задачей контроля работоспособности систем обработки информации, в том числе и нейросетевых. Данные тесты представляются в виде минимальных совокупностей наборов значений входных параметров, при которых определяется техническое состояние ИНС в процессе её контроля. Наиболее часто при построении тестов контроля работоспособности ИНС в качестве наборов значений входных параметров используется совокупность входных векторов из обучающей выборки [5, 6]. Это во многом оправдано в связи с наличием для значительной выборки парных соответствий состояний ИНС множеств, соответствующих каждому из этих состояний наборов параметров.
Однако данный подход применим лишь на этапе разработки нейросетевых объектов, при условии, что дальнейшая эксплуатация данных объектов не предусматривает изменения параметров нейронной сети. Так, увеличение или уменьшение количества нейронов в скрытом слое сети, добавление в обучающую выборку новых данных и т.д. вызовет необходимость синтеза нового набора тестов для ИНС с новыми параметрами.
В целях расширения возможностей при построении тестов контроля работоспособности ИНС, независимо от наличия обучающей выборки и заведомо известных параметров сети, в данной работе предлагается алгоритм их синтеза, основанный на использовании последовательности равномерно распределенных, стохастических, независимых друг от друга чисел.
Конгруэнтные процедуры генерации
последовательности случайных чисел
Генерация последовательности входных воздействий такого рода достижима с помощью численных методов, среди которых на практике наиболее широко применимы алгоритмы вида:
Х+1 =Ф( X), (1)
представляющие собой рекуррентные соотношения первого порядка, для которых изначально заданы начальное число х0 и постоянные параметры. Поскольку для получения значений х используется программный подход, в основе которого лежат строгие формулы и алгоритмы, то такие последовательности являются псевдослучайными, однако они состоят из чисел, которые по своей сути являются детерминированными и обладают свойствами независимых, равномерно распределенных случайных величин [7].
Наиболее широкое применение среди алгоритмических процедур расчета последовательностей псевдослучайных чисел получили конгруэнтные процедуры генерации. При этом за счет своей простоты и минимального объема требуемой машинной памяти наиболее применимым является мультипликативный метод
реализаций конгруэнтных процедур. При генерации последовательностей псевдослучайных чисел с использованием данного метода, описываемых рекуррентным соотношением, функция (1) принимает вид:
xM = Xxi (modM), (2)
где i > 0 - номер элемента в последовательности; x,+i - вновь формируемое число; xi - предыдущее число; X - целочисленный множитель (мультипликативная константа); X > 1; M = 2n - длина машинного слова для n-разрядных целых чисел, M > (x0, X). В качестве x0 принимается начальное случайное целое число, x0 > 1.
Набор параметров X, M, х0 позволяет генерировать числа, удовлетворяющие определенным статистическим критериям. До своего повторения для всех практических целей эти числа оказываются последовательностью наблюдений равномерно распределенной случайной переменной [8].
Генерация тестовой последовательности ИНС с помощью конгруэнтных процедур
Выявление состояний отказа ИНС достигается посредством моделей дефектов нейронов и анализом выходной реакции нейросети при подаче на её вход последовательности векторов.
Проведенные в работе [9] исследования выявили, что среди известных моделей дефектов в качестве неисправностей, оказывающих наибольшее влияние на работоспособность ИНС, в частности на качество распознавания образов нейросетевым устройством, являются неисправности типа констант const = 0 и const = 1 на выходах нейронов. Таким образом, выявление неисправностей типа констант на выходах нейронов обеспечивает необходимую полноту контроля ИНС.
В качестве идентификационного показателя качества функционирования ИНС, при анализе её выходной реакции на моделируемые дефекты, принимается допустимое отклонение меры близости фактического выходного сигнала ИНС от его ожидаемого значения на величину, не превышающую заданного порога е [10]:
\d-y| <е , (3)
где d - ожидаемый выходной вектор на выходе исправной ИНС; y - фактический вектор, полученный на выходе ИНС.
Генерацию входной последовательности векторов при решении задачи синтеза тестов контроля работоспособности ИНС предлагается производить на основе рассмотренных конгруэнтных процедур. По своей природе ИНС работают в пространстве из множества входных параметров, по численности, как правило,
превосходящем количество нейронов в её слоях. Применительно к конгруэнтным процедурам разрядность входного вектора определяется количеством входных параметров п нейросети, увеличение которого приводит к возрастанию длины машинного слова М и, как следствие, количества итераций при генерации псевдослучайной последовательности и конечного числа её элементов.
Последнее также будет зависеть от первоначальных параметров соотношения (2), х0 и X, однако, как показали предварительные испытания, уже для п = 20, при рекомендованных в [7] начальных параметрах х0 = 7 (х0 = 0111 в двоичной системе счисления), и принятом X = 5 (или X = 0101), конечную длину периода последовательности становится определить затруднительно, в силу значительного объема вычислений.
Применительно к генерации тестовой последовательности, позволяющей выявлять наличие в ИНС дефектов, разумным представляется управляемый процесс расчета чисел мультипликативным методом конгруэнтных процедур.
С этой целью предлагается алгоритм, который состоит в следующем.
1. Инициализация ИНС.
2. Задание показателя качества функционирования ИНС (допустимого отклонения меры близости к вектору-эталону выходного сигнала от заданного порога в).
3. Задание исходных параметров конгруэнтной процедуры генерации чисел - х0 и X.
4. Расчет элемента последовательности Х1+ь согласно формуле (2).
5. Вычисление выходного вектора-эталона Yh ИНС при входном векторе х^+1
k
Yk (X+i ) = f WTf (w2Txi+i))
т т
где , - матрицы весов входного и скрытого
слоев соответственно.
6. Моделирование дефекта в j-м нейроне рассматриваемого множества нейронов Q, j е Q .
7. Вычисление выходного вектора Ук] ИНС с дефектом в ^м нейроне при входном векторе х^+1
(х+1 ) = /(щт/(щтх,+1)).
8. Расчет реакции ИНС
* = Ук (Х+1)" (х,+1)| .
9. Сравнение полученной на предыдущем шаге ошибки со значением допустимого отклонения в.
10. Если e не превышает е (e < е), то перейти к следующему нейрону множества Q и вернуться к п. 4.
11. Если e превышает е (e > е), то записать элемент xi+1 в массив test и удалить нейрон j из рассматриваемого множества нейронов Q (исключить данный нейрон из дальнейшего рассмотрения), перейти к следующему нейрону множества Q и вернуться к п. 4.
12. Если множество Q пусто (Q=0), то перейти к п. 11. В противном случае перейти к п. 13.
13*. Если элемент xi+1 отличается от первого элементом генерируемой последовательности x1 (xi+1 Ф Ф х1), то вернутся к п. 4. В противном случае (если xi+1 = х1) перейти к п. 14.
14. Привести ИНС в первоначальное состояние (без дефектов).
15. Удалить повторы в массиве test.
16. Составление отчета.
Выполнение п. 1 - 14 позволяет получить тестовую последовательность равномерно распределенных случайных чисел в двоичном коде. Поскольку алгоритм выполняется до тех пор, пока генерируемые входные воздействия не начнут повторяться, а п. 15 предусматривает удаление из последовательности повторов, возникающих в результате реакции ИНС на различные типы дефектов отдельных нейронов, то полученная в результате тестовая последовательность является минимальной.
Преимуществом такого подхода к синтезу тестов контроля работоспособности ИНС является снижение количества итераций, необходимых на генерацию последовательности случайных чисел - заведомо управляемый процесс получения требуемой последовательности.
Экспериментальная часть
Вычислительный эксперимент, показывающий применимость предложенного алгоритм, рассмотрим на примере нейросетевой системы распознавания электронных цифр технического устройства (рис. 1 а).
б
Рис. 1. Примеры электронных цифр: а - технического устройства; б - обрабатываемых ИНС
п.13 выполняется после генерирования x2 .
а
В качестве объекта исследования принимается программная модель двухслойной ИНС прямого распространения конфигурации 15-8-10, обученная алгоритмом обратного распространения ошибки для решения задачи распознавания цифр от 0 до 9, представленных черно-белыми изображениями размерностью 5^3 пикселей (рис. 1 б). Каждая закрашенная область изображения в составе входного вектора соответствует значению единицы, не закрашенная область - значению нуля. Структурная схема нейронной сети, выполненная средствами библиотеки NNTools среды MatLab, представлена на рис. 2.
Таблица минимальных тестов контроля работоспособности ИНС при моделировании неисправностей типа const = 0, const = 1
Рис. 2. Структурная схема ИНС, реализованная в среде MatLab
Моделирование дефектов проводится с дефектами, сводящимися к константным неисправностям типа const = 0, const = 1 на выходе нейронов скрытого слоя. Для каждого j-го (j = 1, 2, ..., M) нейрона скрытого слоя ИНС моделируются дефекты заданного класса с последующей генерацией последовательности случайных чисел посредством предложенного алгоритма.
В качестве показателя качества распознавания ИНС принимается допустимое отклонение меры близости к эталону выходного сигнала от заданного порога е, рассчитываемое согласно выражению (3). Значение порога е главным образом зависит от характера решаемой ИНС задачи и в ряде случаев может быть определено только экспериментально. Как показывают результаты предварительных испытаний, отклонение выходных значений ИНС в процессе распознавания более чем на 20 % влечет за собой потерю работоспособности данной нейросистемы. Таким образом, значение порога е = 0,2 на выходе нейросети при моделировании в ней дефектов позволяет достаточно полно идентифицировать состояние отказа ИНС.
Исходные данные для расчета принимались X = 111 в двоичной системе счисления, X0 = 101. При цикличном выполнении п. 4 - 11 алгоритма были получены результаты, представляющие собой последовательность входных векторов, позволяющих идентифицировать отказы нейронов при моделировании задаваемых классов дефектов. Процесс генерации составил 21 шаг, где каждый шаг - выполнение одного цикла алгоритма.
Все сгенерированные входные вектора были занесены в массив test. Удалив из массива test повторяющиеся наборы входных воздействий, получим минимальный тест контроля работоспособности ИНС, представленный в таблице.
Xi 1 1 1 1 1 1
X2 1 1 1 1 1 1
X3 1 0 1 1 0 0
x4 1 1 0 0 0 0
X5 0 0 1 0 1 1
X6 1 1 0 1 1 1
X7 0 1 0 0 0 1
X8 1 0 0 0 1 0
X9 0 1 1 1 0 1
X10 0 1 0 0 0 0
Xii 0 0 0 0 0 1
X12 0 0 0 1 1 0
X13 0 0 1 1 0 1
X14 0 0 0 1 0 0
X15 0 0 0 0 1 1
Данный набор тестов состоит из случайных, равномерно распределенных чисел и позволяет однозначно определить наличие в ИНС дефектов. Проверку сгенерированной последовательности на условие независимости векторов друг от друга рассмотрим ниже.
Исследования качества последовательности по критерию независимости случайных чисел
На практике наиболее часто для исследования качества последовательности по критерию независимости случайных чисел используется корреляционная функция [11]. Нормированная корреляционная функция определяется в виде отношения
R (т) =
R (т) d [ * ]
(4)
где D[X] - дисперсия данной выборки случайных чисел; R(т) - центрированная корреляционная функция, вычисляемая по экспериментальной формуле
1
R (т) = N-rg, -
(5)
здесь п - случайное число из заданной выборки случайных чисел; N - объем выборки; ^ - т) - диапазон вычисления корреляционной функции; т - область определения корреляционной функции.
N-т
Согласно расчетам по формуле (5), при величине сдвига т = 3 для 21 шага сгенерированной последовательности корреляционная функция R(т) = 0,0122. Значение дисперсии данной последовательности составило D[X] = 0,1152. Тогда, согласно формуле (4), значение нормированной корреляционной функции
R (х) = 00122 = 0,0703. у ; 0,1152
Полученное значение R (т) < 0,1, что удовлетворяет гипотезе корреляционной независимости, а значит, последовательность удовлетворяет первоначальным требованиям.
Таким образом, в результате расчета последовательности входных воздействий с помощью предложенного выше алгоритма, основанного на конгруэнтном мультипликативном методе, была получена входная последовательность двоичных случайных, равномерно распределенных независимых чисел.
Выводы
Предложенный в работе алгоритм позволяет получить универсальные тесты контроля работоспособности ИНС и может быть применен для нейронных сетей прямого распространения любой сложности, вне зависимости от сферы их приложений. Синтезируемые предложенным методом тесты являются минимальными, что обеспечивает повышение эксплуатационных характеристик нейросетевых устройств, в частности времени проведения тестирования.
В дальнейшем представляется перспективной модификация предложенного алгоритма для контроля работоспособности ИНС в условиях возникновения кратных дефектов.
Литература
1. Hammadi N.C., Ito H. A Leaming Algorithm for Fault Tolérant Feedforward Neural Networks // IEICE Trans. Information and Systems. 1997. Vol. E80-D, № 1. P. 21 - 27.
2. Бабкин Р.А. Разработка отказоустойчивой сети с использованием в нейроне динамической избыточности // Нейрокомпьютеры: разработка, применение. 2001. № 12. С. 22 - 27.
3. Phatak D.S. Complete and Partial Fault Tolerance of Feedforward Neural Nets // IEEE Transactions on Neural Networks. 1995. Vol. 6/2. P. 446 - 456.
4. Галушкин А.И. Нейронные сети: основы теории. М., 2010. 480 с.
5. Ременников Д.В. Метод диагностики искусственной нейронной сети // Молодежь и современные информационные технологии: сб. трудов VII Всерос науч.-практ. конф. студентов, аспирантов и молодых ученых. Томск, 25 - 27 февраля 2009 г. Томск, 2009. C. 181 - 182.
6. Маршаков Д.В., Фатхи В.А. Методика синтеза минимальных тестов контроля работоспособности искусственных нейронных сетей // Математические методы в технике и технологиях - ММТТ25: сб. тр. XXV Между-нар. науч. конф. Волгоград, 29-31 мая 2012 г. Волгоград, 2012. Т.10, секц. 12. С. 192 - 193.
7. Советов Б.Я., Яковлев С.А. Моделирование систем. М., 2005. 343 с.
8. Колдаев В.Д. Численные методы и программирование. М., 2009. 336 с.
9. Фатхи В.А., Маршаков Д.В., Галушка В.В. Исследование моделей дефектов искусственных нейронных сетей // Вестн. ДГТУ. 2012. № 3 (64). С. 65 - 71.
10. Маршаков Д.В., Фатхи В.А. Повышение качества распознавания образов в задачах агропромышленного комплекса // Состояние и перспективы развития сельскохозяйственного машиностроения: материалы 5-й между-нар. науч.-практ. конф. в рамках 15-й междунар. агропром. выставки «Интерагромаш-2012», Ростов н/Д., 29 февр. - 1 марта. Ростов н/Д, 2012. С. 281 - 282.
11. Афонин В.В., Федосин С.А. Моделирование систем: учеб.-практ. пособие. М., 2010. 231 с.
Поступила в редакцию
27 мая 2013 г.