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

Технология извлечения знаний из нейронных сетей: апробация, проектирование ПО, использование в психолингвистике
Разработано техническое задание на новую версию программы-нейроимитатора, реализующую предложенные технологии Метод потенциальных функций [14] для решения задач классификации объектов с учителем Возможность параллельного выполнения наиболее трудоемких этапов алгоритма и желательно - нейронной сетью Методы, выполняющие цикл "элементарное упрощение – дообучение нейросети" до тех пор, пока дообучение приводит к решению задачи с требуемой точностью Методы, не позволяющие задавать число контрастируемых элементов сети (методы, основанные на модификации штрафной функции) Если функция кусочно-линейна, то кусочно-постоянные участки будут описываться условными правилами (п.3), а кусочно-линейные – функциональными (п.2) Разработано техническое задание на новую версию программы-нейроимитатора, реализующую предложенные технологии
176148
знаков
8
таблиц
14
изображений

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

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

3.         Методы, упрощающие уже обученную сеть и не требующие дообучения. Они используют идею о как можно меньшем изменении поведения системы – например, чтобы выходной сигнал нейрона или нейросети после проведения упрощения как можно меньше отличался от сигнала до упрощения [17].

Можно вводить и другие классификации.

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

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

Такое удаление элемента будем называть контрастированием [16,17,20,26].

Другая возможная модификация элемента – модификация его параметров. Для синапса имеется операция бинаризации – приведение веса синапса к значению из зафиксированного набора выделенных значений [17,20,26].

Для нелинейного преобразователя нейрона возможна замена его нелинейной функции на иную.

Рассмотрим существующие методы упрощения.

3.3.1. Контрастирование синапсов нейросети

Рассматриваемые в параграфе методы применимы как к синапсам, так и к неоднородным входам нейронов – содержательных отличий синапса от неоднородного входа нет.

Один из наиболее широко используемых методов сокращения числа синапсов нейросети – добавление штрафного слагаемого в целевую функцию – т.н. "структурное обучение" [30-33]. Это слагаемое штрафует за большой (по абсолютному значению) вес синапса. Новая целевая функция имеет, например, вид . В качестве первого слагаемого взят критерий наименьших квадратов ( – требуемый, – текущий выходной сигнал сети на i-м примере обучающей выборки). Для упрощения нейросети с несколькими выходными сигналами в первом слагаемом для каждого примера суммируются невязки всех выходных сигналов сети [28,29]. Штраф за веса синапсов wjk (второе слагаемое) входит с регуляризующим весом e, от величины которого зависит баланс между точностью решения задачи и простотой структуры сети.

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

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

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

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

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

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

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

В [16-17,20,26] для контрастирования синапсов, основанного на показателях чувствительности первого порядка, предлагается усреднять первые производные целевой функции по весу синапса в ходе нескольких шагов обучения, либо – после завершения обучения – по нескольким точкам, полученным небольшим случайным сдвигом относительно достигнутой точки минимума. Усреднение проводится в некоторой норме (сумма модулей или максимум модуля) в зависимости от того, какую чувствительность нужно получить: усредненную или максимальную. Затем полученная величина домножается на планируемое изменение веса синапса.

Также в [17] предлагаются показатели значимости первого порядка, основанные не на оценке изменения значения целевой функции, а на оценке изменения выходного сигнала нейросети: первые производные выходного сигнала сети по весу синапса усредняются по обучающей выборке в той или иной норме и домножаются на планируемое изменение веса синапса.

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

Существует алгоритм упрощения, не требующий дообучения сети:

-           Задается порог допустимого изменения значения суммарной целевой функции на всей обучающей выборке.

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

-           Перераспределяется вес этого синапса между другими входными синапсами нейрона по заданным в [38] явным формулам.

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

Число удаляемых элементов зависит от избыточности сети – в описываемой в [38] задаче удавалось удалять без ухудшения качества распознавания для сетей с 5, 10, 15 и 20 нейронами 13, 17, 23 и 35% синапсов соответственно.

В [17] алгоритм сокращения синапсов основан на рассмотрении сумматора отдельного нейрона сети.

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

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

3.3.2. Контрастирование нейронов нейросети

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

В [39] предложено в целевую функцию добавлять дополнительное штрафное слагаемое. Это слагаемое (энтропийного вида) штрафует за слишком большие модули выходных сигналов нейронов. Минимизация такой оценки приводит к тому, что в сети будет активироваться только малое число нейронов, а остальные нейроны будут выдавать сигнал, близкий к 0. Формула штрафного слагаемого: , где M – число нейронов,  - нормированный выходной сигнал  i-го нейрона, , e – параметр регуляризации. Это слагаемое пересчитывается для каждого примера выборки, и градиент для каждого примера считается с учетом этого слагаемого. После обучения сети для удаления нейронов, которые не активируются, используется следующиий метод: для каждого нейрона на обучающей выборке усредняется его выходной сигнал, и из сети удаляются нейроны, средняя активация которых меньше некоторого порога d.

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

Работа [21] использует тот же подход, что и [40,41], но взамен усреднения изменения значения целевой функции по примерам выборки ищется максимум модуля такого изменения.

Похожий на [21,40,41], но более специализированный метод предложен в [42] для сети-классификатора (требуемые выходные сигналы сети – 0 или 1, число выходных нейронов сети не важно). Вводится функция качества, характеризующая правильность интерпретации ответа для всей выборки: , где , oj, yj – требуемый и выходной сигналы j-го выходного нейрона, n – число выходных нейронов, N – число примеров в обучающей выборке, e – требуемая близость сигнала выходного нейрона к требуемому выходному значению для данного примера. Для каждого нейрона невыходного слоя вычисляется значение функции качества при условиях удаления этого нейрона из сети, и нейрон, вызывающий наименьшее ухудшение качества распознавания, удаляется из сети.Этот метод нацелен на сохранение правильной интерпретации ответа сети – чтобы контрастирование нейрона приводило к неправильной классификации как можно меньшего числа примеров обучающей выборки.

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

В [44,45] наряду с весами синапсов учитываются и величины проходящих по синапсам сигналов. Для каждого нейрона считается значение критерия , где oi - выходной сигнал i-го нейрона для примера p обучающей выборки, wij- вес синапса, идущего от i-го нейрона к j-му нейрону следующего слоя. Удаляются нейроны с наименьшим значением критерия. Т.е. значимые нейроны – те, которые часто возбуждаются и рассылают свой сигнал по синапсам со значительными (по модулю) величинами весов. В [46] проводится дальнейшая модификация: в критерий входит еще и выходной сигнал j-го нейрона следующего слоя:. Т.е. предполагается, что значимые нейроны обладают свойствами из [44,45] (сильное возбуждение и большие веса выходных синапсов) и вдобавок приводят к возбуждению нейронов следующего слоя.

На основе метода контрастирования синапсов второго порядка [36] предложен метод контрастирования нейронов второго порядка, где показателем значимости нейрона является сумма произведений всех вторых частных производных целевой функции по весу синапса на квадрат веса синапса, взятая по всем входным синапсам нейрона и синапсам, по которым нейрон рассылает свой выходной сигнал.

В [48] предложено показателем значимости нейрона считать показатель значимости первого порядка вида [16-17,20,26] его выходного сигнала. Также рассмотрен основанный на показателях значимости синапсов первого [16-17,20,26], а не второго порядка вариант метода [47], где показателем значимости нейрона считается сумма показателей значимости всех его входных и выходных синапсов.

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

В [49-50] вводится и в [51] выполняется контрастирование нейронов путем переупорядочивания весов синапсов. Удаляются нейроны, имеющие на обучающей выборке наименьшую дисперсию своего выходного сигнала среди сигналов всех нейронов, при этом происходит коррекция весов неоднородных входов нейронов следующего слоя на величины, равную произведению матожидания выходного сигнала удаляемого нейрона на вес синапса, по которому на нейрон следующего слоя приходил этот сигнал. Удаляются все, кроме одного, нейроны, имеющие сильно скоррелированные выходные сигналы, также с коррекцией весов синапсов, по которым будет рассылать сигнал остающийся нейрон.

3.3.3. Контрастирование входных сигналов нейросети

Критическому обзору идей, лежащих в основе методов контрастирования входов сети, посвящена работа Уоррена С. Сарле [52]. Все приводимые автором аргументы и примеры могут быть адресованы и к рассмотренным ранее методам вычисления показателей значимости синапсов и нейронов сети. Основные положения статьи таковы:

-           Имеется показатель значимости входа и показатель чувствительности выходного сигнала сети к изменению на входе. Это – разные показатели, и их надо разделять.

-           Нельзя определять значимость входа через изменение остаточной дисперсии модели после удаления этого входа и соответствующей перестройки модели – при наличии коррелированных признаков остающиеся признаки скомпенсируют отсутствие удаленного.

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

-           Использование произведения веса синапса, по которому проходит входной сигнал на вес синапса, по которому нейрон разошлет свой выходной сигнал дальше, и усреднение этих произведений по всем выходным синапсам нейрона (см. [44,45]) не учитывает влияние функции активации нейрона (дополнительное домножение на величину активации, как сделано в [46], будет правильней).

-           Рассмотрение компоненты градиента выходного сигнала сети по входному сигналу предпочтительнее рассмотрений весов синапсов. Однако опираться только на величины производных недостаточно в случае, когда планируется кардинальное изменение сети – контрастирование входа.

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

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

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

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

Теперь рассмотрим существующие методы контрастирования входных сигналов в свете критических положений статьи У.Сарле.

В [17,20,26] предложен подход первого порядка, усредняющий произведения частных производных целевой функции по входам сети на планируемые изменения величин сигналов. Усреднение ведется в некоторой норме по всем примерам обучающей выборки и нескольким точкам в пространстве адаптивных параметров сети. Здесь удовлетворяется большинство требований У.Сарле: используется усреднение модулей значений произведений производных по выборке и в нескольких точках и производится умножение на планируемое изменение величин сигналов. Вместо производных целевой функции можно использовать производные выходных сигналов сети по входным сигналам.

3.3.4. Бинаризация синапсов

В [16,17,26] для бинаризации применяется показатель значимости синапса первого порядка при замене веса синапса на выделенное значение. Для задачи контрастирования выделенным весом синапса являлся 0, для задачи бинаризации формируется набор выделенных значений.

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

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

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

В [54] представлен алгоритм квантования весов синапсов, отличающийся тем, что число и величины выделенных дискретных значений синапсов задаются не пользователем, а определяются самим алгоритмом.

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

3.3.5. Упрощение нелинейных преобразователей нейронов

В [55] представлен метод замены гладких нелинейных функций нейронов константами, линейными, пороговыми или кусочно-линейными функциями.

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

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

3.3.6. Дополнительные модификации алгоритмов контрастирования

Контрастирование не обязательно вести как процесс только исключения незначимых элементов. В [17,57] предложено на некотором шаге упрощения дополнительно возвращать в сеть часть ранее отконтрастированных элементов.

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

Можно определить эту новую значимость и вернуть в сеть несколько наиболее значимых ранее отброшенных элементов. Это может помочь отконтрастировать в дальнейшем большее количество элементов [27].

3.3.7. Методы модификации структуры обученной сети

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

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

3.4. Требования к процессу упрощения сети для извлечения знаний

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


Информация о работе «Технология извлечения знаний из нейронных сетей: апробация, проектирование ПО, использование в психолингвистике»
Раздел: Информатика, программирование
Количество знаков с пробелами: 176148
Количество таблиц: 8
Количество изображений: 14

0 комментариев


Наверх