Смекни!
smekni.com

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

- Эквивалентное преобразование структуры сети, приводящее к оптимизации структуры сети по некоторому критерию (раздел 3.3.7).

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

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

3.6. Процедура комплексного упрощения нейронной сети

Для задачи извлечения явных знаний из данных введем понятие логически прозрачной сети [17,18,20,23,58]. Под логически прозрачной понимается нейросеть, обладающая минимальной структурной сложностью и при этом удовлетворяющая требованиям (предпочтениям) пользователя (если пользователь сам будет вручную проводить процесс извлечения знаний – осмысления и интерпретации структуры сети) и/или требованиям алгоритма автоматизированного извлечения знаний к виду результирующей сети.

Формализуем процесс получения логически прозрачной сети, удовлетворяющий введенным в*Параграфе 3.2 требованиям (процесс упрощения должен быть настраиваем под конкретный метод извлечения знаний из нейронной сети, т.е. должен формировать нейросеть, оптимальную для конкретного алгоритма извлечения знаний).

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

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

3. Проводится процедура упрощения нейронной сети. Упрощение строится так, чтобы минимизировать "расстояние" от текущей нейронной сети до класса логически прозрачных функций. "Расстояние" вычисляется как взвешенная сумма тех критериев, по которым сеть не удовлетворяет требованиям логической прозрачности. На каждом шаге упрощения среди всех доступных элементарных операций выбирается такая операция, которая приводит к наибольшему уменьшению "расстояния". Если выбранная операция не может быть выполнена (например, из-за достижения минимума по этому критерию логической прозрачности), то выбирается следующая операция. Если достигнуты условия остановки, процесс упрощения заканчивается.

4. Если требования некоторых критериев не достигнуты, но никакая из упрощающих операций не может быть выполнена, то возможно возвращение в нейросеть некоторых ранее отконтрастированных элементов или сигналов (см. раздел 3.3.6). Возвращать в сеть нужно те элементы, которые не приводят к росту текущего расстояния до класса логически прозрачных сетей либо дают минимальный рост расстояния. Затем осуществляется очередное выполнение шага 3. Естественно, нужно принимать некоторые меры против зацикливания шагов 3-4.


Глава 4. Методы извлечения знаний из искусственных нейронных сетей

4.1. Существующие методы извлечения знаний из обученной нейросети

Как и для методов упрощения нейросети, для методов извлечения из сети знаний можно тоже ввести несколько классификаций. Так, в [59] представлено ранжирование методов извлечения знаний по следующим свойствам:

- Накладываются ли ограничения на возможный вид нейросети (на структуру сети, число нейронов, входов и выходов сети, вид входных и выходных сигналов сети).

- Модифицируется или нет обученная сеть при извлечении из нее знаний.

- Делится ли непрерывнозначная входная и/или промежуточная (сигнал нейрона) переменная на интервалы, которым затем можно сопоставить лингвистические категории. Как происходит процесс этого деления.

4.1.1. Методы на основе квантования сигналов сети

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

В [53] разработан метод порождения и проверка гипотез о структурной и функциональной связи между входом и выходом, состоящий из трех этапов:

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].