Технология извлечения знаний из нейронных сетей: апробация, проектирование ПО, использование в психо...

Дипломная работа - Математика и статистика

Другие дипломы по предмету Математика и статистика

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

 

4.4.2. Построение иерархии продукционных правил

 

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

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

Для того, чтобы обнаружить некорректность в данных (либо в постановке задачи), предлагается исключать из таблицы данных наиболее “трудные” примеры (примеры с наибольшим значением функции оценки). Если сеть обучается правильно решать задачу и упрощается до довольно простой структуры, то исключение примеров производить не надо задача корректна. В противном случае можно предложить следующие варианты.

Зададимся требованием к числу правильно решенных примеров. Допустим, что нас устроит правильность решения 95% от общего числа примеров, присутствующих в таблице данных. Тогда построим процесс обучения и упрощения сети так, чтобы сеть, правильно решающая 95% примеров, считалась правильно обученной решать задачу и, соответственно, упрощалась с сохранением навыка решения 95% примеров. При упрощении сети примеры, входящие в состав 5% наиболее трудных, могут меняться. После завершения процесса упрощения, если в итоге получилась сеть, гораздо более простая, чем полученная для всего набора примеров логически прозрачная сеть, необходимо проанализировать наиболее трудные примеры там могут встретиться ошибки в данных (см., например, [17], стр. 14) либо эти примеры “нетипичны” по сравнению с остальными.

Если же сеть с самого начала не может обучиться правильно решать задачу, то будем исключать из таблицы данных наиболее трудные примеры до тех пор, пока сеть не сможет обучиться. Далее надо исследовать статистические различия между набором оставшихся и исключенных данных может обнаружиться, что отброшенные примеры образуют отдельный кластер. Так было при решении задачи нейросетевой постановки диагноза вторичного иммунодефицита по иммунологическим и метаболическим параметрам лимфоцитов. Только коррекция классификационной модели (из отброшенных данных сформировали третий класс в дополнение к двум изначально имевшимся) позволила обучить сеть правильно решать теперь уже измененную задачу ([17], стр. 15-16). Далее это даст более простой набор решающих правил, т.к. ранее сеть была вынуждена фактически запоминать обучающую выборку, а теперь классификационная модель соответствует естественной внутренней кластерной структуре объектов проблемной области.

Еще одна трудность может существовать при попытке решения задачи, для которой обратная задача некорректно поставлена в некоторых точках области определения например, из-за того, что в этих точках происходит смена описывающей данные зависимости. В зависимости от уровня некорректности, на некотором наборе обучающих точек сеть будет давать большую ошибку обучения по сравнению с ошибкой на других точках. Исследование поведения частной производной выходного сигнала сети по входному сигналу помогает определять области некорректности как границы смены вида решения. Если границы решения совпадают с примерами выборки с большой ошибкой обучения, то это говорит о том, что некорректность действительно существует и исходная нейросеть не может аппроксимировать поведение фукнции в области некорректности с требуемой точностью. Требуемую точность можно достичь увеличением размера сети (с соответствующим усложнением процесса ее интерпретации), но это нежелательно. Поэтому предпочтительнее подход [53], связанный с переходом от единственной сети к набору малых сетей, каждая из которых работает внутри своей области определения, а выбор той или иной сети осуществляется с помощью набора условных правил, сравнивающих значения признаков примера выборки с границами решения.

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

  1. обучение сети до распознавания заданного числа примеров обучающей выборки (или до решения всех примеров выборки с заданной точностью),
  2. упрощение сети,
  3. извлечение правил,
  4. фиксирование полученной минимальной структуры сети,
  5. возвращение в сеть удаленных на этапе упрощения элементов,
  6. увеличение требуемого числа правильно распознанных примеров (или усиление требований к точности) на следующей итерации цикла это добавит к полученной минимальной стру