Вербализация (лингвистика)
- 1 year ago
- 0
- 0
Вербализа́ция — минимизированное описание работы синтезированной и уже обученной нейронной сети в виде нескольких взаимозависимых алгебраических или логических функций.
Одним из основных недостатков обучаемых нейронных сетей , с точки зрения многих пользователей, является то, что из обученной нейронной сети трудно извлечь явный и понятный пользователю алгоритм решения задачи — сама нейронная сеть является этим алгоритмом, и если структура сети сложна, то этот алгоритм непонятен. Однако специальным образом построенная процедура упрощения и вербализации часто позволяет извлечь явный метод решения.
Вербализация осуществляется, в частности, для подготовки обученной и упрощённой нейросети к реализации в программном коде или в виде специализированного электронного (оптоэлектронного) устройства, а также для использования результатов в виде явных знаний . Под симптомами при этом понимаются входные значения нейросети, а под синдромами — значения на выходах нейронов . Конечный синдром — это выходное значение нейросети. Вербализация обычно осуществляется средствами специализированных пакетов.
Перед вербализацией сети, как правило с помощью продукционных правил, для некоторых видов сетей было предложено упрощать структуру сетей - прореживать. Основная идея прореживания (англ. pruning) заключается в том, что те элементы модели или те нейроны сети, которые оказывают малое влияние на ошибку аппроксимации , можно исключить из модели без значительного ухудшения качества аппроксимации . Но при этом нужно иметь в виду, что это справедливо только для решаемой задачи. Если же появится новые статистические данные для обучения, то прореженная сеть потеряет способность к обобщению, которой она обладала бы если бы связи не были бы потеряны (как минимум обратное не было доказано). Таким образом, идет речь о алгоритмах с потерей качества, которые могут применяться для частных задач, но не могут применяться вне зависимости от задачи. Повышая специализацию, они теряют гибкость.
Метод второго порядка (использующий анализ чувствительности , основанный на вычислении вторых производных) был предложен ЛеКюном в 1990 году и назывался «optimal brain damage». Затем он был развит Хассиби и получил название «optimal brain surgery».
Несколько ранее были предложены методы прореживания и скелетонизации нейронных сетей, основанные просто на удалении элементов с наименьшими весами ( методы нулевого порядка ).
Наконец, в том же 1990 году А. Н. Горбанём был предложен эффективный метод, основанный на анализе первых производных в ходе обучения градиентными методами и не требующий отдельного дифференцирования. Кроме задачи удаления элементов решались также другие проблемы упрощения: уменьшение разрядности весов и сигналов (огрубление), упрощение функций активации нейронов, получение интерпретируемого знания и т. д. Вся совокупность подходов получила также название « контрастирование нейронных сетей ». Описание основных показателей чувствительности представлено в обзоре.
Е. М. Миркес в проекте «Идеального нейрокомпьютера » на основе подхода Горбаня и опыта разработки прикладного программного обеспечения ввёл элемент «Контрастёр», построил библиотеку его основных функций и разработал язык описания.
Для подготовки нейронной сети к упрощению оказывается полезным ввести в оценку её работы, минимизируемую при обучении, штрафные слагаемые (англ. penalty), штрафующие за сложность. Эти алгоритмы введены в книге А. Н. Горбаня . Такой подход был впоследствии переоткрыт и положен в основу теории структурного обучения Исикавы и Зурады.
Алгоритм прореживания для перцептрона Розенблатта не требуется. Это связано с тем, что в отличие от многослойного перцептрона Румельхарта , перцептрон не является полносвязной сетью, то есть число связей от среднего элемента к входным может прямо управляться экспериментатором в зависимости от сложности задачи. Поэтому не требуется обучение с лишними связями, и можно сразу подобрать то число связей, которое требуется для задачи. Такой подбор делается экспериментально, если при обучении было получено схождение, то можно еще уменьшить. Как только схождение стало требовать значительно большего числа итераций, то это признак того, что достигнуто нужное число связей.
Другой управляемый параметр, более существенно влияющий на число связей - это число средних элементов. Чем с меньшим числом средних элементов удается обучить перцептрон, тем более оптимальная структура будет получена.
Поэтому управляя этими двумя параметрами прореживание получается автоматически, без дополнительных алгоритмов.