Анализ недостатков искусственных нейронных сетей и методов их минимизации
Разработка искусственных нейронных сетей и машинное обучение как перспективные направления информационных технологий. Преимущества и недостатки, способность нейросетей решать задачи, которые невозможно решить классическими программными алгоритмами.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 20.02.2019 |
Размер файла | 126,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Пензенский Государственный Технологический Университет
АНАЛИЗ НЕДОСТАТКОВ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ И МЕТОДОВ ИХ МИНИМИЗАЦИИ
Ильин И.В., Гудков К.В.
г. Пенза, Россия
Согласно проведенным исследованиям, искусственные нейронные сети применяются в различных областях науки: начиная от систем распознавания речи до распознавания вторичной структуры белка, классификации различных видов рака и генной инженерии. Когда речь идет о задачах, отличных от обработки больших массивов информации, человеческий мозг обладает большим преимуществом по сравнению с компьютером. Человек может распознавать лица, даже если в помещении будет много посторонних объектов и плохое освещение. Несмотря на годы исследований, компьютеры все еще далеки от выполнения подобных задач на высоком уровне. В решении подобных задач наиболее эффективны искусственные нейронные сети. Искусственные нейронные сети способны генерировать значение из сложных или неточных данных, а так же выполнять задачи аппроксимации, классификации и распознавания, со скоростью и точностью, недостижимых для классических алгоритмов программирования.
Главные достоинства нейронных сетей:
– Эффективная фильтрация шумов. После обучения искусственные нейронные сети способны обрабатывать только нужную им информацию, игнорируя посторонние шумы.
– Адаптация. Возможность адаптации искусственные нейронные сети к изменениям во входных данных позволяет им работать в правильном режиме все время. Непрерывное самообучение - самое важное свойство ИНС.
– Отказоустойчивость. Даже при выходе из строя части нейронов, остальные нейроны остаются работоспособными. И, несмотря на снижение точности работы, ответы, выдаваемые поврежденной искусственной нейронной сетью, остаются логичными и правильными.
– Скорость работы. Каждый из нейронов, по сути, является микропроцессором, но поскольку искусственная нейронная сеть состоит из тысяч таких нейронов, между которыми распределяется задача, ее решение происходит очень быстро - намного быстрее, чем при использовании обычных алгоритмов решения.
Несмотря на все достоинства у ИНС есть и недостатки, которые накладывают ограничение на их использование. [1] Проблема переобучения.
Данная проблема заключается в том, что ИНС "запоминает" ответы вместо того, чтобы выводить закономерности во входных данных. На сегодняшний день разработано несколько способов борьбы с переобучением: регуляризация, нормализация батчей, наращивание данных и другие. Иногда переобученная модель характеризуется большими абсолютными значениями весов. Суть этого явления следующая: исходные данные часто сильно многомерны (одна точка из обучающей выборки изображается большим набором чисел), и вероятность того, что случайно взятая точка окажется неотличимой от выброса, будет тем больше, чем больше размерность. Вместо того, чтобы "вписывать" новую точку в имеющуюся модель, корректируя веса, ИНС генерирует исключение: одну точку следует классифицировать по одним правилам, а другие - по другим. И таких точек бывает очень много.
Простейший метод борьбы с переобучением - так называемая регуляризация весов. Ее суть состоит в искусственном ограничении на значения весов, либо в добавлении штрафа в меру ошибки на этапе обучения. Такой подход не решает проблему полностью, но помогает улучшить результат.
Второй метод состоит в ограничении выходного сигнала, а не значений весов - это нормализация батчей. На этапе обучения данные подаются в ИНС пачками - батчами. Выходные значения для них могут быть любыми, и чем выше значения весов, тем больше абсолютные значения. Если из каждого из них вычесть какое-то определенное значение и поделить результат на другое, одинаковое для всего батча, то можно сохранить качественные соотношения, но выход будет более удобным для обработки его следующим слоем.
Третий подход - наращивание обучающей выборки. Он работает не всегда. Как уже говорилось, переобученная ИНС воспринимает многие точки как аномальные, которые следует обрабатывать отдельно. Идея заключается в наращивании обучающей выборки, чтобы точки были той же природы, что и исходная выборка, но сгенерированы искусственно. Однако тут сразу рождается большое число сопутствующих проблем: подбор параметров для наращивания выборки, критическое увеличение времени обучения и прочие.
В обособленную проблему выделяется поиск настоящих аномалий в обучающей выборке. Иногда это даже рассматривают как отдельную задачу. На рисунке 1 проиллюстрирован эффект исключения аномального значения из набора. В случае ИНС результат будет таким же. Но поиск и исключение аномальных значений - очень сложная задача, для решения которой применяют специальные методики. [2]
Рисунок 1 - Эффект от удаления аномального значения из тренировочной выборки
Черный ящик
Еще одна проблема ИНС состоит в том, что они, по сути, являются черными ящиками. То есть кроме результата, из ИНС нельзя получить никакую информацию, даже статистические данные. Из-за этого очень сложно понять, каким образом ИНС принимает решения. Это характерно для большинства типов ИНС, но есть и исключения. Например - сверхточные ИНС в задачах распознавания. В этом случае некоторые промежуточные слои имеют смысл карт признаков (одна связь показывает то, встретился ли какой-то простой шаблон в исходной картинке), поэтому возбуждение различных нейронов можно отследить.
Естественно, данная особенность делает достаточно сложным использование ИНС в приложениях, где ошибки критичны. Например, менеджеры фондов не могут понять, как ИНС принимает решения. Из-за этого невозможно корректно оценить риски торговых стратегий. Аналогичная ситуация в банках, использующих ИНС для моделирования кредитных рисков. Они не могут сказать, почему этот самый клиент имеет сейчас именно такой кредитный рейтинг. Поэтому разработчики ИНС пытаются найти способы исправить данный недостаток. Например, ведется разработка так называемых алгоритмов изъятия правил (rule-extraction algorithms), чтобы повысить прозрачность ИНС. Эти алгоритмы извлекают информацию из ИНС либо в виде математических выражений и символьной логики, либо в виде деревьев решений.
Есть несколько способов реализации данного решения. Самый простой - анализ чувствительности. Анализ чувствительности не содержит явных правил, но используется для определения влияния конкретных входных данных на выходные данные ИНС. Общая процедура заключается в записи изменений в выходных данных после внесения изменений в специфические входные атрибуты. Обычно в качестве начальной точки выбирается среднее значение для каждого входа и изменения должны варьироваться от небольших до крайне высоких. Если разница в выходе мала даже при больших изменениях в определенном входном атрибуте, этот атрибут вероятно, не очень важен; то есть ИНС нечувствительна к этому атрибуту. Другие атрибуты могут оказывают большое влияние на выходные данные, значит, ИНС чувствительна к этим атрибутам.
Анализ чувствительности является хорошим инструментом для получения базового понимания функционирования ИНС. Но, к сожалению, анализ чувствительности обычно не позволяет объяснить найденные отношения. Поэтому он используется либо как инструмент для поиска и удаления неважных входных данных, атрибутов, или как отправная точка для другого метода работы с ИНС.
Декомпозиционные подходы сосредоточены на извлечении правил на уровне отдельных блоков в рамках обученной ИНС. Основным требованием для этой категории извлечения правил является то, что вычисленный выход из каждого блока должен быть отображен как двоичный результат, соответствующий следующему правилу.
Каждый блок может быть интерпретирован как ступенчатая функция, что означает, что проблема сводится к поиску набора входящих связей, суммарные веса которых гарантируют превышение смещения блока независимо от других входящих связей. Когда такая комбинация связей найдена, это легко переводится в правило, в котором выход этого блока является следствием входов. Затем правила, извлеченные на отдельном уровне единицы, агрегируются для формирования составного набора правил для ИНС в целом. Самый простой способ понять процесс состоит в том, чтобы рассматривать извлечение правила ИНС как пример прогнозирующего моделирования, где каждый шаблон ввода-вывода состоит из исходного входного вектора и соответствующего прогноза из непрозрачной модели. С этой точки зрения извлечение правила ИНС становится задачей моделирования функции из исходных входных данных в непрозрачные предсказания модели.
Оценка алгоритмов извлечения правила
Существует несколько критериев, используемых для оценки алгоритмов извлечения правил:
– Наглядность. Степень, в которой извлеченные правила понятны для человека.
– Правильность. Степень, в которой извлеченные правила точно моделируют ИНС, из которых они извлекается.
– Точность. Способность выделенных правил делать точные прогнозы по ранее неизученным случаям.
– Масштабируемость. Способность метода масштабироваться к сетям с большими входными объемами данных и большим количеством связей.
– Универсальность. Степень, в которой метод требует специальных режимов обучения или устанавливает ограничения на архитектуру ИНС.[3-4].
Катастрофическая забывчивость
Искусственные нейронные сети отличаются от биологических аналогов неспособностью "запомнить" прошлые навыки при обучении новой задаче. Работа в динамически изменяющихся средах (например, в финансовых) сложна для нейронных сетей. Даже если удалось успешно натренировать сеть, нет гарантий, что она не перестанет работать в будущем. Финансовые рынки постоянно трансформируются, поэтому то, что работало вчера, может с тем же успехом перестать работать сегодня. В этой сфере исследователям или приходится тестировать разнообразные архитектуры сетей и выбирать из них лучшую, или использовать динамические нейронные сети. Последние "следят" за изменениями среды и подстраивают свою архитектуру в соответствии с ними. Одним из используемых в этом случае алгоритмов является метод MSO (multi-swarm optimization).
Более того, нейросети обладают определенной особенностью, которую называют катастрофической забывчивостью (catastrophic forgetting). Она сводится к тому, что нейросеть нельзя последовательно обучить нескольким задачам - на каждой новой обучающей выборке все веса нейронов будут переписаны, и прошлый опыт будет "забыт". Например, искусственный интеллект, натренированный на распознавание людей, не сможет различать животных. Для этого его придется переобучить, однако при этом сеть лишиться опыта распознавания людей.
На данный момент самым эффективным способом борьбы с этой проблемой является метод упругого закрепления весов, разработанный учеными из компании DeepMind и Имперского колледжа Лондона. Этот метод обучения глубоких нейронных сетей способен приобретать новые навыки, сохраняя "память" о предыдущих задачах.
Нейронная сеть состоит из нескольких связей, для каждой из которых вычисляется её вес. Каждому весу в нейронной сети присваивается параметр F, который определяет его значимость. Чем больше значение F для конкретного нейрона, тем меньше вероятность его замены при дальнейшем обучении. Поэтому нейронная сеть как бы "запоминает" наиболее важные приобретенные навыки. Методика получила название Elastic Weight Consolidation, или "упругое закрепление весов". Работа алгоритма тестировалась на играх Atari. Ученые показали, что без "закрепления весов" программа быстро забывала игры, когда переставала в них играть (синий график). При использовании алгоритма EWC нейросеть "запомнила" веса, необходимые для выполнения всех предыдущих задач. И хотя EWC-сеть проиграла в каждом отдельном случае классическому алгоритму, она продемонстрировала хорошие результаты по сумме всех этапов (красный и коричневый графики на рисунке 2).
Рисунок 2 - Демонстрация точности работы EWC-сети
Ученое сообщество уже предпринимало попытки создания глубоких нейронных сетей, способных выполнять сразу несколько задач. Однако прошлые решения были или недостаточно мощными, или же требовали больших вычислительных ресурсов, поскольку сети обучались сразу на крупной объединенной выборке (а не на нескольких последовательных). Такой подход не приближал алгоритмы к принципам работы человеческого мозга. нейросеть алгоритм обучение
Еще есть альтернативные архитектуры нейронных сетей для работы с текстом, музыкой и сериями длинных данных. Они носят название рекуррентных и имеют долгосрочную и краткосрочную память, что позволяет переключаться с глобальных проблем на локальные (например, с анализа отдельных слов на правила стилистики языка в целом). Рекуррентные нейронные сети имеют память, однако уступают глубоким сетям в способности анализировать сложные наборы признаков, которые встречаются, например, при обработке графики. Поэтому новое решение от DeepMind в перспективе позволит создавать умные универсальные алгоритмы, которые найдут применение в программном обеспечении для решения задач, требующих нелинейных преобразований.
Заключение
Разработка ИНС и машинное обучение являются перспективными направлениями информационных технологий. Несмотря на описанные выше недостатки, ИНС остаются мощным инструментом, который при правильном применении способен решать задачи, которые невозможно решить классическими программными алгоритмами. ИНС активно совершенствуются. Ученые и программисты ведут поиск средств, которые позволят минимизировать недостатки ИНС или полностью от них избавиться.
Список использованных источников
1. Нейросети: что это такое и как работает. URL: https://www.mirf.ru/science/kak-rabotayut-nejroseti (дата обращения: 19.10.2017).
2. Что может и чего не может нейросеть. URL: https://habrahabr.ru/company/neurodatalab/blog/335238/ (дата обращения: 25.04.2017).
3. Z.-H. Zhou, Rule Extraction: Using Neural Networks or For Neural Networks? //Journal of Computer Science & Technology, 19(2):249-253, 2004.
4. M. Craven, Extracting Comprehensive Models from Trained Neural Networks, Ph.D. Thesis, University of Wisconsin-Madiso
Размещено на Allbest.ru
Подобные документы
Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.
дипломная работа [1,8 M], добавлен 08.02.2017Рост активности в области теории и технической реализации искусственных нейронных сетей. Основные архитектуры нейронных сетей, их общие и функциональные свойства и наиболее распространенные алгоритмы обучения. Решение проблемы мертвых нейронов.
реферат [347,6 K], добавлен 17.12.2011Способы применения технологий нейронных сетей в системах обнаружения вторжений. Экспертные системы обнаружения сетевых атак. Искусственные сети, генетические алгоритмы. Преимущества и недостатки систем обнаружения вторжений на основе нейронных сетей.
контрольная работа [135,5 K], добавлен 30.11.2015Нейрокомпьютеры и их применение в современном обществе. Некоторые характеризующие нейрокомпьютеры свойства. Задачи, решаемые с помощью нейрокомпьютеров. Типы искусственных нейронов. Классификация искусственных нейронных сетей, их достоинства и недостатки.
курсовая работа [835,9 K], добавлен 17.06.2014Понятие и свойства искусственных нейронных сетей, их функциональное сходство с человеческим мозгом, принцип их работы, области использования. Экспертная система и надежность нейронных сетей. Модель искусственного нейрона с активационной функцией.
реферат [158,2 K], добавлен 16.03.2011Особенности нейронных сетей как параллельных вычислительных структур, ассоциируемых с работой человеческого мозга. История искусственных нейронных сетей как универсального инструмента для решения широкого класса задач. Программное обеспечение их работы.
презентация [582,1 K], добавлен 25.06.2013Возможности программ моделирования нейронных сетей. Виды нейросетей: персептроны, сети Кохонена, сети радиальных базисных функций. Генетический алгоритм, его применение для оптимизации нейросетей. Система моделирования нейронных сетей Trajan 2.0.
дипломная работа [2,3 M], добавлен 13.10.2015Понятие искусственного нейрона и искусственных нейронных сетей. Сущность процесса обучения нейронной сети и аппроксимации функции. Смысл алгоритма обучения с учителем. Построение и обучение нейронной сети для аппроксимации функции в среде Matlab.
лабораторная работа [1,1 M], добавлен 05.10.2010Сущность и функции искусственных нейронных сетей (ИНС), их классификация. Структурные элементы искусственного нейрона. Различия между ИНС и машинами с архитектурой фон Неймана. Построение и обучение данных сетей, области и перспективы их применения.
презентация [1,4 M], добавлен 14.10.2013Анализ применения нейронных сетей для прогнозирования ситуации и принятия решений на фондовом рынке с помощью программного пакета моделирования нейронных сетей Trajan 3.0. Преобразование первичных данных, таблиц. Эргономическая оценка программы.
дипломная работа [3,8 M], добавлен 27.06.2011