скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

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

1.   Определение "границ решения" – разбиение диапазонов значений непрерывных входных признаков на поддиапазоны, внутри которых правила принятия решения будут различаться. Работа ведется на уже обученной сети. Для каждого i-го входного сигнала строится график показателя чувствительности выходного сигнала сети к изменению i-го сигнала в точке x, из диапазона значений сигнала: , где j – номер примера обучающей выборки, Oj(i) – выходной сигнал сети при замене значения i-го входного сигнала j-го примера на заданную величину. Входные сигналы, содержащие границы решения, будут иметь высокие пики на своих графиках (соответствующие большим значениям производной выходного сигнала). Неинформативные сигналы пиков иметь не будут, высота их графиков будет малой.

2.   Анализ чувствительности выхода к входу для определения причинно-следственной связи – путем вычисления показателя значимости входа как суммы по всем примерам выборки модуля разностной аппроксимации частной производной выходного сигнала по входному. Формула аналогична накоплению показателей значимости в норме "сумма модулей" [17,26], но основана на разностной аппроксимации производной выходного сигнала сети по входному. Самостоятельного значения этот этап не имеет, используется внутри этапа 3.

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

Аналогичный подход к определению границ решения на основе анализа производных выходного сигнала сети (именно выходного сигнала, а не функции качества) по входным сигналам использован в [59].

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

Наиболее недавние работы [62,63] предлагают свободное от семантики, полуавтоматизированное определение числа и границ диапазонов значений. В [62] предлагается следующий процесс извлечения знаний:

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

-           Наращивание нейронной сети над сформированным набором слингвистических переменных – до тех пор, пока добавление нейронов не будет повышать точности прогноза сети.

-           Оптимизация правил путем упрощения сформированного логического выражения и/или сокращения числа лингвистических категорий путем их объединения. На новом наборе лингвистических переменных может быть повторен предыдущий шаг построения сети и т.д. до сходимости процесса.

Более подробно механизм определения диапазонов рассмотрен в [63]. Функция принадлежности формируется как разность выходных сигналов двух сигмоидных нейронов с разными значениями весов неоднородных входов  и одинаковыми (единственными) входными сигналами с одинаковыми же весами синапсов. Т.е. таким образом кодируется лингвистическая переменная для интервала . Если этот разностный сигнал используется далее с отрицательным весом, то лингвистическая переменная получается для интервала . Одна сигмоида может кодировать переменную ³a0 или £a0. Фактически, предлагается строить дополнительный кодирующий слой нейронов (самый первый), где для каждого непрерывнозначного входного сигнала будут иметься несколько пар нейронов (их обучение должно идти с сохранением одинаковых значений весов синапсов в каждой паре), и два дополнительных нейрона для представления лингвистических переменных вида ³a0 или £a0. Обучение нейросети и контрастирование такого слоя окончательно сформирует интервалы для лингвистических переменных, а их число будет оптимизировано по сравнению с исходным числом кодирующих нейронов для каждого сигнала.

4.1.2. Методы извлечения знаний параллельно с обучением нейросети

Отдельные методы опираются на процесс обучения нейросети.

В [64] исследуется возможность применения "структурного обучения" и его модификаций [28-33] не только как метода контрастирования синапсов, но и как метода извлечения знаний. Подчеркивается необходимость упрощения сети для получения более компактного и понятного набора правил. Предложено построение иерархии правил – выделение сначала доминантных правил, а затем дополнений и исключений из правил (или, другими словами, правил, определяющих основные зависимости, и правил, которые уточняют детали). Процесс – установка сравнительно большого значения величины параметра регуляризации и обучение сети до получения простой структуры, запись правил (наиболее доминантных) по полученной сети, фиксация и выведение из обучения полученной структуры сети (ненулевых весов синапсов), уменьшение значения параметра регуляризации, обучение сети (чтобы достигнуть большей точности решения, некоторые ранее отконтрастированные синапсы получат ненулевые веса и сформируют иерархию правил уровнем ниже), и запись дополнительно сформированных менее доминантных правил и т.д. до тех пор, пока суммарный набор правил (именно набор правил, а не нейросеть) не будет работать на обучающей/тестовой выборке с заданной точностью.

Однако процесс выбора начального значения параметра регуляризации и стратегии его уменьшения неоднозначен. Вдобавок, используемая в [64] оценка МНК может приводить к избыточной сложности набора правил для сетей-классификаторов. Также не обсуждается механизм собственно записи правил (тестовый пример в [64] работал с булевыми входными переменными) обсуждается только механизм упрощения сети для формирования структуры правил, отранжированных по шкале общности (доминирования) – детализации.

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

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

4.1.3. Методы извлечения знаний из обученной нейросети

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

В [69] рассматривались похожие идеи, но с анализом порождаемых на обучающей выборке промежуточных сигналов нейросети величин активации нейронов. Рассматривалась ситуация активации/неактивации нейрона при конкретных комбинациях значений бинарных входных сигналов нейрона. Строились правила вида "M of N", описывающие накладываемые на значения входных сигналов условия для получения того или иного выходного состояния нейрона. При этом при записи правил отсеивались те входные сигналы нейрона, изменение значений которых не приводит к изменению выходного состояния при фиксированных значениях других входов.

MofN-правила – продукционные правила вида:

"ЕСЛИ хотя бы / ровно / по меньшей мере M из N условий C1, C2,..,CN выполнены, ТО…, ИНАЧЕ…"

Такие правила более гибки чем простейшая форма "если…, то…".

В алгоритме [70] извлекаются правила простейшего вида, вдобавок содержащие в левой и правой частях правила только по единственному атрибуту. Это приводит к необходимости дальнейшей оптимизации и переформулирования получающегося большого количества простых продукционных правил, например, в набор меньшего числа правил вида MofN.

В [71] предлагается метод построения многошаговой схемы логического вывода, где на каждом шаге вывода могут использоваться как концепты предыдущего шага, так и концепты всех более ранних шагов и первоначальные входные данные – это отличает предложенный метод от большинства других методов, где в формировании концептов некоторого уровня участвуют только концепты предыдущего уровня. Здесь концепты формируются в ходе просмотра обучающей выборки путем объединения встречающихся 2 и более раз комбинаций значений дискретных входных признаков в величину с некоторым значением, которой можно дать лингвистическое описание. После порождения концепта он начинает участвовать в формировании концептов следующего уровня наряду со всеми ранее сформированными концептами.

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

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

Именно как методы уточнения имеющихся априорных знаний первоначально были представлены методы [69,70,72-74]. При этом в нейросеть встраивается имеющийся набор правил вывода, который не должен обязательно быть ни полным, ни непротиворечивым. Правила оперируют бинарными или номинальными величинами, входные/промежуточные сигналы реализующей эти правила нейросети тоже делаются квантованными. Для обработки входной информации каждая непрерывнозначная величина разбивается пользователем на несколько интервалов. Нейросеть "достраивается" до полного размера набором связей с небольшими весами и набором добавочных нейронов. После обучения сети извлекаются откорректированные правила логического вывода вида M of N. Высокая или низкая активация нейронов интерпретируется как истинное или ложное значение вычисляемой нейроном булевой переменной. Такой метод извлечения знаний называется в [73,74] KBANN-алгоритмом.

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

Определению необходимости добавления и числа добавляемых к сети нейронов в ходе ее формирования посвящены работы [75,76], обходящие указанное ограничение KBANN-метода. TopGen-расширение KBANN-алгоритма осуществляет эвристический поиск оптимальных модификаций сети на основе обучающих данных, получающегося набора символьных правил и поведения сети. Другие алгоритмы наращивают сеть при малой скорости сходимости обучения и/или большой ошибке обучения/обобщения и т.д. TopGen же нацелен на работу с KBANN-сетями и при своей работе использует извлечение из сети и анализ символьных правил для того, чтобы определить, в каком месте сети требуется коррекция. При работе алгоритма корректируется символьное представление правил и их иерархическая структура наряду с их адаптацией путем обучения сети. Еще одна особенность алгоритма – стремление не слишком нарушать вставленные в нейросеть исходные формализованные правила, а иначе после извлечения правил можно получить правила, кардинально отличающиеся от первоначальных и сложные в интерпретации. Т.е. добавляемые в сеть элементы должны научиться по обучающей выборке распознавать исключения из исходных правил и/или научиться корректировать ответ этих правил, если последние слишком уж плохо работают на выборке.

Метод извлечения знаний, использовавшийся в составе KBANN-алгоритма [73,74], был адаптирован и для извлечения знаний из нейросетей без первоначального встраивания в них правил. Идея исходного метода при обучении получить нейросеть, в которой значения весов синапсов и активаций нейронов группируются в кластеры, и лингвистически интерпретировать полученные кластеры. Были предложены следующие варианты доработки:

1.         В [77] используется процедура коррекции, которая после обычного обучения сети группирует значения весов синапсов каждого нейрона в кластеры (веса синапсов затем заменяются значениями центров кластеров) и корректирует значения неоднородного входа нейрона так, чтобы скомпенсировать внесенные в сеть изменения, и таким образом делает возможным применение старого варианта метода извлечения знаний.

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

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.