Отладка нейросетевой экспертной системы для офтальмологии

УДК 004:65

О.Н. Долинина, А.К. Кузьмин ОТЛАДКА НЕЙРОСЕТЕВОЙ ЭКСПЕРТНОЙ СИСТЕМЫ ДЛЯ ОФТАЛЬМОЛОГИИ

Предложено описание метода отладки нейросетевых экспертных систем применительно к системе для офтальмологии «Glaucoma Compliant». Приведены обнаруженные в ходе выполнения отладки ошибки системы, а также выработанные рекомендации по исправлению найденных ошибок.

Экспертные системы, отладка экспертных систем, нейронные сети.

O.N. Dolinina, A.K. Kuzmin DEBAGGING OF NEURAL NETWORK EXPERT SYSTEM FOR OPHTHALMOLOGY

The article contains description of neural network expert systems’ debugging method applied to ophthalmology system ‘Glaucoma Compliant’.

Detected expert system’s errors are provided as well as recommendations for errors fixing.

Expert systems, debugging, expert systems, neural networks.

Одной из важнейших проблем современной медицины является прогноз комплаент-ности пациента. Комплаентность - медицинский термин, который означает степень приверженности больных к назначенному лечению, связанную в первую очередь с эффективностью лечения и переносимостью проводимой терапии [1].

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

Для решения вышепоставленной задачи была разработана экспертная система (ЭС) «Glaucoma Compliant», в качестве системы принятия решений которой был выбран трёхслойный персептрон P [2] с нелинейной сигмоидной функцией активации нейронов. В качестве экспертов выступили сотрудники Клиники глазных болезней ГОУ ВПО СГМУ Каменских Т.Г., Щербинина И.В. В результате работы с экспертами было выделено множество входных факторов

F' = If/,f2,K,f', }, n' = 94.

Каждый фактор fi был представлен в виде совокупности входных нейронов [ft 1, ft2... fik}. В результате объединения совокупностей входных нейронов каждого фактора fi получили множество входных нейронов нейросети

F = Ifi,f2,K, fq}, q = 136.

Множество выходных классов O' состоит их двух классов:

O' = Io1,o2},

где ox - класс комплаентных пациентов, o2 - класс некомплаентных пациентов.

Для представления множества O на выходном слое сети оказалось достаточно одного нейрона O = |o1}. Для комплаентного пациента установим o1 = 1, для некомплаентного o1 = 0 . Из 300 имеющихся наблюдений 200 были использованы для создания обучающего множества L, 50 -для создания контрольного множества C, 50 - для создания валидационного множества V. Из 200 обучающих примеров множества L 109 соответствуют пациентам с доподлинно известной компла-ентностью, 91 - пациентам с доподлинно известной некоплаентностью. Количество нейронов на промежуточном слое персептрона P было выбрано равным 16. Персептрон P обучался методом обратного распространения ошибки [3]. Количество эпох составило 400. В результате обучения суммарная квадратическая ошибка E персептрона P по валидационному множеству V снизилась с 19,43 до 3,4. Точность классификации обученного персептрона составила 85%, что больше, чем точность классификации, требуемая от системы экспертами. Исходя из вышесказанного, можно сделать вывод об успешном обучении персептрона P.

Тестирование нейросети на валидационном множестве V выявило 7 случаев несовпадения результата, выдаваемого системой и реально наблюдаемого результата. Значение нейрона o1 для данных случаев оказалось в интервале o1 е [0.46,. 0.54]. Очевидно, что если o1 = 0.5 , то нейросеть не может отнести наблюдение к какому-либо классу. Экспертным путём было принято решение считать результат нейросети достоверным, если |o1 - 0.5 > 0.07.

При данном условии нейросеть не совершает ошибочной классификации на множестве V.

Однако обучение ЭС на множестве, сформированном экспертами, не гарантирует отсутствия ошибок при работе для определения комплаентности реальных пациентов. Причина в том, что эксперту свойственно забывать факторы, препятствующие установке выходных нейронов, что приводит к ошибке типа «забывание об исключении» [4]. Данная ошибка является наиболее общей и покрывает другие классы ошибок.

Важной частью отладки ЭС является генерация такого тестового набора Т, который вызовет ошибку типа «забывания об исключении». Под тестовым набором T будем понимать множество пар известных входных и соответствующих выходных векторов системы:

T = {< х 1,Y >,< X2,72 >,...,< Iw,Yw >}; Xt = |Х1,X2,...,Xp}, Y = Iy1,y2,...,y

Для решения задачи генерации тестового набора был применён следующий метод:

1. Извлечение из Р с помощью алгоритма GLARE [5] классифицирующих правил вида ЕСЛИ (f1 или f2 или... ) И (f3 или f4 или...) ... ТО g

Получено следующее классифицирующее правило:

ЕСЛИ

Экспериментально доказано, что данное правило корректно классифицирует 80% наблюдений из валидационного множества V, поэтому правило было признано адекватным исходной нейронной сети. Приведём список обозначений в правиле (5).

2. Построение И/ИЛИ графа G для (5) и построение логической сети для G (см. рисунок 1).

3. Построение экспертным методом множество кубов запрещённых комбинаций значений входных факторов Сz (табл. 2).

4. Построение тестового набора Т для логической схемы (рис. 1) при помощи метода PODEM, широко известного в технической диагностике [6]. Получившееся множество кубов тестов Т (после удаления повторяющихся кубов) представлено в табл. 3.

5. Вычитание из множества тестовых кубов, полученных после применения метода PODEM (табл. 2) множества кубов запрещённых комбинаций Cz (табл. 1). Получившееся итоговое множество кубов тестов (после удаления повторяющихся кубов) представлено в табл. 4.

Формирование результирующего тестового множества. Для каждой строки табл.3 был сформирован элемент тестового множества T, при этом, если в ячейке, соответствующей признаку fj содержалась 1, то признак fj устанавливался; если в ячейке, соответствующей признаку fj содержался 0 или X, то признак fj не устанавливался; значения для других входных факторов системы, не входящих в табл.3 устанавливались произвольным образом. В табл. 5 приведены полученные тесты (значения факторов, не входящих в табл. 3 для простоты опущены).

Таблица 1

Значения факторов правила

Обозначение Значение фактора

^8 Возраст = Молодой

^9 Возраст = Средних лет

^19 Хобби = Нет

^20 Хобби2 = Интеллектуальный труд

^23 Семейное положение = Холост

^35 Стаж работы на 1 месте = Менее 5 лет

^51 Заболевания ССС = Ишемическая болезнь

^53 Заболевания ССС = Дистония

^54 Другие заболевания = Есть

^58 Препараты по др. заболеваниям = 1 раз в день

^64 Длительность глаукомы = До 3 лет

^67 Стабильность состояния глаукомы = Стабильный процесс

^77 Количество скотом = Множественные

^79 Количество скотом = Расш. сл. пятна

^81 Кратность инстилл. антиглаук.капель = 1 раз в день

^86 Инстилл.др. гл. капель = Антибакт.

^88 Инстилл.др. гл. капель = Не назначено

^99 Асимметрия внутригл. давл. на парном гл. более 5 мм рт.ст.

^110 Др. заболеванияя, влияющие на зрение = Нет

f111 Др. заболевания, влияющие на зрение = Катаракта

^114 Инвалидность = По другому заболеванию

f 123 Число посещ. офтальмолога в год = 0;1 ;2

f 125 Число посещ. офтальмолога в год = Не назначалось

f 127 Проф. диспансеризация 1 раз в год = Не проводилась

^29 Понимание необх.100% инстилляции антигл. капель = Не назначено

f133 Понимание необх. посещения врача не реже 3-4 раз в год = Не назначено

Рис. 1. Логическая сеть для правила

Таблица 2

Список кубов запрещённых комбинаций значений факторов

8 9 о о 2 со 2 ю 3 15 со 5 5 СО 5 6 г- 6 г- 7 о 7 18 со 8 СО 8 о 9 о со 2 ю 2 г- 2 о 2 со 3

1 1 X X X X X X X X X X X X X X X X X X X X X X X X

X X X X X X X X 0 1 X X X X X X X X X X X X X X X X

X X X X X X X X X X X X 1 1 X X X X X X X X X X X X

X X X X X X X X X X X X X X X 1 1 X X X X X X X X X

X X X X X X X X X X X X X X X X X X 1 1 X X X X X X

X X X X X X X X 0 X X X X X X X X X X X 1 X X X X X

X X X X X X X X X X X X X X X X X X X X X 1 1 X X X

X X X X X X 0 0 0 1 X X X X X X X X X X X X X X X X

В табл. 2 символ 0 обозначает отсутствие данного признака, символ 1 - присутствие данного признака, символ X

- установка данного признака не важна.

Таблица 3

Множество кубов тестов для логической схемы

СО о о о оа со оа ю со ю со ю ю со ю со г- СО г- г- о г- СО со СО СО СО о о о - со 2 ю 2 г- 2 о 2 со 3

1 0 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 X 1 1 X 1 1 1

0 1 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 0 1 1 1 1 1 X 1 1 X 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 1 1 1 1 1 X 1 1 X 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 0 1 1 X 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 1 1 X 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 0 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 1 1 X 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 0 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 1 1 X 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 X 1 1 0 1 1 1

1 X 1 1 1 1 1 X 1 1 1 1 1 X 1 1 X 1 1 X 1 0 1 1 1 1

Таблица 4

Итоговое множество кубов тестов для логической схемы

СО о о о оа со оа ю со ю со ю ю СО ю со г- со г- г- о г- СО со СО СО СО о о о - со оа ю оа г- оа о оа со со

1 0 1 1 1 1 1 1 X 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

2 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

3 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

4 1 0 1 1 1 1 1 X 1 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1

5 1 0 1 1 1 1 1 X 1 1 1 1 1 0 1 1 1 1 0 1 1 0 1 1 1

6 1 0 1 1 1 1 1 X 1 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1

7 1 0 1 1 1 1 1 X 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

8 1 0 1 1 1 1 1 X 1 1 1 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1

Таблица 5

Итоговое множество тестов для логической схемы

со О) О) о с\а со с\а ю со ю со ю "3- ю со ю "3- С£> Г-» С£> Г-» О) Г4» аэ со аэ со аэ О) О) о л со с\а ю с\а Г-» с\а О) с\а со со

1 0 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

2 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

3 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

4 1 0 1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1

5 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 1 1 0 1 1 1

6 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1

7 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

8 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1

В ходе работы алгоритма PODEM до выхода схемы распространялось значение D, которое подразумевает 1 при исправной схеме и 0 при неисправной схеме. Это означает, что в случае корректной работы НС тестовые примеры табл.5 должны быть классифицированы нейронной сетью как относящиеся к классу o1 , то есть к классу комплаентных пациентов.

Тестирование показало, что НС выдаёт неверный результат на тестах 1 и 6 в табл. 5. В результате экспертного анализа выяснилось, что ошибка нейросети на тесте 1 связана с установкой исключительной комбинации входных факторов f9 (средний возраст) и f51 (наличие ишемической болезни сердца). Такая комбинация связана с наличием у пациента сильного эмоционального стресса, однако соответствующий входной фактор не был предусмотрен при обучении ЭС. Ошибка нейросети на тесте 6 связана с установкой исключительной комбинации входных факторов f111 (наличие катаракты) и f8 (молодой возраст). На практике такая комбинация в большинстве случаев связана лишь с начальной стадией катаракты, которая не обладает ярко выраженными симптомами, повышающими страх пациента перед последствием заболевания, а, следовательно, его комплаентность.

Исходя из вышеуказанных ошибок, обнаруженных при тестировании ЭС «Glaucoma Compliant», были составлены следующие рекомендации:

1. Включить в список входных факторов системы F такой фактор, как наличие сильного эмоционального стресса у пациента;

2. Включить в обучающее множество L примеры, соответствующие пациентам молодого возраста с наличием катаракты на более поздней стадии;

3. Переобучить систему на новом обучающем множестве L с новым набором входных факторов F.

ЛИТЕРАТУРА

1. Обращение к ресурсу http://www.consilium-medicum.com. от 4.12.2008.

2. Rosenblatt F. Principles of neurodynamics: Perceptrons and the Theory of Brain Mechanisms / F. Rosenblatt . New York : Spartan Books, 1962. 176 p.

3. Rumelhart D. Learning Representations by Back-propagating Errors / D Rumelhart, G. Hinton, R. Williams // Nature. Cambridge, 1986. Т. 323. P. 533-578.

4. Долинина О.Н. Разработка метода тестирования продукционных баз знаний экспертных систем с учётом ошибок типа “забывание об исключении” / О.Н. Долинина Саратов: 1997 г. Деп. в ВИНИТИ №678-B97. 171 c.

5. Gupta A. Generalized Analytic Rule Extraction for Feedforward Newrak Networks / A. Gupta, S. Park, S. Lam // IEEE Transactions on Knowledge and Data Ingeneering. 1999. 6 : Vol.

11. P. 60-68.

6. Goel P. and Rosales B. "PODEM - X": an automatic test generation system for VISI logic structures / P.Goel // Proc. 18th IEEE Design Automation Conf.. 1981. P.260-268.

Долинина Ольга Николаевна -

кандидат технических наук, доцент, заведущая кафедрой «Прикладные информационные технологии» Саратовского государственного технического университета им. Г агарина Ю. А.

Кузьмин Алексей Константинович -

аспирант кафедры «Прикладные информационные технологии» Саратовского государственного технического университета им. Гагарина Ю.А.

Статья поступила в редакцию 24.07.11, принята к опубликованию 12.10.11