Алгоритм увеличения точности нейронных сетей и его приложения тема диссертации и автореферата по ВАК РФ 05.13.18, кандидат наук Аврутский Всеволод Игоревич

  • Аврутский Всеволод Игоревич
  • кандидат науккандидат наук
  • 2021, ФГАОУ ВО «Московский физико-технический институт (национальный исследовательский университет)»
  • Специальность ВАК РФ05.13.18
  • Количество страниц 118
Аврутский Всеволод Игоревич. Алгоритм увеличения точности нейронных сетей и его приложения: дис. кандидат наук: 05.13.18 - Математическое моделирование, численные методы и комплексы программ. ФГАОУ ВО «Московский физико-технический институт (национальный исследовательский университет)». 2021. 118 с.

Оглавление диссертации кандидат наук Аврутский Всеволод Игоревич

Оглавление

Введение

Задачи аппроксимации

Решение уравнений в частных производных

Характеристика работы

Научная новизна работы

Теоретическая и практическая значимость

Положения, выносимые на защиту

Степень достоверности и апробация результатов работы

Благодарности

Глава 1, Обзор

1.1. Биологические нейроны

1.2. Искусственные нейронные сети

1.2.1. Теоремы существования

1.2.2. Обратное распространение ошибки

1.2.3. Задачи малой размерности

1.2.4. Решение дифференциальных уравнений 27 Выводы к Главе

Глава 2. Обучение с производными

2.1. Краткая история

2.2. Аппроксимация функций

2.2.1. Обозначения производных

2.2.2. Двумерная функция

2.2.2.1. Обучение производных

2.2.2.2. Обучение с исключением

2.2.3. Автокодировщик

2.2.4. Проблема вычисления производных

2.3. Решение уравнений

2.3.1. Нелинейное уравнение Пуассона

2.3.2. Уравнение Бюргерса

2.4. Отсутствие переобучения 54 2.4.1. Оценка порядка аппроксимации

2.5. Связь с классическим обучением 60 Выводы к Главе

Глава 3, Многомерные краевые задачи

3.1, Увеличение размерности

3.2, Уменьшение сложности

3.2.1, Все производные

3.2.2, Производные по осям

3.2.3, Случайные направления

3.2.4, Тесты

3.2.5, Перенормировка

3.2.6, Процедура обучения

3.3, Линейные уравнения

3.4, Нелинейные уравнения

3.5, Сравнение с конечными разностями

3.6, Практические аспекты

3.6.1, Критерий остановки

3.6.2, Верификация 80 Выводы к Главе

Глава 4, Алгоритм дифференцирования

4.1, Прямое распространение 85 4,1,1, Случайные направления

4.2, Обратное распространение

4.3. Сложность

4.3.1. Прямой проход

4.3.2. Градиент весов

4.3.3. Обратный проход

4.4. Реализация

4.4.1. CUDA

4.4.2. CUBLAS

4.4.3. Особенности реализации

4.4.4. epde-2

4.4.4.1. Параметры задачи

4.4.4.2. Начальные данные

4.4.4.3. Вычисление невязки

4.4.4.4. Нормировка

4.4.4.5. Пример

4.4.5. Генерация кода 107 Выводы к Главе

Заключение

Обозначения

Литература

Введение

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

Задачи аппроксимации. На сегодняшний день нейронные сети применяются для решения широкого спектра прикладных задач [ 1-5], Популярной постановкой является задача об аппроксимации функции, для которой известен набор значений и соответствующих им аргументов. На основе этих данных алгоритм обучения настраивает параметры сети так, чтобы её отклонение от значений функции на данном наборе аргументов было приемлемым, Точность аппроксимации при этом обычно оценивают с помощью отклонения от рассматриваемой функции на тестовом множестве, которое не использовалось для обучения. Достаточно широкий класс составляют сети прямого распространения (далее просто сети), принцип работы которых можно описать следующим образом. Входной вектор поочерёдно подвергается многомерным линейным и покомпонентным нелинейным преобразованиям, пара которых называется слоем сети. Последний слой является выходным, а остальные -скрытыми. Линейные преобразования в слоях задаются матрицами весов, нахождение которых и составляет процесс обучения. Допустимость применения нейронных сетей обоснована теоремами о существовании, утверждающими, что для каждой непрерывной функции существует сеть с таким набором весов, что мера их отклонения друг от друга произвольно мала. Такие теоремы, однако, не являются конструктивными, и обучение сетей представляет собой отдельную задачу, В связи с этим следует отличать сети с одним скрытым слоем от глубоких сетей. Если для первых существуют алгоритмы [6,7] обучения, вычисляющие веса за полиномиальное время, то для глубоких сетей обучение основано на итерационном процессе градиентной минимизации, который во многих ситуациях не находит глобальный минимум.

Очередной всплеск популярности нейронных сетей произошел после 2011 года, когда с помощью глубоких сетей задачу о распознавании образов удалось решить с точностью, сравнимой с человеческой [1]. В этой задаче каждому изображению, состоящему из тысяч цветных пикселей, нужно поставить в соответствие вектор, каждая компонента которого есть вероятность принадлежности изображения к некоторому классу. Область определения функции-классификатора имеет огромную размерность, и важным фактором оказывается способность нейронных сетей обходить «проклятье размерности» [8,9], В результате увеличение числа измерений не приводит к экспоненциальному росту затрат на обучение. Несмотря

на то, что этой способностью обладают также и сети с одним скрытым слоем, их использование в подобных многомерных задачах не приводит к столь же качественным результатам. Одним из ключевых факторов для практического применения глубоких сетей стала доступность параллельных вычислений на графических ускорителях (GPU) [10]. Эффективность GPU при работе с глубокими сетями значительно выше, чем при обучении сетей с одним скрытым слоем. Сегодня глубокие нейронные сети успешно используются для автоматизации вождения [11], распознавания голоса [12-15] и других задачах большой размерности [2], ранее требовавших присутствия человека.

Решение уравнений в частных производных. Нейронные сети также могут применяться для решения дифференциальных уравнений [16-37], Фактически, любой численный алгоритм должен сконструировать решение с помощью некоторого числа рациональных параметров, В методе конечных разностей [38,39] искомая функция описывается с помощью набора значений на сетке, В методе конечных элементов [40-42] область решения разбивается на ячейки, внутри которых определена достаточно простая функция, например полином, коэффициенты которого определяются в процессе решения, В последние годы получили развитие бессеточные методы [43-45], в которых непрерывная среда заменяется на некоторое количество взаимодействующих частиц, но и в этом случае присутствует дискретизация по пространству. При этом результирующая точность зависит от величины этой дискретизации, а значит после решения требуется проверка сходимости по данному параметру. Нейронные сети же обладают достаточными аппрокеимационными способностями, чтобы описывать решение во всей области, а значит обойтись без пространственной дискретизации. При таком подходе размерность входного вектора нейронной сети равна количеству независимых переменных, а число выходов равно числу искомых функций. При обучении сети решается одна конкретная краевая задача. Веса настраиваются так, чтобы при «подстановке» сети в уравнение, невязка в тренировочных точках была близка к нулю, а значения сети на границе были близки к поставленным условиям. Сети с одним скрытым слоем здесь опять же отличаются от глубоких сетей, У первых, несмотря на отсутствие явной дискретизации, параметры являются локальными, то есть в пространстве независимых переменных можно выделить относительно небольшую область, на которую влияет изменение каждого параметра. Для глубоких сетей это не так - вариации почти всех параметров изменяют решение глобально. Однако, для сетей с одним скрытым слоем, как и в случае задач аппроксимации, существуют полиномиальные алгоритмы поиска весов, тогда как для глубоких сетей необходима градиентная минимизация. При этом точность решения при использовании глубоких сетей почти всегда заметно ниже. Более того, зачастую при их градиентном обучении алгоритм не находит глобальный минимум, и в результате присутствует некоторый уровень относительной невязки, снизить которую далее невозможно. Тем не менее, глубокие нейронные сети позволяют решать уравнения в частных производных с размерностью порядка 100, тогда как статьи о сетях с одним скрытым слоем по большей части посвящены размерностям 1, 2 и 3, Для нейросетевого подхода характерно то, что вне зависимости от выбранного вида сетей и

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

Таким образом, глубокие нейронные сети являются достаточно гибким инструментом и обладают большим потенциалом для решения многомерных задач. Однако, из-за особенностей градиентной минимизации, их относительная точность проигрывает как сетям с одним скрытым слоем, так и стандартным численным методам при решения задач малой размерности [16,20,25-29,46], Для больших размерностей точность многослойных сетей не повышается, однако альтернативные методы практически исчезают. Похожая ситуация присутствует и в задачах аппроксимации - при градиентном обучении глубокой сети даже в двумерном случае легко обнаруживается неенижаемый уровень ошибки. Исправление такого недостатка позволило бы уравнять способности глубоких сетей с остальными численными методами при решении задач малой размерности, а также поднять их точность в многоразмерных задачах. Кроме того, процесс решения краевых задач подразумевает «подстановку» нейронной сети в уравнение, то есть вычисление её производных и последующее вычисление градиента ошибки. На данный момент статьи о нейросетевом методе решения дифференциальных уравнений не содержат универсального алгоритма для сетей с произвольным числом слоёв. Разумеется, это вычисление можно осуществить с помощью автоматического дифференцирования, однако этот метод до сих пор не имеет эффективных GPU реализаций. Так как успех современных нейронных сетей был связан с увеличением числа слоёв, а также с наличием быстрых вычислений на GPU, то задача построения эффективного алгоритма вычисления производных нейронных сетей имеет прикладной потенциал.

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

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

Рекомендованный список диссертаций по специальности «Математическое моделирование, численные методы и комплексы программ», 05.13.18 шифр ВАК

Введение диссертации (часть автореферата) на тему «Алгоритм увеличения точности нейронных сетей и его приложения»

Характеристика работы

Целями данной работы являются: создание способа повышения точности градиентного обучения многослойных персептронов, его применение для решения уравнений в частных производных, и его эффективная реализация на GPU.

Для достижения поставленных целей были решены следующие задачи:

(1) Создание способа, который позволил бы преодолеть ограничение относительной точности градиентного обучения многослойных нейронных сетей ~ 10-4, которое встречается при аппроксимации функций на областях порядка единицы, производные которых имеют значения порядка единицы.

(2) Разработка метода решения уравнений на основе найденного способа повышения точности.

(3) Создание программного комплекса для эффективного вычисления производных и градиентов глубоких нейронных сетей на GPU.

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

Научная новизна работы.

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

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

(3) Впервые построен алгоритм нейросетевого решения уравнений в частных производных, позволяющий использовать шаг, невозможный для других алгоритмов при сравнимой точности решения.

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

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

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

Положения, выносимые на защиту.

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

(2) Разработан метод обучения с исключением, позволяющий увеличить относительную точность глубоких нейронных сетей с 10-4 до величины порядка ошибки округления 10-6 при условии, что производные функции и размер области её аппроксимации имеют порядок единицы. Метод применим для численного решения уравнений математической физики, в том числе при наличии больших градиентов,

(3) Разработан метод случайных направлений, снижающий сложность обучения с исключением для задач размерности более 2,

(4) Модельные краевые задачи для линейного и нелинейного уравнения Пуассона в пространствах размерности 2-5 решены с помощью нейронных сетей с относительной

10-6

порядок единицы). Для пятимерной задачи нейросетевой метод впервые оказался быстрее конечно-разностного, а требования по памяти снижены с 6.4 • 1011 байт до 1 • 109 байт. Объем памяти для хранения решения уменьшен с 6.4 • 1011 до 6 • 105 байт,

(5) Разработан программный комплекс «epde-2», эффективно использующий GPU и предназначенный для дифференцирования многослойных переептронов, минимизации отклонения их производных, а также для решения уравнений в частных производных.

Степень достоверности и апробация результатов работы. Результаты работы докладывались на 57, 58 и 59 всероссийских научных конференциях МФТИ (2014, 2015, 2016 гг, Жуковский), международной конференции Future Technologies Conference (2019, Сан Фран-циско) где доклад был награжден дипломом за лучшую работу. Результаты также докладывались на семинарах:

• Seminar: Numerical Methods for Partial Differential Equations, MIT, Boston, 2017,

• Seminar: Nerual Networks Catching Up With Finite Differences, Mitsubishi Electric Research Laboratories (MERL), Boston, 2017,

2017 r,

2018 гг.

Эффект «отрицательного» переобучения, упомянутый в Пункте 2,2,2 был независимо воспроизведён К, А, Рыбаковым, Исходный код доступен по адресу github.com/Avrutskiy/dneural

Благодарности. Автор выражает глубокую признательность своему научному руководителю Е, А. Дорофееву за неоценимую поддержку в течении 10 лет, на протяжении которых была написана магистерская и кандидатская диссертация. Кроме того, автор благодарит И, В, Воронина и А, М, Гайфуллина за научную поддержку, а также С, М, Боенякова за критику магистерской работы, которая подтолкнула автора к написанию данной диссертации. Автор также выражает признательность лаборатории нейронных систем и глубокого обучения МФТИ и лично М. С. Бурцеву.

Глава 1 Обзор

В данной главе кратко описаны истоки искусственных нейронных сетей - многослойных персептронов и их математическая формулировка. Классический алгоритм обучения сформулирован в виде, удобном для обобщения, которое сделано в Главе 4, Приведены характерные результаты, которые можно получить при использовании многослойных персептронов для аппроксимации функций в пространствах малой размерности, а также при решении дифференциальных уравнений. Очерчена проблема недостаточной точности, решению которой посвящена Глава 2,

1.1. Биологические нейроны

Выживание у достаточно сложных живых организмов практически целиком основано на анализе окружающего мира и принятии решений, и эта функция целиком возложена на центральную нервная систему (ЦНС), У млекопитающих она состоит из двух специализированных отделов: низшего и среднего, которые управляют отдельными органами и системами, и высшего отдела, который управляет организмом как едиными целым и способен принимать решения на основе совокупной информации от органов чувств. Высший отдел ЦНС состоит преимущественно из коры больших полушарий, которая у человека занимает более 80% объема мозга. Схематичный разрез этой структуры представлен на Рисунке 1,1,1,

Основным её элементом являются нейроны - особые клетки, состоящие из тела (сомы) и отростков двух типов - аксонов и дендритов. Аксоны представляют собой длинные миели-низированные нервные волокна1, которые отходят в стороны и прикрепляются к дендритам других нейронов с помощью синапсов. Аксон у нейрона один, однако, его окончание может иметь множество синапсов, а один нейрон через разветвленные дендриты может принимать сигналы от множества аксонов, В нормальном состоянии нейрон имеет отрицательный потенциал порядка -65мВ относительно своего окружения. При возбуждении синаптической связи, в дендрите нейрона открываются ионные каналы, которые в зависимости от типа могут пропускать внутрь клетки положительные либо отрицательные ионы. Количество каналов также может быть различным2. Если положительный заряд попадает в клетку достаточно быстро и её суммарный потенциал достигает отметки порядка -55мВ, то по всей клеточной мембране открываются потенциал-зависимые натриевые каналы. Они пропускают ионы Ма+ внутрь клетки, что ещё более резко повышает её потенциал, У длинного отростка -аксона при этом сначала открываются каналы у основания, а затем, из-за сопутствующего

1 скорость распространения сигнала по таким волокнам на порядок больше, чем без миелиновой оболочки движение ионов обуславливается не только зарядом, но и концентрацией, кроме того, в клетке присутствуют

механизмы их принудительного транспорта

Рис. 1.1.1. Сечение коры головного мозга

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

Кора содержит порядка 12 миллиардов нейронов. На левой части Рисунка 1 показано, как она будет выглядеть если окрасить все миелинизированные нервные волокна, а на правом - если окрасить небольшое случайное количество нейронов. В коре можно увидеть шесть различных слоёв, хотя некоторые её части могут имеют только три слоя. Каждый слой характеризуется типом встречающихся в нем нейронов и типом связей. Первый слой носит название «молекулярный», содержит крайне мало собственных нейронов и практически целиком состоит из аксонов, связывающих между собой различные частей коры (в том числе и полушария мозга). Реципиенты этих аксонов в основном находятся в слоях II и III, а отправители в слое III, который так же содержит нейроны с вертикальными аксонами. Слои IV, V, VI находятся ближе к древним частям ЦНС и связаны с ними. IV принимает сигналы от таламуса, V передает сигналы в кортикоспинальный тракт, а слой VI передает и принимает сигналы от таламуса. Из Рисунка 1.1.1 видно, что заметная часть нервных волокон связывает нейроны в пределах одного слоя. Однако, как соседние, так и более отдаленные слои также связаны друг с другом. Результаты работы ЦНС закодированы через временные последовательности поляризующихся нейронов, которые через периферическую нервную систему контролируют остальной организм.

1.2. Искусственные нейронные сети

Итак, мы кратко очертили строение высшей нервной системы и нам точно известно, что она способна решать относительно сложные задачи вроде классификации изображений. Однако вся совокупность нейронов, действующих друг на друга через синаптические связи, которые создают микротоки, от интеграла которых зависит возбуждение конкретного нейрона - это довольно сложная система, моделирование которой само по себе непростая задача [47-51], Было предпринято множество попыток [52-54] создать упрощенную математическую модель, которая обладала бы схожими вычислительными свойствами. Изложим лишь ту, что будет использована в данной работе - многослойный персептрон. Как следует из названия, он так же состоит из слоев, подобных тем, что встречаются в коре головного мозга. Модель основана на нескольких упрощениях. Первое касается характера связей нейронов - мы предполагаем, что взаимодействуют друг с другом только соседние слои, причем каждый нейрон принимает информацию от всех нейронов предыдущего и передает её на все нейроны последующего слоя. Мы так же выбросим связи нейронов самих с собой3, так что теперь сигнал может распространяться только в одном направлении, К этому мы добавляем упрощение временной зависимости - будем считать, что все нейроны каждого слоя передают сигналы одновременно и мгновенно. Вместо интегрирования токов теперь можно считать, что каждый нейрон суммирует все поданные на него сигналы. Вместо количества открываемых каналов, каждой синаптической связи поставим в соответствие действительное число, на которое будет умножаться передаваемый сигнал. Согласно биологической модели, нейрон должен работать в режиме «всё или ничего» - вместо этого предположим, что его выход монотонно возрастает в зависимости от входа, и имеет конечные пределы при Это упрощение можно рассматривать как усреднение количества активаций по времени, В результате мы получаем модель многослойного персептрона. На нейроны его первого слоя нужно подать некоторые значения, а результатом работы сети будут значения выходов нейронов последнего слоя. Несмотря на то, что в построенной модели едва ли осталось сходство с биологической нейронной сетью, она не только может справляться с задачами схожими с теми, что решает ЦНС, но и довольно универсальна с математической точки зрения,

1.2.1. Теоремы существования. Можно задаться вопросом - является ли способность биологических нейронных сетей решать повседневные задачи следствием "простоты" самих задач или же вычислители, собранные из комбинации простых элементов сами по себе достаточно универсальны. Математически это можно сформулировать так - достаточно ли комбинаций простых одномерных функций для построения произвольных отображений в многомерных пространствах? Схожим, но более частным случаем вопроса является 13-я проблема Гильберта - можно ли представить решение уравнения седьмой степени (которое может быть представлено как функция трех переменных) в виде суперпозиции функций от двух переменных,

о

такой тип связи участвует в создании ритма бега лошадей - подавая сигнал сам на себя, нейрон получит его с определенной задержкой, создавая таким образом несущую частоту

Утвердительный ответ на этот вопрос получил Колмогоров в 1957 году [55] в виде более общей теоремы - для непрерывной функции / в пространстве размерности N > 2 справедливо

2Ж+1 / N \

}' (ХЪ...,Хм ) = ^ ^ ( ^ (хр ) ) .

4=1 \'Р=1 )

Равенство выполняется в единичном кубе. Монотонные непрерывные отображения фРд зависят только от размерности пространства, а фд зависят от конкретной функции /, Такая конструкция весьма далека от многослойного переептрона, в котором нейроны имеют вполне определенную (а часто и одинаковую) функцию активации, тогда как функции ф^ фрд в общем случае не универсальны и довольно сложны. Однако, для приложений вместо точного равенства подойдёт и произвольно малая ошибка, и такого послабления оказывается достаточно, В начале девяностых годов двадцатого века были опубликованы статьи [56,57] содержащие теоремы о существовании для переептронов с фиксированными функциями, В первой работе доказательство опиралось на теорему Вейерштраасса - Стоуна, а во втором на теорему Колмогорова, которая была применена для конкретного вида нейронной сети. Сперва рассмотрим [57], В ней речь идет о переептроне с двумя скрытыми слоями. Запишем его в символьном виде как преобразование входного вектора х:

у(х) = г + ^ ^а I ¿7 + ^ ^а + ^ ЦТРахЛ ) . (1.2.1)

7 \ Р \ а /у

Здесь индексами а, 7 обозначены величины связанные со входным, первым и вторым скрытым слоем соответственно. Так, матрица Шсвязывает нейроны входного и первого слоя. В суммированиях а пробегает то компонентам входного вектора х, а @ по нейронам первого скрытого слоя. Количество элементов, перечисляемых индексом, будем обозначать с помощью модуля, то есть |а| это размерность вектора х, а | - число нейронов в первом скрытом слое. Отображение V задается тремя матрицами Ш, Ши Ш7 (так как выход состоит из одной компоненты, последняя матрица вырождается в столбец) и тремя векторами сдвига £7, £ (последний вектор аналогично вырождается в скаляр). Скалярная функция а действует независимо на каждую компоненту своего аргумента. Предполагается что а (то) = 1, а (-то) = 0 а' > 0. Для удобства, величины, поступающие на вход нейронов некоторого слоя и к которым далее применяется нелинейное преобразование а, будем называть вектором "активности" этого слоя и обозначать буквой г с тем же греческим индексом, который использовался для нейронов. Для первого и второго скрытого слоя соответственно:

*Р = ^ + ^ №^аха, (1.2.2)

р

Рис. 1.2.1. Схематичная структура переептропа с двумя скрытыми слоями 1.2.1 для случая \а\ = 2, | = 4, \l| = 4.

Дня выхода:

v = t + ^ W7a (z7) . (1.2.4)

7

Схематичное изображение нейронной сети со входом размерности 2 и четырьмя нейронами в скрытых с.ноях приведено на Рисунке 1.2.1. Основной результат |57| состоит в том, что конструкция (1.2.1) является универсальным аннрокисматором. В работе также указана оценка количества нейронов в скрытых с.ноях, которого будет достаточно дня достижения заданной точности. Это количество также зависит от самой функции и от размерности пространства. Опубликованная незадолго до этой работы статья |56| содержала аналогичный результат, но дня сети с одним скрытым слоем. Это означает, что конструкция (1.2.1) в некотором смысле является избыточной, однако с практической точки зрения она оказывается крайне важна. Дело в том, что аннроксимационная способность нейронной сети в большей степени зависит от общего числа настраиваемых параметров: весов и векторов сдвига. Предположим, что дня некоторой функции одного переменного их понадобилось 104, Тогда сеть с одним скрытым слоем будет описываться двумя матрицами 1 х 3333 и 3333 х 1 и одним вектором сдвига длины 3333. Сеть с двумя скрытыми слоями будет иметь три матрицы: 1 х 98, 98 х 98 и 98 х 1, и два вектора длины 98. Аппроксимационная способность у этих двух сетей будет сравнима, однако между ними есть одно важное отличие. Дело в том, что основной успех нейронные сети получили поело того, как стали доступны быстрые параллельные вычисления па графических ускорителях, сокращённо CPU (Graphics Processing Unit). Из-за зависимости аппаратной эффективности CPU от размера матриц, время обучения первой сети будет примерно па порядок больше, чем дня второй. Кроме того, конструкция нейронной сети с двумя скрытыми слоями с помощью выражения (1.2.3) легко обобщается па произвольное число слосчз. Для задач классификации были продемонстрированы преимущества сетей, содержащих десятки |58| или даже сотни слоев |59|, а значит рассуждения, справедливые дня сетей произвольной длинны имеют большую практическую значимость. Упомянем также

- 4

- 2

0

х

а'(х) а(х)

Рис. 1.2.2. График логистической сигмоиды 1/ (1 + е х) и её производной

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

Для сетей произвольной длинны достаточно переписать формулу (1.2.3) для двух соседних елоёв с индексами вики рассматривать последовательное её применение с соответствующими матрицами весов и векторами сдвига

/ =

(1.2.5)

Частный случай а (х) = х дает нам формулу (1.2.2), а если размерность выхода равна 1, то индекс в можно не писать, и мы получаем формулу (1.2.4). В данной работе будет использоваться логистическая сигмоида а (х) = 1/ (1 + е~х), представленная на Рисунке 1.2.2.

2

4

1.2.2. Обратное распространение ошибки. Несмотря на то, что аппрокеимационные теоремы гарантируют существование весов, при которых нейронная сеть реализует отображение с достаточной точностью, эти теоремы не являются конструктивными, то есть не описывают способа нахождения этих весов. Современные алгоритмы поиска параметров многослойного переептрона основываются в первую очередь на численной минимизации «ошибки» - меры отклонения нейронной сети от целевой функции, вычисленной на некотором наборе точек, называемых тренировочным множеством. В основе таких алгоритмов лежит вычисление градиента ошибки, описанное в 1988 году [61].

Рассмотрим некоторое начальное состояние сети Ш (0) Ь (0), иод которым будем понимать полный набор весов и сдвигов соответственно (для алгоритма все параметры являются равноправными, поэтому их индексы не важны). Пусть скалярная функция / известна на некотором наборе точек ха, а Е [1,М], также называемых «паттернами». Если в каждой точке определить заведомо положительную и дифференцируемую ошибку, например как

квадрат разности

1 / \ 2

е (£) = -(у (х) — f (х)) , (1.2.6)

2

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

Е = е (яа)

а

по всем параметрам нейронной сети

W,t = arg min Е.

Если знать градиенты dE/dW и dE/dt, то можно построить итерационную процедуру:

дЕ

W (п + 1) = W (п) — ß

t (п + 1) = t (п) — ß-

dW (п)' дЕ

дЪ (пУ

причем при достаточно малом ошибка Е сети в состоянии Ш (п + 1) Ь (п + 1) будет заведомо меньше, чем при Ш (п), Ь (п). При определенных условиях гарантируется сходимость к некоторому локальному минимуму [62].

Опишем алгоритм вычисления дЕ/дШ, дЕ/дЬ для сети, определяемой формулами (1.2.2), (1.2.3), (1.2.4). В силу линейности градиента, можно рассмотреть только локальную ошибку е. Выражение дЕ/дШ будет равно сумме де/дШ то всем а. Вычисления начнем с конца - ошибка (1.2.6) явно зависит только от выхода нейронной сети е = е(и). Её производная по V есть

^ = (« - /), (1-2.7)

а производная по сдвигу Ь последнего слоя, очевидно

де де дЪ ду

Рассмотрим замену переменных е (и) ^ е (Ж7), Пользуясь формулой для преобразования градиента, запишем

де де ду

дШ 7 дудШ 7'

Член дги/дШ7 вычисляется с помощью (1.2.4). Здесь и далее мы будем при необходимости писать штрих у индексов суммирования чтобы избежать их повторения:

д д -V =

dw7 dW7

t + ^ W7'а (V

= а (z1). (1.2.8)

Следовательно,

де

= (у - Л а (^)

Для вычисления градиента по весам между последним и предпоследним слоем рассмотрим замену е (х1) ^ е {Ш1^-.

де де дх1

Здесь правый сомножитель есть градиент ошибки е по активностям нейронов предпоследнего слоя х1, Он получается из замены е (и) ^ е \ х1 ' •

д д д

дхч' ду дхч''

в которой ди/дх^ находится путём дифференцирования формулы (1,2,4)

д

д

дтР' дх^'

г + ^ W7a (х7)

= а' {х

' ^) •

(1.2.10)

/ д

(1.2.8) (здесь 67'7 есть символ Кроиекера):

д

, х1 =

д

^ + ^ ^ а (

= а х

^ 3 у'/у.

(1.2.11)

Таким образом, выражение (1.2.9) принимает вид

де £ (* V) V,) де

у

дтР

„ &).

д д

дР дх 7'

Для матрицы между входным и первым скрытым слоем можно записать

(1.2.12)

д

£

де дх13

^ дхI3'

¡з>

Где дх13 аналогичен (1.2.11), но без нелинейной функции активации

дх 13'

(1.2.13)

аОр'р •

Величина де/дх@ выражается через де/дх1 с помощью замены е (х1) ^ е ^ :

де

д^7

£

де дх1

д.ИЙ дг?

Второй сомножитель вычисляется схожим с (1,2,10) образом:

д

-£< =

д

¿7 + ^ цт т а )

а' (V')

Подставляя все результаты окончательно получаем де ^ де„„# , ( р^ = ^

Е Ш *« ' И = ✓ И Е й *

дх^'

Здесь мы вынесли а' ух& ^ из под знака суммирования, так как он не зависит от 7', Таким образом, градиент е по активностям нейронов сперва вычисляется на выходном слое, а затем распространяется обратно по сети. Градиент е по вектору сдвига $ аналогичен выражению (1,2,12), Фактически, мы решили поставленную задачу. Хоть этого и не требуется для вычисления градиента по весам, рассмотрим ещё одну замену. Для первого слоя можно записать е (г^ е (х«) а следовательно

де дх «

Е

де дг13 дхI3' дха'

где

То есть

_д_ дхг

де дх «

Е р*"«

¡3'

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

)«= ш; - л2 = (-

ду д/

дх « дх«

вектора это уже не так. Выражение, которое мы получили, оказывается равно только части истинного градиента:

де дх «

=

( л

/ ^ =- л ^

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

^ = - (- /) £•

¡3' а

=

входного мы получим VI» (х). Такой алгоритм называется «быстрым вычислением градиента», в том смысле, что его сложность слабо зависит от размерности вектора х. Для удобства выпишем все соотношения прямого и обратного прохода для двух смежных слоев в и к:

/ = ^ + X^wвк(J (хк

$ + (хк), (1.2.14)

д д

= ^* (*") - (1-2-15)

дШвк дхв

де = * <*"> £|>*, У'216)

дхк ^ дхв

д д

ш = э? • (1'2Л7)

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

а' (хк) предыдущего слоя вычисляется градиент по матрице весов Шсвязывающей эти два слоя. Градиент е по параметрам сдвига $ численно равен де/дх^.

Обсудим процесс генерации начального состояния нейронной сети. Так как градиент является локальной величиной, то от этого состояния напрямую зависит результат минимизации [63]. Исследовать поверхность ошибки в пространстве весов и выбирать какую-то специальную точку довольно затруднительно. Вместо этого можно поступить согласно работам [3,64,65]. Рассмотрим состояние сети, при котором на некоторый нейрон подается значение х ^ 1. При таком аргументе функция активации будет близка к насыщению, а её производная в выражении (1.2.16) близка к нулю. Это значит, что настройка весов, приходящих в этот нейрон, может затянуться. Идея состоит в том, чтобы избежать подобной ситуации в начальном состоянии сети. Для этого аргумент а' (то есть активность каждого нейрона) должен быть порядка единицы. Согласно выбранной функции активации, каждый нейрон передает па следующий слой величину в интервале (0, 1). Считая, что все значения из этого интервала равновероятны, а начальные веса распределены равномерно в интервале [—1,1], получим, что среднее значение, поступающее па каждый нейрон следующего слоя, равно нулю. Однако, если количество нейронов к >> 1, то дисперсия этой величины, пропорциональная будет велика и много нейронов окажется в пересыщенном состоянии. Для того чтобы дисперсия также была порядка единицы, распределим начальные веса в

интервале

Рис. 1.2.3. СШАИ-Ю

к.

Множитель с ~ 1 можно подбирать экспериментально, в данной работе с = 2. Разумеется, можно непосредственно подать тренировочное множество па вход сети, вычислить дисперсии входа каждого нейрона и скорректировать веса соответствующим образом, однако дня рассматриваемых в данной работе задач, подобные методы не приносят ощутимой пользы.

1.2.3. Задачи малой размерности. Очередной всплеск популярности нейронных сетей произошел после того, когда с их помощью была удовлетворительно решена задача о распознавании образов |1|. В данной работе будут рассмотрены задачи, которые сильно отличаются от широко известных применений нейронных сетей |2-5,12-15|. Чтобы объяснить различия между ними, сперва опишем задачу распознавания. Классификатор образов можно рассматривать как функцию, определённую па множестве изображений. Мипималистичным примером такого множества может служить СШАЛ-Ю - 60000 цветных фотографий размером 32 х 32, на которых изображены объекты из 10 попарно не пересекающихся классов4, примеры которых можно видеть па Рисунке 1.2.3. Одно такое изображение задается вектором длины 32 х 32 х 3 = 3072. Классификатор является функцией в пространстве N = 3072, и способность нейронных сетей обходить «проклятье размерностей» |8,9| оказалась крайне важна. Аналогичные рассуждения справедливы и для распознавания голоса, где N ~ 100. Существенно и то, что такие задачи едва ли могут быть решены классическими анпрокси-маторами па основе сплайнов, рядов или представлением функций па сетке. В результате, наиболее известной областью применения нейронных сетей оказалась аппроксимация функций в пространствах большой размерности.

Похожие диссертационные работы по специальности «Математическое моделирование, численные методы и комплексы программ», 05.13.18 шифр ВАК

Список литературы диссертационного исследования кандидат наук Аврутский Всеволод Игоревич, 2021 год

Литература

fl] Krizhevsky, A. Imagenet classification with deep convolutional neural networks / A. Krizhevsky, I. Sutskever, G.E. Hinton // Advances in neural information processing systems. — 2012. — Pp. 1097-1105.

[2] Connectionist temporal classification: labelling unsegmented sequence data with recurrent neural networks / A. Graves, S. Fernández, F. Gomez, J. Schmidhuber // Proceedings of the 23rd international conference on Machine learning / ACM. - 2006. - Pp. 369-376.

[3] Delving deep into rectifiers: Surpassing human-level performance on imagenet classification / К. He, X. Zhang, S. Ren, J. Sun // Proceedings of the IEEE international conference on computer vision. — 2015. — Pp. 10261034.

[4] Lossy image compression with compressive autoencoders / L. Theis, W. Shi, A. Cunningham, F. Huszár // arXiv preprint arXiv:1703.00395. — 2017.

[5] Zhang, G.P. Neural networks for classification: a survey / G.P. Zhang // IEEE Transactions on Systems, Man, and Cybernetics, Part С (Applications and Reviews). — 2000. — Vol. 30, no. 4. — Pp. 451-462.

[6] Huang, G.B. Extreme learning machine: theory and applications / G.B. Huang, Q.Y. Zhu, C.K. Siew // Neurocomputing. — 2006. — Vol. 70, no. 1-3. — Pp. 489-501.

[7] Husmeier, D. Random vector functional link (RVFL) networks / D. Husmeier // Neural Networks for Conditional Probability Estimation. — Springer, 1999. — Pp. 87-97.

[8] Barron, A.R. Universal approximation bounds for superpositions of a sigmoidal function / A.R. Barron // IEEE Transactions on Information theory. — 1993. — Vol. 39, no. 3. — Pp. 930-945.

[9] Barron, A.R. Approximation and estimation bounds for artificial neural networks / A.R. Barron // Machine Learning. — 1994. — Vol. 14, no. 1. — Pp. 115-133.

[10] Mittal, S. A survey of techniques for optimizing deep learning on GPUs / S Mittal, S Vaishay // Journal of Systems Architecture. — 2019. — Vol. 99. — P. 101635.

[11] Compute Solution for Tesla's Full Self-Driving Computer / E. Talpes, D.D. Sarma, G. Venkataramanan et al. // IEEE Micro. - 2020. - Vol. 40, no. 2. - Pp. 25-35.

[12] Deng, L. Machine learning paradigms for speech recognition: An overview / L. Deng, X. Li // IEEE Transactions on Audio, Speech, and Language Processing. — 2013. — Vol. 21, no. 5. — Pp. 1060-1089.

[13] Deep neural networks for acoustic modeling in speech recognition: The shared views of four research groups / G. Hinton, L. Deng, D. Yu et al. // IEEE Signal processing magazine. — 2012. — Vol. 29, no. 6. — Pp. 82-97.

[14] Feng, X. Speech feature denoising and dereverberation via deep autoencoders for noisy reverberant speech recognition / X. Feng, Y. Zhang, J. Glass // 2014 IEEE international conference on acoustics, speech and signal processing (ICASSP) / IEEE. - 2014. - Pp. 1759-1763.

[15] Petridis, S. Deep complementary bottleneck features for visual speech recognition / S. Petridis, M. Pantic // 2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) / IEEE. — 2016. - Pp. 2304-2308.

[16] Aarts, L.P. Neural network method for solving partial differential equations / L.P. Aarts, P. Van Der Veer // Neural Processing Letters. — 2001. — Vol. 14, no. 3. — Pp. 261-271.

[17] Tarkhov, D.A. Semi-empirical Neural Network Modeling and Digital Twins Development / D.A. Tarkhov, A.N. Vasilyev. — Academic Press, 2019.

[18] Artificial neural network method for solving the Navier-Stokes equations / M. Baymani, S. Effati, H. Niaz-mand, A. Kerayechian // Neural Computing and Applications. — 2015. — Vol. 26, no. 4. — Pp. 765-773.

[19] Beidokhti, R.S. Solving initial-boundary value problems for systems of partial differential equations using neural networks and optimization techniques / R.S. Beidokhti, A. Malek // Journal of the Franklin Institute.

- 2009. - Vol. 346, no. 9. - Pp. 898-913.

[20] Berg, J. A unified deep artificial neural network approach to partial differential equations in complex geometries / J. Berg, K. Nystrom // Neurocomputing. — 2018. — Vol. 317. — Pp. 28-41.

[21] He, S. Multilayer neural networks for solving a class of partial differential equations / S. He, K. Reif, R. Unbehauen // Neural networks. — 2000. — Vol. 13, no. 3. — Pp. 385-396.

[22] Kumar, M. Multilayer perceptrons and radial basis function neural network methods for the solution of differential equations: a survey / M. Kumar, N. Yadav // Computers & Mathematics with Applications. — 2011. - Vol. 62, no. 10. - Pp. 3796-3811.

[23] Lagaris, I.E. Artificial neural networks for solving ordinary and partial differential equations / I.E. Lagaris, A. Likas, D.I. Fotiadis // IEEE Transactions on Neural Networks. — 1998. — Vol. 9, no. 5. — Pp. 987-1000.

[24] Malek, A. Numerical solution for high order differential equations using a hybrid neural network optimization method / A. Malek, R.S. Beidokhti // Applied Mathematics and Computation. — 2006. — Vol. 183, no. I. — Pp. 260-271.

[25] Mall, S. Single layer Chebyshev neural network model for solving elliptic partial differential equations / S. Mall, S. Chakraverty // Neural Processing Letters. — 2017. — Vol. 45, no. 3. — Pp. 825-840.

[26] Raissi, M. Physics-informed neural networks: A deep learning framework for solving forward and inverse problems involving nonlinear partial differential equations / M. Raissi, P. Perdikaris, G.E. Karniadakis // Journal of Computational Physics. — 2019. — Vol. 378. — Pp. 686-707. http://dx.doi.Org/10.l.l/jpb001.

[27] Rudd, K. A constrained backpropagation approach for the adaptive solution of partial differential equations / K. Rudd, G. Di Muro, S. Ferrari // IEEE transactions on neural networks and learning systems. — 2014. — Vol. 25, no. 3. — Pp. 571-584.

[28] Rudd, K. A constrained integration (CINT) approach to solving partial differential equations using artificial neural networks / K. Rudd, S. Ferrari // Neurocomputing. — 2015. — Vol. 155. — Pp. 277-285.

[29] Shirvany, Y. Multilayer perceptron neural networks with novel unsupervised training method for numerical solution of the partial differential equations / Y. Shirvany, M. Hayati, R. Moradian // Applied Soft Computing.

- 2009. - Vol. 9, no. 1. — Pp. 20-29.

[30] Sirignano, J. DGM: A deep learning algorithm for solving partial differential equations / J. Sirignano, K. Spiliopoulos // Journal of Computational Physics. — 2018. — Vol. 375. — Pp. 1339-1364.

[31] Tsoulos, I.C. Solving differential equations with constructed neural networks / I.G. Tsoulos, D. Gavrilis, E. Glavas // Neurocomputing. - 2009. - Vol. 72, no. 10-12. - Pp. 2385-2391.

[32] Горбаченко, В. И. Решение краевых задач математической физики с помощью сетей радиальных базисных функций / В.И. Горбаченко, М.В. Жуков // Журнал вычислительной математики и математической физики. — 2017. — Vol. 57, no. 1. — Pp. 133-143.

[33] Горбаченко, В. И. Подходы и методы обучения сетей радиальных базисных функций для решения задач математической физики / В.И. Горбаченко, М.В. Жуков // Нейрокомпьютеры разработка применение.

- 2013. - по. 9. - Pp. 012-018.

[34] Васильев, А.Н. Нейросетевые подходы к решению краевых задач в многомерных составных областях / А.Н. Васильев, Д.А. Тархов // Известия Южного федерального университета. Технические науки. — 2004. - Vol. 44, по. 9.

[35] Васильев, А.Н. Эволюционные алгоритмы решения краевых задач в областях, допускающих декомпозицию / А.Н. Васильев, Д.А. Тархов // Математическое моделирование. — 2007. — Vol. 19, по. 12. - Pp. 52-62.

[36] Васильев, А.Н. Параметрические нейросетевые модели классических и неклассических задач для уравнения теплопроводности / А.Н. Васильев, Д.А. Тархов // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета. Физико-математические науки. ................ 2012. - по. 3 (153).

[37] Нейросетевой подход к решению сложных задач для обыкновенных дифференциальных уравнений / А.Н. Васильев, Т.В. Лазовская, Д.А. Тархов, Т.А. Шемякина // XVIII международная научно-техническая конференция Нейроинформатика-2016. — 2016. — Pp. 52-60.

[38] Smith, G.D. Numerical solution of partial differential equations: finite difference methods / G.D. Smith. — Oxford university press, 1985.

[39] Taflove, A. Computational electrodynamics: the finite-difference time-domain method / A. Taflove, S.C. Hag-ness. — Artech house, 2005.

[40] Eymard, R. The finite volume method for Richards equation / R. Eymard, M. Gutnic, D. Hilhorst // Computational Geosciences. — 1999. — Vol. 3, no. 3. — Pp. 259-294.

[41] Godunov, S.K. A difference method for numerical calculation of discontinuous solutions of the equations of hydrodynamics / S.K. Godunov // Matematicheskii Sbornik. — 1959. — Vol. 89, no. 3. — Pp. 271-306.

[42] Kolgan, V.P. Application of the minimum-derivative principle in the construction of finite-difference schemes for numerical analysis of discontinuous solutions in gas dynamics / V.P. Kolgan // Uchenye Zapiski TsaGI fSci. Notes Central Inst. Aerodyn]. — 1972. — Vol. 3, no. 6. — Pp. 68-77.

[43] Application of a meshless method in electromagnetics / S.L. Ho, S. Yang, J.M. Machado, H.C. Wong // IEEE transactions on magnetics. — 2001. — Vol. 37, no. 5. — Pp. 3198-3202.

[44] The meshless finite element method / S.R. Idelsohn, E. Onate, N. Calvo, F. Del Pin // International Journal for Numerical Methods in Engineering. — 2003. — Vol. 58, no. 6. — Pp. 893-912.

[45] Katz, A.J. Meshless methods for computational fluid dynamics / A.J. Katz. — Stanford University Stanford, CA, 2009.

[46] Artificial neural network methods for the solution of second order boundary value problems / C. Anitescu,

E. Atroshchenko, N. Alajlan, T. Rabczuk // Computers, Materials & Continua. — 2019. — Vol. 59, no. I. — Pp. 345-359.

[47] Ponulak, F. Introduction to spiking neural networks: Information processing, learning and applications. /

F. Ponulak, A. Kasinski // Acta neurobiologiae experimentalis. — 2011. — Vol. 71, no. 4. — Pp. 409-433.

[48] Analog circuits for modeling biological neural networks: design and applications / S. Le Masson, A. Laflaquiere, T. Bal, G. Le Masson // IEEE transactions on biomedical engineering. — 1999. — Vol. 46, no. 6. — Pp. 638-645.

[49] Amit, D.J. Modeling brain function: The world of attractor neural networks / D.J. Amit, D.J. Amit. — Cambridge university press, 1992.

[50] Prostov, Y.S. Match-Mismatch Detection Neural Circuit Based on Multistable Neurons / Y.S. Prostov, Y.V. Tiumentsev // International Conference on Neuroinformatics / Springer. — 2018. — Pp. 84-90.

[51] Prostov, Y.S. Functional plasticity in a recurrent neurodynamic model: from gradual to trigger behavior / Y.S. Prostov, Y.V. Tiumentsev // Procedia computer science. — 2018. — Vol. 123. — Pp. 366-372.

[52] Dayan, P. Theoretical neuroscience: computational and mathematical modeling of neural systems / P. Dayan, L.F. Abbott. - 2001.

[53] Cowan, J.D. Discussion: McCulloch-Pitts and related neural nets from 1943 to 1989 / J.D. Cowan // Bulletin of mathematical biology. — 1990. — Vol. 52, no. 1-2. — Pp. 73-97.

[54] Maass, W. Networks of spiking neurons: the third generation of neural network models / W. Maass // Neural networks. - 1997. — Vol. 10, no. 9. — Pp. 1659-1671.

[55] Kolmogorov, A.N. On the representation of continuous functions of many variables by superposition of continuous functions of one variable and addition / A.N. Kolmogorov // Doklady Akademii Nauk / Russian Academy of Sciences. — Vol. 114. — 1957. — Pp. 953-956.

[56] Hornik, K. Multilayer feedforward networks are universal approximators / K. Hornik, M. Stinchcombe, H. White // Neural networks. — 1989. — Vol. 2, no. 5. — Pp. 359-366.

[57] Kurkova, V. Kolmogorov's theorem and multilayer neural networks / V. Kurkova // Neural networks. — 1992. - Vol. 5, no. 3. - Pp. 501-506.

[58] Simonyan, K. Very deep convolutional networks for large-scale image recognition / K. Simonyan, A. Zisser-man // arXiv preprint arXiv:1409.1556. — 2014.

[59] Inception-v4, inception-resnet and the impact of residual connections on learning / C. Szegedy, S. Ioffe, V. Vanhoucke, A. Alemi // Proceedings of the AAAI Conference on Artificial Intelligence. — Vol. 31. — 2017.

[60] Hornik, K. Approximation capabilities of multilayer feedforward networks / K. Hornik // Neural networks.

- 1991. - Vol. 4, no. 2. - Pp. 251-257.

[61] Rumelhart, D.E. Learning representations by back-propagating errors / D.E. Rumelhart, G.E. Hinton, R.J. Williams // Cognitive modeling. — 1988. — Vol. 5, no. 3. — P. 1.

[62] Tesauro, G. Asymptotic convergence of backpropagation / G. Tesauro, Y. He, S. Ahmad // Neural Computation. — 1989. — Vol. 1, no. 3. — Pp. 382-391.

[63] Kolen, J.F. Back propagation is sensitive to initial conditions / J.F. Kolen, J.B. Pollack // Advances in neural information processing systems. — 1991. — Pp. 860-867.

[64] Glorot, X. Understanding the difficulty of training deep feedforward neural networks / X. Glorot, Y. Bengio // Proceedings of the Thirteenth International Conference on Artificial Intelligence and Statistics. — 2010. — Pp. 249-256.

[65] Mishkin, D. All you need is a good init / D. Mishkin, J. Matas // arXiv preprint arXiv:1511.06422. — 2015.

[66] Intriguing properties of neural networks / C. Szegedy, W. Zaremba, I. Sutskever et al. // arXiv preprint arXiv:1312.6199. - 2013.

[67] Nguyen, A. Deep neural networks are easily fooled: High confidence predictions for unrecognizable images / A. Nguyen, J. Yosinski, J. Clune // Proceedings of the IEEE conference on computer vision and pattern recognition. — 2015. — Pp. 427-436.

[68] M#//er, M.F. A scaled conjugate gradient algorithm for fast supervised learning / M.F. M0ller. — Aarhus University, Computer Science Department, 1990.

[69] Riedmiller, M. A direct adaptive method for faster backpropagation learning: The RPROP algorithm / M. Riedmiller, H. Braun // Neural Networks, 1993., IEEE International Conference on / IEEE. — 1993. — Pp. 586-591.

[70] Kingma, D.P. Adam: A method for stochastic optimization / D.P. Kingma, J. Ba // arXiv preprint arXiv: Ц12.6980. - 2014.

[71] Tieleman, T. Divide the gradient by a running average of its recent magnitude, coursera: Neural networks for machine learning / T. Tieleman, G. Hinton // Technical Report. — 2017.

[72] Гайфуллин, A.M. Автомодельное нестационарное течение вязкой жидкости / A.M. Гайфуллин // Известия Российской академии наук. Механика жидкости и газа. — 2005. — по. 4. — Pp. 29-35.

[73] Gusev, V.N. An exact solution of the one-dimensional Navier-Stokes equations / V.N. Gusev, A.V. Zhbako-va // Fluid Dynamics. — 1968. — Vol. 3, no. 3. — Pp. 75-77.

[74] Cai, R. Explicit analytical solutions of 2-D laminar natural convection / R. Cai, N. Zhang // International journal of heat and mass transfer. — 2003. — Vol. 46, no. 5. — Pp. 931-934.

[75] Li, X. Collisionless periodic orbits in the free-fall three-body problem / X. Li, S. Liao // New Astronomy. — 2019. - Vol. 70. - Pp. 22-26.

[76] Hudomal, A. New periodic solutions to the three-body problem and gravitational waves / A. Hudomal // Master of Science thesis at the Faculty of Physics, Belgrade University. — 2015.

[77] Kerr, R.P. Gravitational field of a spinning mass as an example of algebraically special metrics / R.P. Kerr // Physical review letters. — 1963. — Vol. 11, no. 5. — P. 237.

[78] Gaifullin, A.M. Flow past a plate with an upstream-moving surface / A.M. Gaifullin // Fluid Dynamics. — 2006. - Vol. 41, no. 3. - Pp. 375-380.

[79] Gaifullin, A.M. Diffusion of two vortices / A.M. Gaifullin, A.V. Zubtsov // Fluid Dynamics. — 2004. — Vol. 39, no. 1. - Pp. 112-127.

[80] Neiland, V. Ya. Asymptotic solutions of the Navier-Stokes equations in regions with large local perturbations / V.Ya. Neiland, V.V. Sychev // Fluid Dynamics. — 1966. — Vol. 1, no. 4. — Pp. 29-33.

[81] Neiland, V. Ya. Asymptotic problems in the theory of viscous supersonic flows / V.Ya. Neiland // Tr. TsAGI.

— 1974. _ Vol. 1529.

[82] Mikhailov, V. V. The theory of viscous hypersonic flow / V.V. Mikhailov, V.Ya. Neiland, V.V. Sychev // Annual Review of Fluid Mechanics. — 1971. — Vol. 3, no. I. — Pp. 371-396.

[83] Kadochnikov, IN. A modified model of mode approximation for nitrogen plasma based on the state-to-state approach / I.N. Kadochnikov, B.I. Loukhovitski, A.M. Starik // Plasma Sources Science and Technology. — 2015. - Vol. 24, no. 5. - P. 055008.

[84] Kadochnikov, IN. Modelling of vibrational nonequilibrium effects on the H 2 air mixture ignition under shock wave conditions in the state-to-state and mode approximations / I.N. Kadochnikov, I.V. Arsentiev // Shock Waves. - 2020. - Vol. 30, no. 5. - Pp. 491-504.

[85] Ryzhov, A. A. Numerical modeling of the receptivity of a supersonic boundary layer to entropy disturbances / A.A. Ryzhov, V.G. Sudakov // Fluid Dynamics. - 2012. - Vol. 47, no. 3. - Pp. 338-345.

[86] Griewank, A. Evaluating derivatives: principles and techniques of algorithmic differentiation / A. Griewank, A. Walther. - SIAM, 2008.

[87] Lagaris, I.E. Neural-network methods for boundary value problems with irregular boundaries / I.E. Lagaris,

A.C. Likas, D.G. Papageorgiou // IEEE Transactions on Neural Networks. — 2000. — Vol. 11, no. 5. — Pp. 1041-1049.

[88] Быстрый метод аэродинамического расчета для задач проектирования / А.В. Бернштейн,

B.В. Вышинский, А.П. Кулешов, Ю.Н. Свириденко // Труды ЦАРИ. — 2008. — по. 2678. — Р. 35.

[89] Бернштейн, А.В. Построение адаптивных суррогатных моделей сложных объектов на основе анализа данных. — 2009.

[90] On solving some data analysis problems encountered in the construction of adaptive surrogate models of complex objects / A. Bernstein, E. Burnaev, S. Chernova et al. // Artificial Intelligence. — 2008. — Vol. 4.

- Pp. 40-48.

[91] Применение искусственных нейронных сетей для обработки и анализа данных аэродинамического эксперимента / Е.А. Дорофеев, А.И. Дынников, А.В. Каргопольцев и др. // Ученые записки ЦАРИ. — 2007. - Т. 38, № 3-4.

[92] Свириденко, Ю.Н. Применение искусственных нейронных сетей в задачах прикладной аэродинамики / Ю.Н. Свириденко // Авиакосмическое приборостроение. — 2015. — по. 2. — Pp. 3-8.

[93] Vyshinsky, V. V. Fast aerodynamic design technologies / V.V. Vyshinsky, Y.A. Dorofeev, Yu.N. Sviridenko // 27th International Congress of the Aeronautical Sciences. — 2010.

[94] Дорофеев, Е.А. Применение нейросетевых технологий в задачах аэродинамического проектирования и определения характеристик летательных аппаратов / Е.А. Дорофеев, Свириденко Ю.Н. // Модели и методы аэродинамики. — 2002. — Pp. 86-87.

[95] Dissanayake, M.W.M.G. Neural-network-based approximations for solving partial differential equations / M.W.M.G. Dissanayake, N. Phan-Thien // communications in Numerical Methods in Engineering. — 1994.

- Vol. 10, no. 3. - Pp. 195-201.

[96] Meade, A.J. The numerical solution of linear ordinary differential equations by feedforward neural networks / A.J. Meade, A.A. Fernandez // Mathematical and Computer Modelling. — 1994. — Vol. 19, no. 12. — Pp. 1-25.

[97] Lagaris, I.E. Artificial neural network methods in quantum mechanics / I.E. Lagaris, A. Likas, D.I. Fotiadis // Computer Physics Communications. — 1997. — Vol. 104, no. 1-3. — Pp. 1-14.

[98] Flake, G. W. Differentiating Functions of the Jacobian with Respect to the Weights / G.W. Flake, B.A. Pearlmutter // Advances in Neural Information Processing Systems. — 2000. — Pp. 435-441.

[99] Siskind, J.M. Efficient implementation of a higher-order language with built-in AD / J.M. Siskind, B.A. Pearlmutter // arXiv preprint arXiv:1611.03416. — 2016.

[100] Avrutskiy, V.I. Backpropagation generalized for output derivatives / V.I. Avrutskiy // arXiv preprint arX-iv:1712.04185. - 2017. — https://arxiv.org/abs/1712.04185.

[101] Avrutskiy, V.I. Enhancing Function Approximation Abilities of Neural Networks by Training Derivatives / V.I. Avrutskiy // IEEE Transactions on Neural Networks and Learning Systems. — 2020. — https://doi.org/10.1109/TNNLS.2020.2979706.

[102] Saint Raymond, X. Elementary introduction to the theory of pseudodifferential operators / X. Saint Raymond. — Routledge, 2018.

[103] Sjoberg, J. Overtraining, regularization and searching for a minimum, with application to neural networks / J. Sjoberg, L. Ljung // International Journal of Control. — 1995. — Vol. 62, no. 6. — Pp. 1391-1407.

[104] Practical training framework for fitting a function and its derivatives / A. Pukrittayakamee, M. Hagan, L. Raff et al. // IEEE transactions on neural networks. — 2011. — Vol. 22, no. 6. — Pp. 936-947.

[105] Generative adversarial nets / I. Goodfellow, J. Pouget-Abadie, M. Mirza et al. // Advances in neural information processing systems. — 2014. — Pp. 2672-2680.

[106] Karatsiolis, S. Conditional Generative Denoising Autoencoder / S. Karatsiolis, C.N. Schizas // IEEE Transactions on Neural Networks and Learning Systems. — 2019.

[107] Variational autoencoder reconstruction of complex many-body physics / I.A. Luchnikov, A. Ryzhov, P.J. Stas et al. // Entropy. - 2019. - Vol. 21, no. 11. - P. 1091.

[108] Transformation invariance in pattern recognition-tangent distance and tangent propagation / P. Simard, Y. LeCun, J. Denker, B. Victorri // Neural networks: tricks of the trade. — 1998. — Pp. 549-550.

[109] Drucker, H. Improving generalization performance using double backpropagation / H. Drucker, Y. Le Cun // IEEE Transactions on Neural Networks. — 1992. — Vol. 3, no. 6. — Pp. 991-997.

[110] Guzhev, D.S. Burgers equation is a test for numerical methods / D.S. Guzhev, N.N. Kalitkin // Matematich-eskoe modelirovanie. — 1995. — Vol. 7, no. 4. — Pp. 99-127.

[111] Adams, N.A. A high-resolution hybrid compact-ENO scheme for shock-turbulence interaction problems / N.A. Adams, K. Shariff // Journal of Computational Physics. — 1996. — Vol. 127, no. I. — Pp. 27-51.

[112] Avrutskiy, V.I. Rational solutions of 1+1-dimensional Burgers equation and their asymptotic / V.I. Avrutskiy, V.P. Krainov // arXiv preprint arXw:1910.05/t88. — 2019.

[113] Avrutskiy, V.I. Preventing Overfitting by Training Derivatives / V.I. Avrutskiy // Proceedings of the Future Technologies Conference / Springer. - 2019. - Pp. 144-163. - https://doi.org/10.1007/978-3-030-32520-6_12.

[114] Sarle, W.S. Stopped training and other remedies for overfitting / W.S. Sarle // Computing science and statistics. — 1996. — Pp. 352-360.

[115] LeCun, Y. Optimal brain damage / Y. LeCun, J.S. Denker, S.A. Solla // Advances in neural information processing systems. — 1990. — Pp. 598-605.

[116] Hassibi, B. Optimal brain surgeon and general network pruning / B. Hassibi, D.G. Stork, G.J. Wolff // Neural Networks, 1993., IEEE International Conference on / IEEE. — 1993. — Pp. 293-299.

[117] Improving neural networks by preventing co-adaptation of feature detectors / G.E. Hinton, N. Srivastava, A. Krizhevsky et al. // arXiv preprint arXiv:1207.0580. — 2012.

[118] Dropout: A simple way to prevent neural networks from overfitting / N. Srivastava, G. Hinton, A. Krizhevsky et al. // The Journal of Machine Learning Research. — 2014. — Vol. 15, no. I. — Pp. 1929-1958.

[119] Zaremba, W. Recurrent neural network regularization / W. Zaremba, I. Sutskever, O. Vinyals // arXiv preprint arXiv:Ut09.2329. — 2014.

[120] Liu, H. Accelerating preconditioned iterative linear solvers on GPU / H. Liu, Z. Chen, B. Yang // International Journal of Numerical Analysis and Modelling: Series B. — 2014. — Vol. 5, no. 1-2. — Pp. 136-146.

[121] Liu, H. Accelerating algebraic multigrid solvers on NVIDIA GPUs / H. Liu, B. Yang, Z. Chen // Computers & Mathematics with Applications. — 2015. — Vol. 70, no. 5. — Pp. 1162-1181.

[122] Stiiben, K. A review of algebraic multigrid / K. Stiiben // Numerical Analysis: Historical Developments in the 20th Century. — Elsevier, 2001. — Pp. 331-359.

[123] Ainsworth, M. A posteriori error estimation in finite element analysis / M. Ainsworth, J.T. Oden. — John Wiley & Sons, 2011. - Vol. 37.

[124] Han, J. Overcoming the curse of dimensionality: Solving high-dimensional partial differential equations using deep learning / J. Han, A. Jentzen, E. Weinan // arXiv preprint arXiv:1707.02568. — 2017.

[125] Hardy, M. Combinatorics of partial derivatives / M. Hardy // the electronic journal of combinatorics. — 2006. - Vol. 13, no. 1. - P. 1.

[126] Nvidia, CUDA. Programming guide. — 2010.

[127] Hochberg, R. Matrix Multiplication with CUDA-a basic introduction to the CUDA programming model / R. Hochberg. — 2012.

[128] CUDA. Cublas library / CUDA // NVIDIA Corporation, Santa Clara, California. - 2008. - Vol. 15, no. 27.

_ p. 3i.

[129] Theano: Deep learning on gpus with python / J. Bergstra, O. Breuleux, P. Lamblin et al. — 2011.

Отпечатано с оригинал-макетов Заказчика в типографии "Переплетофф" Адрес: г. Долгопрудный, ул. Циолковского, 4. Тел: 8(903) 511 76 03. www.perepletoff.ru Формат 210 х 297 мм. Бумага офсетная. Печать цифровая. Тираж 11 экз. Твердый переплет. Заказ № . 20.02.21 г.

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