На правах рукописи КУЗЬМИН Алексей Константинович МЕТОД ГЕНЕРАЦИИ ТЕСТОВОГО МНОЖЕСТВА ДЛЯ ОТЛАДКИ НЕЙРОСЕТЕВЫХ СИСТЕМ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ, ОСНОВАННЫХ НА ТРЁХСЛОЙНЫХ ПЕРСЕПТРОНАХ Специальность 05.13.01 – Системный анализ, управление и обработка информации (в технической отрасли) Автореферат диссертации на соискание ученой степени кандидата технических наук Саратов – 2013 Работа выполнена в Федеральном государственном бюджетном образовательном учреждении высшего профессионального образования «Саратовский государственный технический университет имени Гагарина Ю.А.» на кафедре «Прикладные информационные технологии» Научный руководитель – кандидат технических наук, доцент Долинина Ольга Николаевна Официальные оппоненты: Прохоров Сергей Антонович, доктор технических наук, профессор, ФГБОУ ВПО «Самарский государственный аэрокосмический университет имени академика С.П. Королева (национальный исследовательский университет)», заведующий кафедрой информационных систем и технологий Шишкин Вадим Викторинович, кандидат технических наук, доцент, ФГБОУ ВПО «Ульяновский государственный технический университет», декан факультета информационных систем и технологий Ведущая организация: Федеральное государственное бюджетное учреждение науки Институт проблем точной механики и управления РАН (г. Саратов) Защита состоится «23» декабря 2013 г. в 15.00 часов на заседании диссертационного совета Д 212.242.04 при ФГБОУ ВПО «Саратовский государственный технический университет имени Гагарина Ю.А.» по адресу: 410054, г. Саратов, ул. Политехническая, д. 77, ауд. 319/1 корп. С диссертацией можно ознакомиться в научно-технической библиотеке ФГБОУ ВПО «Саратовский государственный технический университет имени Гагарина Ю.А.». Автореферат разослан «_____» ноября 2013 г. Ученый секретарь диссертационного совета Алешкин Валерий Викторович 2 ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ Актуальность темы Методы обработки экспертной информации, положенные в основу систем поддержки принятия решений (СППР), в настоящее время приобретают все большее распространение. В слабоструктурированных задачах активно используются интеллектуальные СППР, использующие в качестве механизма принятия решений и обработки экспертной информации нейронную сеть. К большинству существующих нейросетевых СППР предъявляются повышенные требования к корректности функционирования, поэтому существенное значение приобретает процесс отладки, в котором проверяется компетентность системы, т.е. соответствие поставленных целей и генерируемых решений, а также исправление обнаруженных ошибок. С точки зрения выявления ошибок, наиболее эффективным методом отладки является тестирование, т.е. выполнение СППР на тестовом множестве, состоящем из известных входных и выходных данных. Тестовое множество должно включать такие примеры, которые обнаруживают наибольшее количество ошибок, и результат процесса тестирования определяется эффективностью методов создания тестового множества. В настоящее время широко используется подход, основанный на использовании определённого подмножества имеющихся примеров предметной области, которое не используется для обучения нейросетевого механизма (работы В. Цисильского, Дж. Жу, М. Балашубраманиана, Д. Паланивела и А.Рамалингама, О.Ю. Ребровой, О.А. Ишанова). В случае недостатка имеющихся примеров часто применяется экспертная генерация тестовых данных, при которой эксперт пытается сгенерировать такие примеры, которые могут вызвать ошибку СППР. Таким образом проводилась отладка СППР «Carbonate detector», комплекса экспертных систем проекта NASA Applied Information Systems Research Program, нейросетевых СППР обнаружения ошибок операторов производственного оборудования, разработанных в Nova Southeastern University. Во всех вышеперечисленных случаях генерация тестовых данных требовала больших материальных и временных затрат, однако отсутствовала гарантия, что сгенерированное тестовое множество обладает высокой обнаруживающей способностью. Основная проблема заключается в том, что из-за высокой сложности эксперту трудно вспомнить и учесть особенности предметной области. Д.А. Поспеловым показано, что большинство предметных областей характеризуются наличием исключительных ситуаций, не подчиняющихся общим закономерностям, и если такие ситуации не будут учтены экспертом при разработке интеллектуальной СППР, то последняя будет выдавать ошибочный результат. Ошибки такого типа являются наиболее сложными для обнаружения. В литературе описан разработанный О.Н. Долининой метод автоматизированного построения тестовых наборов, обнаруживающих ошибки, связанные с исключениями из закономерностей предметной области, для продукционных СППР. Описание подобных методов для нейросетевых СППР в литературе отсутствует. Современная нейроинформатика располагает большим количеством нейросетевых моделей, однако наибольшее распространение получила модель трёхслойного персептрона, являющаяся развитием модели персептрона Розенблатта. Это связано с тем, что большая часть прикладных задач может быть формализована как классификация входных векторов x1, x2,…,xn по m выходным классам o1, o2,…,om, для решения 3 которых применяются такие системы принятия решений, как многослойные персептроны. Таким образом, актуальной является разработка метода автоматизированной генерации тестов, способных обнаруживать ошибки, связанные с исключениями предметной области для нейросетевых интеллектуальных СППР, основанных на трёхслойных персептронах. Ряд исследований, в т.ч. работы Д.Т. Аксенова , В.Л. Березина, В.В. Болотина, посвящены важной для народного хозяйства технической задаче обнаружения неисправностей газоперекачивающих агрегатов с газотурбинным приводом. Показано, что задача характеризуется высокой сложностью технического объекта, а также наличием весьма сложных неявных зависимостей между причинами и видами неисправностей. Всё это делает невозможным применение для решения задачи известных формальных решений, а при использовании методов искусственного интеллекта возникает необходимость учёта наличия большого количества исключений в предметной области. Использование эффективных методов отладки СППР позволит снизить себестоимость разработки и повысить качество принимаемых решений. Объектом исследования являются методы обработки экспертной информации, представляемой нейросетевыми моделями, и выявления ошибок в экспертной информации. Предметом исследования является метод генерации тестов для отладки нейросетевых СППР, основанных на трёхслойных персептронах. Цель работы заключается в создании эффективного с точки зрения количества тестов метода построения тестовых данных, обнаруживающих ошибки типа «забывание об исключении» для нейросетевых СППР, основанных на трёхслойных персептронах. Для достижения вышепоставленной цели необходимо решить следующие задачи: 1. Построить схемотехническое представление ошибки типа «забывание об исключении» нейросетевой СППР, основанной на трёхслойном персептроне. 2. Разработать метод генерации тестов, обнаруживающих ошибки типа «забывание об исключении» нейросетевых СППР, основанных на информационной структуре трёхслойного персептрона. 3. Осуществить программную реализацию разработанного метода, проанализировать его эксплуатационные характеристики. 4. Для апробации метода разработать нейросетевую СППР, обнаруживающую неисправности газоперекачивающих агрегатов с газотурбинным приводом. 5. Проверить работоспособность предложенного метода на примере прикладных нейросетевых СППР. Методы исследования В диссертационной работе применяются методы искусственного интеллекта, технической диагностики и нейроинформатики, аппарат теории множеств, математической логики и комбинаторики, теория алгоритмов и графов. Научная новизна 1. Формальная модель ошибки интеллектуальной системы типа «забывание об исключении» распространена на нейросетевые СППР, основанные на трёхслойных персептронах. 4 2. Построено схемотехническое представление ошибки нейросетевой СППР типа «забывание об исключении», позволяющее применять для обнаружения таких ошибок методы технической диагностики. 3. Разработан алгоритм генерации тестового множества для логической схемы, отличающийся учётом возможности установки на входных линиях схемы комбинаций значений, соответствующих запрещённым комбинациям фактов предметной области нейросетевой СППР, что позволило снизить количество тестов в генерируемом тестовом множестве и сократить время выполнения алгоритма. 4. На основе алгоритма генерации тестового множества для логической схемы разработан метод генерации тестового множества для нейросетевых СППР, позволяющий создавать полные тестовые наборы, обнаруживающие ошибки типа «забывание об исключении». Практическая значимость работы. Предложенный метод генерации тестов имеет практическую значимость, т.к. позволяет формировать полное множество тестов, обнаруживающее ошибки типа «забывание об исключении» для нейросетевых СППР, основанных на модели трёхслойного персептрона. Автоматизация генерации тестов для отладки нейросетевых СППР позволяет сократить время на тестирование, повысив его качество, что в конечном итоге приводит к повышению потребительских качеств СППР и снижению их себестоимости. Разработанный метод применён для отладки СППР по диагностике неисправностей газоперекачивающих агрегатов ОАО «Газпром», что привело к повышению качества продукта за счет обнаружения и исправления ошибок типа «забывание об исключении». Также практическая апробация метода осуществлена на нейросетевой СППР «Glaucoma Complaint», прогнозирующей комплаентность офтальмологических пациентов Клиники глазных болезней СГМУ им. В.И. Разумовского. Внедрение результатов работы. Предложенные в работе метод и алгоритм реализованы в виде программного продукта «NNetwork Tester». Разработаны нейросетевые СППР «GASDETECT», обнаруживающая неисправности газоперекачивающих агрегатов с газотурбинным приводом, а также «Glaucoma Complaint», прогнозирующая комплаентность офтальмологических пациентов. На основе продукта «NNetwork Tester» проведено тестирование этих систем. Разработанное программное обеспечение успешно внедрено в эксплуатацию на предприятиях ОАО «Газпром», в Клинике глазных болезней СГМУ имени В.И. Разумовского, а также используется в учебном процессе СГТУ имени Гагарина Ю.А., что подтверждается соответствующими актами внедрения. Достоверность и обоснованность результатов работы определяются применением корректных методов теории искусственного интеллекта, нейроинформатики, технической диагностики, а также подтверждаются соответствующими экспериментами и актами внедрения результатов работы. Основные положения, выносимые на защиту 1. Формальная модель ошибок типа «забывание об исключении» нейросетевой СППР, основанной на трёхслойных персептронах. 2. Процедура перехода от информационной структуры нейронной сети к виду логической схемы, позволяющая применять разработанные в технической диагностике методы генерации тестовых наборов для тестирования нейросетевых СППР, основанных на трёхслойных персептронах. 5 3. Метод генерации полного тестового множества, обнаруживающего ошибки типа «забывание об исключении» нейросетевых СППР, основанных на трёхслойных персептронах. 4. Схемотехническое представление ошибки нейросетевой СППР типа «забывание об исключении». Апробация работы. Результаты работы докладывались на Международных и Всероссийских конференциях: «Молодые учёные – науке и производству» (Саратов, СГТУ, 2007); «Методы компьютерной диагностики в биологии и медицине» (Саратов, СГУ, 2008); «Математические методы в технике и технологиях-21» (Саратов, СГТУ, 2008); «Информатизация и информационная безопасность правоохранительных органов» (Москва, Академия управления МВД РФ, 2008); «Инновации и актуальные проблемы техники и технологий» (Саратов, СГТУ, 2009); «Математические методы в технике и технологиях -23» (Саратов, СГТУ, 2010); «Математические методы в технике и технологиях -24» (Пенза, ПГТА, 2011); на семинарах в ПГТА в 2012-2013 гг., а также на научных семинарах кафедры «Прикладные информационные технологии» СГТУ в 2008-2013 годах. Разработанное программное обеспечение прошло официальную государственную регистрацию в фонде алгоритмов и программ; программные продукты успешно внедрены в опытную эксплуатацию на предприятиях ОАО «Газпром», в Клинике Глазных болезней СГМУ имени В.И. Разумовского, а также используются в учебном процессе СГТУ имени Гагарина Ю.А. Публикации Результаты работы опубликованы в 17 изданиях, 5 из которых рекомендованы ВАК РФ. Объём работы Диссертация состоит из введения, четырех глав с выводами, заключения, списка литературы из 134 наименований и приложений. Объем работы составляет 163 страницы, в т.ч. 146 страниц основного текста. В работе 46 рисунков и 12 таблиц. СОДЕРЖАНИЕ РАБОТЫ Во введении обоснована актуальность темы диссертационной работы, определены её цель и задачи, дано её аннотированное изложение, а также основные положения, выносимые на защиту. В первой главе введены основные определения и обозначения, дана математическая модель многослойного персептрона как механизма принятия решений и обработки экспертной информации. Показано, что нейросетевые СППР широко применяются для плохо структурированных предметных областей и слабоструктурированных задач. На базе теоремы Колмогорова обосновано широкое распространение нейросетевой информационной структуры, основанной на персептронах, содержащих только один скрытый слой. Формализована задача классификации, которую решают нейросетевые СППР, как осуществление отображения: P X Y, (1) где X 1 , X 2 ,, X m - множество описаний объектов; X i [ x1 , x2 ,..., xq ] - описание i-го объекта; x j - значение j-го признака объекта; O o1 , o2 ,.., ot - множество выходных классов. Класс o j определяется выходным вектором нейронной сети Y [ y1 , y 2 ,..., yt ] , где y j { yi i j} . Приведён используемый в работе алгоритм обучения нейронной сети. Введено понятие ошибки нейросетевой СППР, решающей задачу j 6 классификации, как факт неверного отнесения X i [ x1 , x 2 ,..., x p ] , принадлежащего к классу o p : к классу ok наблюдения P( X i ) ok X i X , op (2) где P – функция, реализуемая нейронной сетью; X 1 , X 2 ,..., X n – множество наблюдений; O {o1 , o2 ,.., ot } – множество выходных классов. Помимо некорректной программной реализации нейросетевой СППР, а также сбоев информационных процессов времени выполнения нейросетевой СППР, выделены такие источники ошибок, как некорректно проведённый процесс машинного обучения нейросетевого механизма принятия решений и обработки информации, а также неучтённые особенности предметной области нейросетевой СППР. В первой главе формализованы ошибки нейросетевых СППР, связанные с источниками третьего и четвёртого классов. Показано, что наиболее сложными для обнаружения являются ошибки, связанные с особенностями предметной области, неучтёнными при разработке нейросетевой интеллектуальной СППР. В работе формализовано понятие исключения предметной области как ситуации, когда для некоторых входных данных нейросетевой механизм принятия решений на основании установленного набора фактов f 1 , f 2 ,..., f m некоторого наблюдения X l делает заключение о принадлежности X l к классу o k X l X o , которое оказывается неверным из-за того, что X l характеризуется некотоk рой комбинацией фактов: Fx f1 , f 2 ,..., f d , (3) установка которой однозначно свидетельствует о непринадлежности X l к классу ok : f1 f 2 ,..., f d X i X o . (4) k Наличие исключительной комбинации Fx является особенностью предметной области, и в случае, если такая комбинация останется неучтённой при разработке, нейросетевой механизм принятия решений будет формировать при её возникновении неверный результат: (5) P ( X l ) ok o на основании статистической близости X l к классу X . Ошибка нейросетевого механизма принятия решений и обработки экспертной информации нейросетевой СППР такого типа в первой главе формализована математически в следующем виде: Fx f1 , f 2 ,..., f d , f1 f 2 ,..., f d X i X o P( X i ) ok . (6) Наблюдение Xi, характеризующееся наличием комбинации (3), называется исключением, а ошибка (6) на таком наблюдении носит характер «забывания об исключении». Введено понятие степени ошибки типа «забывание об исключении» как количество фактов f1 , f 2 ,..., f d в комбинации (3). В первой главе вводится понятие статической и динамической отладки СППР с нейросетевым механизмом принятия решений и обработки экспертной информации. Показано, что ошибки вида (6) могут быть обнаружены только методом динамической отладки (тестированием), для которого необходимо тестовое множество вида T { X 1 , Y1 , X 1 , Y1 ,..., X h , Yh } , (7) k k 7 где Ti X i , Yi - i-й тест множества; X i {x1 , x2 ,..., xq } , Yi { y1 , y 2 ,..., yt } - i-й входной и выходной векторы нейронной сети соответственно. Множество T должно учитывать комбинации фактов, приводящих к ситуации (4). Существующие методы генерации тестовых наборов, основанных на имеющейся базе данных ретроспективных примеров, на модели предметной области или на экспертной генерации не гарантируют учёта всех комбинаций фактов, приводящих к ошибкам типа «забывание об исключении». Проведённый анализ литературы показал отсутствие автоматизированных, эффективных с точки зрения количества тестов и времени выполнения методов построения тестовых данных, обнаруживающих ошибки типа «забывание об исключении» для нейросетевых СППР, основанных на трёхслойных персептронах. Создание такого метода является целью настоящей работы. Также в первой главе конкретизированы задачи, которые необходимо решить для достижения цели. Первоочередной задачей работы является переход от нейросетевой информационной структуры к виду логической схемы, который возможен извлечением из нейронной сети набора решающих правил и непосредственным преобразованием последних к виду логической схемы. В первой главе проанализированы методы, связанные с преобразованием данных обучающего множества в нейросетевую информационную структуру. В главе также приведён анализ существующих методов извлечения экспертной информации из нейронных сетей, составлена их классификация. Для синтеза решающих правил на основе информационной структуры трёхслойного персептрона был выбран алгоритм обработки нейросетевой модели GLARE, предложенный А. Гуптой. Выходными данными являются продукционные решающие правила вида: ЕСЛИ fa ИЛИ fb ,..., ИЛИ fx ,…, (8) И fd ИЛИ fe ,…, ИЛИ fy ТО классi. В первой главе введено определение схемотехнического представления нейросетевой информационной структуры, формализованы его ошибки типа «константный 0» и «константная 1». Также приведён алгоритм синтеза тестов PODEM, обнаруживающих все константные ошибки логической схемы. Во второй главе показана процедура перехода от вида решающих правил, полученных из нейросетевой информационной структуры, к логической схеме. Пусть в результате процесса извлечения экспертной информации синтезировано решающее правило: ЕСЛИ (f1 ИЛИ f2) И (f3 ИЛИ f4) И (f5) ТО oi (9) или (f1 ˅f2) ˄ (f3 ˅ f4) ˄ (f5) = oi (10) Тогда правило (9) может быть представлено в виде логической схемы (рис. 1), которая является моделью исходной нейросетевой информационной структуры. . 8 Рисунок 1 - Схемотехническое представление правила (9) Исключительная ситуация, описанная в главе 1 в терминах нейросетевых СППР, в схемотехническом представлении формализуется как наличие набора линий Lx l1 , l 2 ,..., l k , при одновременной установке на которых значения 1, на выходной линии не должно устанавливаться значение 1 независимо от сигналов на других входных линиях. Ошибка типа «забывание об исключении» в данном случае формализуется как установка на выходной линии схемы значения 1, несмотря на одновременную установку значения 1 на линиях l1 , l 2 ,..., l k . Рисунок 2 - Пример схемы, учитывающей исключительную ситуацию предметной области Часть схемы, учитывающую исключительную комбинацию фактов f1 , f 2 ,..., f d и состоящую из конъюнктора, инвертора и соединяющих линий, предложено называть комбинационным блоком. На рис. 2 комбинационный блок включает элемент b4 , а также линии l 9 , l10 , l12 .Тогда формула (9) будет представлена: ЕСЛИ (f1 ИЛИ f2) И (f3 ИЛИ f4) И (f5) И НЕ (f1 И f3) ТО oi, (11) т.е. (f1 ˅ f2) ˄ (f3 ˅ f4) ˄ (f5) ˄ ¬(f1 ˄ f3) = oi. (12) Схемотехническое представление ошибки нейросетевой СППР типа «забывание об исключении» представляет неисправность типа «константная 1» на выходной линии комбинационного блока (неисправность l12 / 1 для схемы рис. 2). (f1 ˅ f2) ˄ (f3 V f4) ˅ (f5) ˄ ¬(f1 ˄ f3) = oi, (13) ¬(f1 ˄ f3)≡1. (14) Для построения множества тестов, обнаруживающих вышеописанные константные ошибки, может быть применён алгоритм PODEM, предложенный П. Гоуэлом и гарантирующий построение теста всегда, когда он существует, и описанный в первой главе настоящей работы. Алгоритм PODEM не учитывает возможности установки во входных векторах X 1 , X 2 ,..., X n тестов значений, соответствующих запрещённым комбинациям фактов 9 предметной области. Для решения этой задачи разработан алгоритм, особенности которого заключаются в следующем: Пусть множество запрещённых комбинаций входных фактов предметной области формализовано в виде наборов D-кубов C x , стек D-прохода DStack содержит элементы схемы b1 , b2 ,...,bn , а стек возврата SStack содержит линии l1 , l 2 ,...,l k : DStack b1 , b2 ,...,bn , SStack l1 , l 2 ,..., l k . Тогда на этапе D-установки, D-прохода или операции продвижения назад по мере построения входного вектора очередного i-го теста схемы на его основе будем строить входной D-куб Ri. При этом в случае C x R Ø. 1. На этапе D-установки извлечём из стека SStack очередную линию li и произведём операцию D-установки, рассматривая путь, начинающийся с линии li . 2. На этапе D-прохода извлечём из стека DStack очередной элемент bl и повторим для него операцию D-прохода. 3. На этапе продвижения назад прервём операцию продвижения назад для линии li , извлечём из стека SStack очередную линию l j и повторим для неё операцию продвижения назад. В случае, если ни по одной из линий в стеке SStack операцию возврата выполнить не удалось, то извлечём из стека DStack очередной элемент bl и повторим для него операцию D-прохода. Тестовое множество вида (7) предложено называть полным, если оно обнаруживает все устанавливаемые комбинации входных фактов, приводящих к ошибкам типа «забывание об исключении» всех степеней m, m 1,.., n , где n – количество входных фактов системы. Приведён метод генерации полного тестового множества нейросетевой СППР, обнаруживающего ошибки типа «забывание об исключении». 1. Установить искомое множество тестов пустым T=Ø. 2. При помощи алгоритма извлечения экспертной информации сформировать решающие правила R1 , R2 ,..., Rt вида (8) из информационной структуры персептрона P для каждого выходного класса o1 , o2 ,..., ot . 3. Экспертным методом сформировать множество кубов запрещённых комбинаций C x . 4. Рассмотреть решающее правило Ri для нерассмотренного выходного класса oi . 5. Преобразовать рассматриваемое правило к виду логической схемы S. 6. Применить алгоритм генерации тестов для схемы S, c учётом множества кубов запрещённых комбинаций C x . Получить полное тестовое множество T для S. 7. Рассмотреть очередной тест Ti T , Ti Ri , oi , где Ri - входной D-куб, oi – ожидаемое выходное значение схемотехнического представления, обнаруживающий возможную ошибку типа «забывание об исключении», связанную с одновременной установкой фактов f1 , f 2 ,..., f k . 8. Преобразовать куб Ri к входному вектору нейросетевого механизма принятия решений и обработки экспертной информации X i [ x1 , x 2 ,..., x q ] . 9. Экспертным способом определить выходной класс oi для Xi . 10. Создать i-й тест X i , oi и включить его в искомое тестовое множество T T X i , oi . 10 11. Перейти к шагу 4, рассмотрев решающее правило для ещё не рассмотренного выходного класса oj. 12. Завершить генерацию тестов. Предложенный алгоритм генерации тестов схемотехнического представления, находящийся в основе разработанного метода, позволяет создавать тест всегда, когда он существует, а также гарантирует обнаружение всех константных неисправностей схемы, что позволяет сделать вывод о том, что он гарантирует обнаружение всех ошибок типа «забывание об исключении» нейросетевых интеллектуальных СППР. Так как ошибки типа «забывание об исключении» являются наиболее общими и покрывают другие типы ошибок, то тестовое множество является полным. Формализован численный показатель эффективности предлагаемого метода как отношение: h n1 n! e n 2b , (15) m1 m!(n m)! i 1 i где n - общее количество входных фактов нейросетевой СППР; n - количество вход- ных фактов, представленных в решающем правиле S, извлечённом из информационной структуры P, n n ; m – степень ошибки типа «забывание об исключении», 0 m n ; h –мощность множества кубов запрещённых комбинаций входных фактов Сх; bi – количество значений 'X' в кубе i множества Сх. Эффективность e метода генерации тестов, основанном на комбинаторном переборе всевозможных комбинаций значений входных фактов F выразится: e n n b n 1 n! m!(n m)! , 0 m n. (16) m 1 h 2b i Наличие в знаменателе дроби (15) слагаемого i 1 , а также тот факт, что n n , позволяют сделать вывод о том, что значение выражения эффективности e (15) всегда больше, чем значение выражения для эффективности e (16). Отношение эффективности разработанного метода к эффективности метода, основанного на комбинаторном переборе всевозможных комбинаций значений входных фактов F, тогда выразится следующим образом: n 1 h n1 n! n! e 2b . (17) e m1 m!(n m)! m1 m!(n m)! i 1 i Отметим, что при экспертной генерации тестов полученное тестовое множество T может считаться гарантированно полным только в том случае, когда эксперт генерирует всевозможные комбинации значений входных фактов. Поэтому только при данном условии эффективность используемого экспертного метода генерации тестов может быть выражена аналитически, причём будут справедливы формулы (16), (17). Последнее позволяет сделать вывод о том, что разработанный метод имеет эффективность выше, чем другие экспертные методы. В заключение во второй главе приведён пример определения показателя эффективности разработанного метода, а также пример его применения для нейросетевой интеллектуальной СППР. Третья глава посвящена исследованию эксплуатационных характеристик разработанного метода. Приводится построение зависимости времени генерации тесто11 вых наборов t от количества нейронов на входном слое q, промежуточном слое t`, выходном слое p, а также от размера обучающего множества l. Зависимость ln(t) от q носит линейный характер ln( t ) aq b (рис. 3). Методом наименьших квадратов определены коэффициенты a и b: bˆ cov(ln(t ), q ) D(q ) n 1 n , ˆ 1 aˆ ln(t )i b q n i 1 n i 1 (18) где cov(ln(t ), q) 1 n 1 n 1 n q 420,7; ln( t ) q ln( t ) i i n i 1 n i 1 n i 1 D(q) M q 2 (M q) 2 51616,8; 1 n 1 n ln( t ) 8 , 57 ; q 375. i n i 1 n i 1 (19) (20) Тогда aˆ 0,008; bˆ 1,57 . В этом случае: ln( t ) 0,008q 1,57; t e0,08q1,57 . (21) Время генерации тестов t, ln(с) Таким образом, построенная при исследованиях зависимость t(q) носит нелинейный характер и может быть приближённо описана экспоненциальной функцией вида (21). При размере входного слоя до 600 нейронов время генерации тестов не превышает 10 секунд. Большинство существующих нейросетевых СППР содержат до 600 нейронов на первом слое, что позволяет сделать вывод о практической применимости разработанного метода. Количество нейронов на входном слое q, ед. Рисунок 3 - Зависимость времени генерации тестов от размера входного слоя Аналогичным образом построены зависимости t(q), t(t`), t(p), в результате была подтверждена гипотеза об их линейном характере. Теоретические результаты работы, а также их практическая реализация в виде комплекса программ могут быть применены для широкого круга прикладных областей. В четвёртой главе описываются применение и проверка работоспособности разработанного метода генерации тестов, которая проводилась на нейросетевой СППР «GASDETECT», а также на нейросетевой СППР «Glaucoma Complaint». 12 СППР «GASDETECT» осуществляет обнаружение неисправностей газоперекачивающих агрегатов с газотурбинным приводом. Структура «GASDETECT» приведена на рис. 4. Исходя из практических требований, СППР носит гибридный характер, так как сочетает функции принятия решений и информационно-справочной системы. Описаны её структура (рис. 4) и функциональность. Обозначения: net- нейронная сеть формата .net; set – обучающее множество формата .set; tset – тестовое множество формата .set; сset – контрольное множество формата .set; setmeta – метаданные обучающего множества формата .setmeta; rules – продукционные правила. Рисунок 4 - Структура нейросетевой СППР «GASDETECT» Параметры предметной области СППР «GASDETECT» (множество входных признаков, количество обучающих примеров и т.п.) приводятся в приложениях. В качестве механизма принятия решения и обработки экспертной информации выступает трёхслойный персептрон с 110 нейронами на входном слое, 14 на промежуточном и 18 на выходном слое. Персептрон обучался методом обратного распространения ошибки, длительность обучения составила 340 эпох. После успешного машинного обучения нейросетевого механизма экспертным способом сформировано множество запрещённых комбинаций фактов Cx и применён разработанный метод генерации тестов. Множество запрещённых комбинаций, набор извлечённых из нейросетевой информационной структуры решающих правил, соответствующее схемотехническое представление и тестовое множество приведены в главе 4. Сгенериро13 ванное тестовое множество позволило выявить ошибки типа «забывание об исключении», описание и экспертная оценка которых даны в главе 4 настоящей работы. После завершения процесса отладки нейросетевая СППР «GASDETECT» успешно внедрена в эксплуатацию. Разработанный метод генерации тестов, а также реализующее его программное обеспечение прошли практическую апробацию на нейросетевой СППР «Glaucoma Complaint», которая решает актуальную медицинскую задачу прогноза комплаентности офтальмологических пациентов. В качестве механизма принятия решений выступает персептрон с одним скрытым слоем и 136 нейронами на входном слое. Полное описание структуры СППР, её входных факторов, полученных экспертным способом множества запрещённых комбинаций признаков Cx, процесса генерации тестов, а также полученные результаты тестирования приведены в главе 4 настоящей работы. В заключении приведены основные результаты диссертационной работы и выводы. ЗАКЛЮЧЕНИЕ И ВЫВОДЫ 1. В работе формальная модель ошибки интеллектуальной системы типа «забывание об исключении» распространена на нейросетевые СППР, основанные на трёхслойных персептронах. 2. Построено схемотехническое представление ошибки нейросетевой СППР типа «забывание об исключении», позволяющее применять для обнаружения таких ошибок методы технической диагностики. 3. Показано, что ошибка типа «забывание об исключении» нейросетевой СППР соответствует константной неисправности соответствующего схемотехнического представления нейросетевой информационной структуры. 4. Разработан алгоритм генерации тестового множества для логической схемы, отличающийся учётом возможности установки на входных линиях схемы комбинаций значений, соответствующих запрещённым комбинациям фактов предметной области нейросетевой СППР, что позволило снизить количество тестов в генерируемом тестовом множестве и сократить время выполнения алгоритма. 5. На основе алгоритма генерации тестового множества для логической схемы разработан метод генерации тестового множества для нейросетевых СППР, позволяющий создавать полные тестовые наборы, обнаруживающие ошибки типа «забывание об исключении». 6. Разработан критерий оценки эффективности предложенного метода и показано, что он имеет эффективность выше, чем любой другой экспертный метод генерации тестов для нейросетевых СППР. 7. Выявлен экспоненциальный характер зависимости времени генерации тестов от количества нейронов на входном слое нейросетевой структуры, а также линейный характер зависимости времени от количества нейронов на скрытом, выходном слое и от количества примеров в обучающем множестве. 8. Разработана нейросетевая СППР «GASDETECT», решающая важную техническую задачу обнаружения неисправностей газоперекачивающих агрегатов с газотурбинным приводом, а также нейросетевая СППР «Glaucoma Complaint», решающая актуальную медицинскую задачу прогноза комплаентности пациентов. Системы были протестированы с использованием разработанного метода, что позволило выявить их ошибки типа «забывание об исключении». 14 В итоге достигнута главная цель работы: разработан эффективный с точки зрения количества тестов и времени выполнения метод построения тестовых данных, обнаруживающих ошибки типа «забывание об исключении» для нейросетевых СППР, основанных на трёхслойных персептронах. ОСНОВНЫЕ РЕЗУЛЬТАТЫ, ИЗЛОЖЕННЫЕ В ДИССЕРТАЦИИ, ОПУБЛИКОВАНЫ В РАБОТАХ: Публикации в изданиях, рекомендованных ВАК РФ 1. Кузьмин А.К. Применение методов технической диагностики для отладки баз знаний нейросетевых экспертных систем / А.К. Кузьмин, О.Н. Долинина // Информационные технологии. 2009. №2(150). С. 34-38. 2. Кузьмин А.К. Особенности создания экспертных систем, основанных на нейросетевом представлении знаний / А.К. Кузьмин, О.Н. Долинина // Вестник Саратовского государственного технического университета 2009. №2(33). С. 266-272. 3. Кузьмин А.К. Метод генерации тестов для отладки нейросетевых экспертных систем / А.К. Кузьмин, О.Н. Долинина // Вестник Тамбовского государственного технического университета. 2010. №3. С. 34-45. 4. Кузьмин А.К. Отладка искусственной нейросети, основанной на трёхслойном персептроне, на примере экспертной системы для офтальмологии / А.К. Кузьмин, О.Н. Долинина // Вестник Астраханского государственного технического университета. Серия: Управление, вычислительная техника и информатика. 2011. №2. С. 80-90. 5. Кузьмин А.К. Отладка нейросетевой экспертной системы для офтальмологии / О.Н. Долинина, А.К. Кузьмин // Вестник Саратовского государственного технического университета. 2011. №4(62). Вып 4. С. 248-253. Публикации в других изданиях 6. Кузьмин А.К. Задачи прогноза развития нестабильной стенокардии методом нейронной сети / А.К. Кузьмин, О.Н. Долинина, А.В. Оуграбко, А.О. Юдин // Технологии Интернет – на службу обществу: сб.статей по материалам Всерос. науч.-практ. конф. Саратов: СГТУ, 2006. С. 133-137. 7. Кузьмин А.К. Прогноз комплаентности методом нейронных сетей у кардиологических больных / А.К. Кузьмин, О.Н. Долинина, А.В. Оуграбко // Молодые учёные – науке и производству: материалы конф. молодых учёных / под ред. А.А. Слепухина. Саратов: СГТУ, 2007. С. 113-116. 8. Кузьмин А.К. Нейросетевой подход к решению задачи комплаентности пациентов / А.К. Кузьмин, О.Н. Долинина, В.В. Тарасова // Методы компьютерной диагностики в биологии и медицине – 2008: материалы Ежегодной Всерос. науч. школысеминара / под ред. Д.И.Усанова. Саратов: Изд-во Сарат. ун-та, 2008. С. 72-75. 9. Кузьмин А.К. Нейросетевой подход к решению проблемы комплаентности пациентов / А.К. Кузьмин, О.Н. Долинина, В.В. Тарасова // Информатизация и информационная безопасность правоохранительных органов: сб. тр. XVII Междунар. практ. конф. М.: Академия управления МВД России, 2008. С. 486-489. 10. Кузьмин А.К. Контроль качества баз знаний нейросетевых экспертных систем / А.К. Кузьмин, О.Н. Долинина // Математические методы в технике и технологиях – ММТТ-21: сб. тр. ХХI Междунар. науч. конф.: в 4 т. / под общ. ред. В.С. Балакирева. Саратов: СГТУ, 2008. Т.2. Секции 2,6. С. 268-270. 15 11. Кузьмин А.К. Адаптация нейронной сети для алгоритма построения тестов / А.К. Кузьмин, О.Н. Долинина // Инновации и актуальные проблемы техники и технологий: материалы Всерос. науч.-практ. конф. молодых учёных: в 3 т. / под общ. ред. А.А. Большакова. Саратов: СГТУ, 2009. Т.1. С.169-171. 12. Кузьмин А.К. Метод построения тестов для отладки нейросетей на основе технической диагностики / А.К. Кузьмин, О.Н. Долинина // Математические методы в технике и технологиях – ММТТ-23: сб. тр. XXIII Междунар. науч. конф.: в 10 т. / под общ. ред. В.С. Балакирева. Саратов: СГТУ, 2010. Т.6. Секции 6, 7. С. 38-41. 13. Кузьмин А.К. Классификация алгоритмов извлечения правил из искусственных нейронных сетей / А.К. Кузьмин, О.Н. Долинина, К.Д. Васюк // Инновации и актуальные проблемы техники и технологий: материалы Всерос. науч.-практ. конф. молодых учёных: в 2 т.Саратов: СГТУ, 2010. Т.1. С. 21-23. 14. Кузьмин А.К. Метод генерации тестов для отладки нейросетевых экспертных систем с учётом ошибок типа «забывание об исключении» / А.К. Кузьмин, О.Н. Долинина // Телематика’2011: тр. XVIII Всерос. науч.-метод. конф. СПб.: НИУ ИТМО, 2011. Секция A. С. 42-46. 15. Kuzmin A. Test set generation method for debugging of neural network-based expert systems / О. Dolinina, А. Kuzmin // International Conference on Information Technologies 2012: Information and Communucation Technologies in Education, Manufacturing and Research. Saratov, 2012. P. 43 16. Кузьмин А. Генерация нейронных сетей при помощи генетического алгоритма и клеточного кодирования / А. Кузьмин, А. Сотенко // Материалы 51-й Междунар. науч. студ. конф. Новосибирск: Новосиб. гос. ун-т, 2013. С. 218. 17. Кузьмин А.К. Проблема тестирования нейросетевых интеллектуальных информационных систем / А. Кузьмин // Проблемы управления в социально-экономических и технических системах. Саратов: ИЦ «Наука», 2013. С. 50 Свидетельства о регистрации программ 18. Программа реализации нейросетевого эмулятора NNetwork. Свидетельство об официальной регистрации программы для ЭВМ № 2007615261 / А.К. Кузьмин О.Н. Долинина, А.В. Оуграбко. 19. Экспертная система «Glaucoma Complaint». Свидетельство об официальной регистрации программы для ЭВМ № 2010615142 / А.К. Кузьмин, О.Н. Долинина, В.В. Тарасова, Т.Г. Каменских, И.В. Щербинина. 20. Программа NNetwork Tester. Свидетельство об официальной регистрации программы для ЭВМ № 2011610038 / А.К. Кузьмин, О.Н. Долинина. Подписано в печать 18.11.2013 Формат 60х84 1/16 Бум. офсет. Усл. печ. л. 1,0 Уч.-изд. л. 1,0 Тираж 100 экз. Заказ 39 ООО «Издательский Дом «Райт-Экспо» 410031, Саратов, Волжская ул., 28 Отпечатано в ООО «ИД «Райт-Экспо» 410031, Саратов, Волжская ул., 28, тел. (8452) 90-24-90 16