Доклады Российской академии наук. Математика, информатика, процессы управления, 2023, T. 514, № 2, стр. 72-79

СПЕКТРАЛЬНЫЕ НЕЙРОННЫЕ ОПЕРАТОРЫ

В. С. Фанасков 1*, И. В. Оселедец 12**

1 Сколковский институт науки и технологий
Москва, Россия

2 AIRI
Москва, Россия

* E-mail: v.fanaskov@skoltech.ru
** E-mail: i.oseledets@skoltech.ru

Поступила в редакцию 30.08.2023
После доработки 06.09.2023
Принята к публикации 15.10.2023

Полный текст (PDF)

Аннотация

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

Ключевые слова: нейронные операторы, уравнения в частных производных

1. ВВЕДЕНИЕ

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

В качестве примера можно привести схемы получения решения, основанные на прямой минимизации невязки [4], сверточных сетях [12], выучивании оптимальной дискретизации [9] и нейронных операторах [10, 13]. Последний подход представляет наибольший интерес благодаря хорошей точности и небольшой вычислительной сложности.

Нейронный оператор представляет собой нейронную сеть, которая принимает на вход функции ${{a}_{i}}({{x}_{h}}),$ $i = 1, \ldots ,{{M}_{1}}$, вычисленные на сетке ${{x}_{h}}$, и возвращает функции ${{b}_{j}}({{x}_{h}}),$ $j = 1, \ldots ,{{M}_{2}}$. При этом для сеток с разной дискретизацией ${{h}_{1}}$ и ${{h}_{2}}$ результат ${{b}_{j}}({{x}_{{{{h}_{1}}}}}) \simeq {{b}_{j}}({{x}_{{{{h}_{2}}}}})$ оказывается одной и той же функцией. Это свойство называют “инвариантность относительно дискретизации”. Позже, в Разделе 2, мы продемонстрируем, что для широкого класса нейронных операторов это свойство выполняется только приближенно.

Как правило, задача для нейронного оператора $N(u,x;w)$ ставится как поиск параметров $w$, которые дают наилучшее приближение для оператора решения уравнения в частных производных:

(1)
$w = \arg \mathop {\min }\limits_{\tilde {w}} {{\mathbb{E}}_{{u \sim P}}}\left[ {\left\| {N(u,x;\tilde {w}) - t[u]} \right\|} \right],$
где $w,\;\tilde {w}$ – параметры нейронного оператора, $u$ – входные данные для уравнения в частных производных из распределения $P$, $t$ – оператор решения уравнения в частных производных, $\left\| {\, \cdot \,} \right\|$ – подходящая функциональная норма, например L2.

Наиболее часто задача (1) решается в два этапа. На первом при помощи классического метода решения составляется выборка пар $u,t[u]$. На втором используются методы градиентного спуска для поиска локально оптимальных параметров $w$.

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

Имея в виду неточность инвариантности относительно дискретизации и эффективную конечномерность нейронных операторов, естественно рассмотреть явную дискретизацию для выходных данных $u$ и решения $t[u]$. В Разделе 3 мы введем конечномерный спектральный нейронный оператор, обладающий инвариантностью относительно дискретизации по построению. Явная дискретизация потенциально уменьшает точность, поэтому в Разделе 4 мы проведем численное сравнение различных нейронных операторов.

В заключении введения вы приводим краткое содержание основных результатов статьи:

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

2. В Разделе 3 описан спектральный нейронный оператор.

3. Раздел 4 на широком классе уравнений продемонстрировало, что точность спектрального оператора часто превосходит точность нейронных операторов.

2. СВОЙСТВА НЕЙРОННЫХ ОПЕРАТОРОВ

На данный момент существуют десятки различных нейронных операторов, среди которых можно выделить метаархитектуры (например, глубокие операторные сети [10] (DeepONet)) и операторы, основанные на интегральных преобразованиях (например, нейронный оператор Фурье (FNO) [13]). Мы сосредоточимся на свойствах сетей с интегральными операторами.

Сети с интегральными операторами основаны на естественном обобщении линейного слоя. Классическая нейронная сеть преобразует векторы при помощи оператора

(2)
${v} = Au + b,{\kern 1pt} \quad {v},b \in {{\mathbb{R}}^{n}},\quad u \in {{\mathbb{R}}^{m}},\quad A \in {{\mathbb{R}}^{{n \times m}}},$
где ${v}$ и $u$ – входной и выходной векторы слоя, $A$ и $b$ – параметры слоя. По аналогии, линейный слой нейронного оператора имеет вид
(3)
${v}(x) = \int dy{\kern 1pt} A(x,y;{{w}_{A}})u(y) + b(x;{{w}_{b}}),$
где ${v}(x)$ и $u(x)$ – входные и выходные функции слоя, $A(x,y;{{w}_{A}})$ и ядро интегрального оператора, ${{w}_{A}}\, \in \,{{\mathbb{R}}^{{{{N}_{A}}}}}$ и ${{w}_{b}} \in {{\mathbb{R}}^{{{{N}_{A}}}}}$ – параметры слоя.

Из соображений численной эффективности для реализации линейного слоя (3) часто используется параметризация

(4)
$\int dy{\kern 1pt} A(x,y;{{w}_{A}})u(y) = \sum\limits_{ij} {{\phi }_{j}}(x){{w}_{{ji}}}\underbrace {\int dy{\kern 1pt} {{\phi }_{i}}(y)u(y)}_{{{c}_{i}}},$
вместе с быстрыми преобразованиями, которые позволяют эффективно вычислить коэффициенты ${{c}_{i}} = \int dy{\kern 1pt} {{\phi }_{i}}(y)u(y)$ и сумму $\sum\nolimits_j {{\phi }_{j}}(x){{\tilde {c}}_{j}}$.

Интегральное ядро (4) используется во многих нейронных операторах, например, в нейронном операторе Фурье (FNO) [13], вейвлетном операторе (WNO) [17] и вейвлетном операторе на основе нестандартного вейвлетного преобразования (MWNO) [15].

Выбор параметризации ядра (4), представления функций $u(y)$ и способа обучения приводит к ряду последствий, которые ставят под вопрос необходимость рассмотрения непрерывной формулировки (над функциональными пространствами) (1). В следующих двух секциях мы рассмотрим два таких эффекта: обобщение за пределами обучающей выборки и ошибки, возникающие из-за наложения спектра.

2.1. Способность к обобщению

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

1. Теорема Найквиста-Шеннона о возможности восстановить коэффициенты ряда Фурье из значений функции на равномерной сетке [5, Глава 3].

2. Сходная теорема для полиномов Чебышева и функциях, вычисленных на сетках Чебышева [11, Глава 4].

3. Описание пространств Бесова с использованием вейвлетов [7].

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

В нескольких работах [13, 14, 16] авторы положительно отвечают на этот вопрос, утверждая, что ошибка приближенного решения, полученного нейронным оператором, не увеличивается при увеличении разрешения сетки. Однако во всех предоставленных примерах сетки были выбраны таким способом, что все функции хорошо приближались на сетках с низким разрешением, поэтому увеличение разрешения не приводило к усложнению функции.

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

(5)
$f(x) \to f(x)f(x + 1),$
(6)
$f(x) \to \int\limits_0^x {dy{\kern 1pt} f(y)} ,$
(7)
$f(x) \to \frac{{df(x)}}{{dx}},$
действующих на семействе тригонометрических полиномов
(8)
$f(x) = \mathcal{R}\left[ {\sum\limits_{k = {{k}_{{\min }}}}^{{{k}_{{\max }}}} {{d}_{k}}\exp \left( {\pi ikx} \right)} \right],$
где $\mathcal{R}$ – вещественная часть, коэффициенты dk имеют нормально распределенные вещественную и мнимую части и ${{k}_{{\max }}} > {{k}_{{\min }}}$ выбраны разными для обучающей и тестовой выборки.

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

Рис. 1.

Демонстрация способности к обобщению на функции, не представленные в обучающей выборке. Для всех примеров нейронные операторы обучались на тригонометрических полиномах (8) с гармониками ${{k}_{{\min }}} = 15$, ${{k}_{{\max }}} = 25$. В качестве метрики используется относительная ошибка ${{\left\| {f(x)\, - \,{{f}_{{{\text{appr}}}}}(x)} \right\|}_{2}}{\text{/}}{{\left\| {f(x)} \right\|}_{2}}$. Для неопределенного интеграла (6) тестовая выборка состоит из тригонометрических полиномов с kmin = $15 - \Delta k$, ${\kern 1pt} {{k}_{{\max }}} = 25 - \Delta k$. Для операторов (7) и (5) тестовую выборку составляют тригонометрические полиномы с ${{k}_{{\min }}} = 15 + \Delta k$, ${{k}_{{\max }}} = 25 + \Delta k$.

2.2. Ошибки наложения спектра

Нейронный оператор состоит из нелокальных интегральных преобразований (4) и поточечного применения активационных функций, например ${\text{ReLU}}(x) \equiv \sigma (x)\, = \,x\max \{ 0,x\} $. Чтобы продемонстрировать проблемы, возникающие из-за наложения спектра, рассмотрим периодические функции и нейронный оператор Фурье.

Предположим, входная функция $f(x)$ может быть точно представлена рядом Фурье с гармониками ${\text{|}}k{\text{|}} \leqslant N$. Согласно теореме Найквиста-Шеннона можно эквивалентно хранить значения функции на однородной сетке с $2N + 1$ точками. Интегральный оператор (4) по построению использует только низкие частоты, поэтому с ним не возникает проблем. Однако поточечные активационные функции $\sigma (f(x))$ вносят высокие частоты. Может оказаться, что эти частоты превышают частоту Найквиста используемой однородной сетки. В этом случае более высокие частоты неотличимы от низких (например, для полиномов Чебышева [9, Chapter 11, Определение 23] и ряда Фурье [11, Глава 4, Теорема 4.1] для ряда Чебышева). Это приводит к ошибкам в вычислении нейронного оператора Фурье.

Для активационной функции $\sigma $ и сетки с $2N + 1$ точками, можно оценить эти ошибки, количественно используя следующую метрику

(9)
$\sigma (f(x)) \equiv \sum\limits_i {{c}_{i}}{{\phi }_{i}},\quad {{E}_{a}}(f,\sigma ) \equiv \frac{{\left\| {\sum\limits_{|i| > N} {{c}_{i}}{{\phi }_{i}}} \right\|}}{{\left\| {\sigma (f(x))} \right\|}}.$

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

Лемма 1 (Наложение спектра для ReLU(x)). На однородной сетке или сетке Чебышева с $2N + 1$ точками ошибка наложения спектра ${{E}_{a}}$ из (9) равна 

(10)
$\begin{gathered} {{E}_{a}}(\cos (\pi Nx),{\text{ReLU}}) = {{E}_{a}}({{T}_{N}}(x),{\text{ReLU}}) = \\ \, = \frac{1}{\pi }\sqrt {\frac{{{{\pi }^{2}}}}{2} - 4} \simeq 0.31. \\ \end{gathered} $

Доказательство. Легко видеть, что

(11)
${\text{ReLU}}(x) = \sum\limits_{i = 0}^\infty {{p}_{i}}{{T}_{i}}(x),{\kern 1pt} \quad {{p}_{i}} = \left( {\begin{array}{*{20}{l}} {\frac{1}{\pi },\quad i = 0;} \\ {\frac{1}{2},\quad i = 1;} \\ {\frac{2}{\pi }\frac{{\cos (\pi i{\text{/}}2)}}{{1 - {{i}^{2}}}},\quad i \geqslant 2,} \end{array}} \right.$
для всех $x \in [ - 1,1]$. Так как область значений $\cos (\pi Nx)$ и ${{T}_{N}}$ лежит в интервале [–1, 1] мы можем использовать ряд Чебышева вместо ${\text{ReLU}}$, для вычисления композиции. Используя ${{T}_{n}}({{T}_{m}}(x))$ = = Tnm(x), а также ${{T}_{n}}(\cos (\theta )) = \cos (n\theta )$ получаем

(12)
$\begin{gathered} {\text{ReLU}}({{T}_{N}}(x)) = \sum\limits_{i = 0}^\infty {{p}_{i}}{{T}_{{iN}}}(x), \\ {\text{ReLU}}(\cos (\pi Nx)) = \sum\limits_{i = 0}^\infty {{p}_{i}}\cos (\pi iNx). \\ \end{gathered} $

Используя норму полиномов Чебышева (с весом $1{\text{/}}\sqrt {1 - {{x}^{2}}} $) ${{\left\| {{{T}_{i}}(x)} \right\|}^{2}} = \pi {\text{/}}(2 - {{\delta }_{{i0}}})$ и норму тригонометрического полинома $\left\| {\cos (\pi nx)} \right\|_{2}^{2} = (1 + {{\delta }_{{i0}}})$, мы получаем для ошибок наложения спектра

(13)
${{E}_{a}}( \cdot ,{\text{ReLU}}) = \sqrt {\frac{{\sum\limits_{i = 2}^\infty p_{i}^{2}}}{{2p_{0}^{2} + p_{1}^{2} + \sum\limits_{i = 2}^\infty p_{i}^{2}}}} .$

Используя равенство Парсеваля

(14)
$\begin{gathered} 2p_{0}^{2} + p_{1}^{2} + \sum\limits_{i = 2}^\infty p_{i}^{2} = \int {{\left( {{\text{ReLU}}(\cos (\pi Nx))} \right)}^{2}}dx = \\ \, = \frac{1}{2}\int {{\left( {\cos (\pi Nx)} \right)}^{2}}dx, \\ \end{gathered} $
получаем $\sum\nolimits_{i = 2}^\infty p_{i}^{2} = ({{\pi }^{2}} - 8){\text{/}}4{{\pi }^{2}}$.

Лемма 1 иллюстрирует, что наложение спектра вносит систематическую ошибку в обучение нейронного оператора Фурье. А именно, во время обучения нейронный оператор, вычисленный на сетке с недостаточным разрешением, учится компенсировать ошибку наложения спектра, которую вносят активационные функции. Когда позднее нейронный оператор вычисляется на сетке высокого разрешения, ошибка наложения спектра отсутствует, но как и на стадии обучения нейронный оператор подавляет эту ошибку, поэтому в предсказания нейронного оператора вносится дополнительная неточность.

Лемма 1 дает оценку только для одного слоя. Чтобы оценить ошибку наложения спектра для всей нейронной сети, мы провели эксперименты для нейронного оператора Фурье для трех операторов (5)–(7). Чтобы измерить ошибку наложения спектра для каждой входной функции, мы посчитали нейронный оператор для двух разрешений и вычислили относительную ошибку

(15)
${{\left\| {{{{[N(f,{{x}_{h}})]}}_{{2h}}} - N(f,{{x}_{{2h}}})} \right\|}_{2}}{\text{/}}{{\left\| {N(f,{{x}_{h}})} \right\|}_{2}}.$

Результаты и детали экспериментов можно найти на рис. 2 и рис. 3.

Рис. 2.

Оценка ошибки наложения спектра для нейронного оператора Фурье. Результаты для оператора дифференцирования. (a) Распределение логарифма относительной ошибки наложения спектров для 750 входных функций. Средняя относительная ошибка составляет ~25%. (б) Ошибка наложения спектра для конкретной функции.

Рис. 3.

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

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

3. СПЕКТРАЛЬНЫЕ НЕЙРОННЫЕ ОПЕРАТОРЫ

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

(16)
$\sum\limits_i {{g}_{i}}(x){{d}_{i}} = {{f}_{{{\text{in}}}}}(x)\xrightarrow{{\text{N}}}{{f}_{{{\text{out}}}}}(x) = \sum\limits_i {{g}_{i}}(x){{b}_{i}},$
где ${{g}_{i}}(x)$ либо полиномы Чебышева, либо комплексные экспоненты. Мы называем любое отображение вида (26) спектральным нейронным оператором. Спектральный нейронный оператор по сути обычная нейронная сеть, определенная на конечномерном векторном пространстве. Входные данные представляют собой вектор коэффициентов ${{d}_{i}},{\kern 1pt} i = 1, \ldots ,M$, а выходные – вектор коэффициентов ${{b}_{j}},{\kern 1pt} j = 1, \ldots ,N$. Так как спектральный оператор определен непосредственно в терминах коэффициентов, явная зависимость от сетки исчезает и проблема наложения спектра не возникает. Интуитивно понятно, что дискретизация должна уменьшать возможности к аппроксимации. В следующей секции мы сравним точности спектральных нейронных операторов с нейронными операторами без дискретизации.

4. ЧИСЛЕННОЕ СРАВНЕНИЕ ТОЧНОСТИ НЕЙРОННЫХ И СПЕКТРАЛЬНЫХ НЕЙРОННЫХ ОПЕРАТОРОВ

В данной секции мы сравним нейронный оператор Фурье (FNO) [13], глубокую операторную сеть DeepONet [10], спектральный нейронный оператор SNO(Ch), определенный (16) в базисе Чебышева, SNO(F), определенный (16) в базисе Фурье. Точное описание архитектур и код можно найти в репозитории https://github.com/VLSF/ SNOhttps://github.com/VLSF/SNO.

В качестве случайных функций мы используем

(17)
$\begin{gathered} R({{k}_{{\min }}},{{k}_{{\max }}},\sigma ) = \left\{ {\frac{{\mathcal{R}\left( {\sum\limits_{k = {{k}_{{\min }}}}^{{{k}_{{\max }}}} {{d}_{k}}{{e}^{{i\pi kx}}}} \right)}}{{\sqrt {\sum\limits_{k = {{k}_{{\min }}}}^{{{k}_{{\max }}}} {{{\left| {d_{k}^{j}} \right|}}^{2}}} }}} \right\}, \\ \mathcal{R}(d),{\kern 1pt} \mathcal{I}({{d}^{j}}) \sim \mathcal{N}(0,{{\sigma }^{2}}), \\ \end{gathered} $
где $\mathcal{R}( \cdot )$, $\mathcal{I}( \cdot )$ обозначает действительную и мнимую части, $\mathcal{N}(a,b)$ – нормальное распределение со средним a и дисперсией b. Операторы, которые были использованы для тестов, описаны ниже.

4.1. Операторы

4.1.1. Интегрирование, сдвиг и дифференцирование. Первые три оператора

$f(x) \to \int f(y)dy,\quad f(y) \in R(1,10,2);$
(18)
$\begin{gathered} f(x) \to f(x)f(x + 1),\quad f(x) \in R(0,15,2); \\ f(x) \to \frac{d}{{dx}}f(x), \\ \end{gathered} $
$f(x) \in R(0,10,{{k}_{{\max }}}),\quad {{k}_{{\max }}} \in \left\{ {10,20} \right\}.$

4.1.2. Параметрическое Обыкновенное Дифференциальное Уравнение. В данном случае мы ищем решение параметрического уравнения $f(t) \to y(t)$ (модификация задачи $A4$ из списка DETEST [1])

(19)
$\begin{gathered} \frac{{dy(t)}}{{dt}} = y(t)f(t),\quad y(0) = \exp \left( {\int\limits_{}^{t = 0} {f(\tau )d\tau } } \right), \\ f(t) \in R(1,30,2). \\ \end{gathered} $

4.1.3. Эллиптическое уравнение. Мы рассматриваем два эллиптических уравнения. В каждом случае задача предсказать решения по коэффициенту диффузии $k(x)$. В 1D мы используем уравнение

(20)
$\begin{gathered} - \frac{d}{{dx}}k(x)\frac{d}{{dx}}u(x) = 1,\quad u( - 1) = u(1) = 0, \\ k(x) = 10(\tanh (g(x)) + 1) + 1,\quad g(x) \in R(0,20,2). \\ \end{gathered} $

В $2D$ мы рассматриваем

(21)
$\begin{gathered} - \left( {\frac{d}{{dx}}k(x)k(y)\frac{d}{{dx}} + \frac{d}{{dy}}k(x)k(y)\frac{d}{{dy}}} \right)u(x,y) = 1, \\ k(x) = \left( {3(\tanh (g(x)) + 1) + 1} \right), \\ \end{gathered} $
внутри [–1, 1]2 с однородными граничными условиями Дирихле и $g(x),\;g(y)$ из $R(0,20,2)$.

4.1.4. Уравнение Бюргерса. В данном случае задача состоит в поиске решения уравнения $\frac{\partial }{{\partial t}}u(x,t)$ + $\frac{1}{2}\frac{\partial }{{\partial x}}u{{(x,t)}^{2}} - \nu \frac{{{{\partial }^{2}}}}{{\partial {{x}^{2}}}}u(x,t)$ = 0, u(x, 0) = = f(x), $x \in [ - 1,1]$, $f(x) \in R(0,20,2)$. В 1D мы приближаем отображение $f(x) \to u(x,t = 1)$, в 2D – отображение $f(x) \to u(x,t)$, $t \in [0,1]$, $x \in [ - 1,1]$. Мы рассматриваем случай с двумя коэффициентами вязкости $\nu = 0.01$ и $\nu = 0.1$.

4.1.5. Кортевега–де Фриза. Мы рассматриваем уравнение КдВ

(22)
$\begin{gathered} \frac{\partial }{{\partial t}}u(x,t) + p\frac{\partial }{{\partial x}}u{{(x,t)}^{2}} + \frac{{{{\partial }^{3}}}}{{\partial {{x}^{3}}}}u(x,t), \\ u(x,0) = f(x). \\ \end{gathered} $

Более точно, используются два решения:

1. Распространение солитона ($p = 1$) [2]:

(23)
$u(x,t) = 3{{\left( {\frac{a}{{\cosh (a(x + {{x}_{0}}){\text{/}}2 - {{a}^{3}}t{\text{/}}2)}}} \right)}^{2}},$
где a определяет амплитуду и скорость перемещения, x0 определяет положение максимума при t = 0. Амплитуда $a$ следует однородному распределению [10, 25], f ${{x}_{0}}$ – однородному распределению на [‒1, 1]. Цель состоит в предсказании $u(x,t$ = 0.001) из $u(x,t = 0)$ в 1D случае, и u(x, t), ${\kern 1pt} t \in [0,0.001]$ из $u(x,t = 0)$ в $2D$ случае.

2. Взаимодействие двух солитонов (p = 6) [3]:

$\begin{gathered} {{\phi }_{i}} = {{a}_{i}}(x + x_{0}^{i}) - 4a_{i}^{3}t, \\ {{\psi }_{1}}(x,t) = 2a_{2}^{2}(a_{1}^{2} - a_{2}^{2})\sinh {{\phi }_{1}}, \\ \end{gathered} $
(24)
${{\psi }_{2}}(x,t) = 2a_{1}^{2}(a_{1}^{2} - a_{2}^{2})\cosh {{\phi }_{2}},$
$u(x,t) = \frac{{{{\psi }_{1}}(x,t) + {{\psi }_{2}}(x,t)}}{{{{{\left( {{{a}_{1}}\cosh {{\phi }_{1}}\cosh {{\phi }_{2}} - {{a}_{2}}\sinh {{\phi }_{1}}\sinh {{\phi }_{2}}} \right)}}^{2}}}},$
здесь ai определяет скорости, $x_{0}^{i}$ начальные положения. Амплитуда a1 следует однородному распределению на [10, 25 ] , ${{a}_{2}} = \chi {{a}_{1}}$, где $\chi $ следует однородному распределению [1/2, 1], начальные положения фиксированы $x_{0}^{1} = - 0.6$, $x_{0}^{2} = - 0.5$. Задача состоит в предсказании решения в момент времени $t = 0.005$ или на всем промежутке $t \in [0$, 0.005], $x \in [ - 1,1]$.

4.1.6. Нелинейное уравнение Шрёдингера. Мы рассматривает солитон Кузнецова-Ма [8], который имеет вид

(25)
$\begin{gathered} \psi (x,t) = \left( {\frac{{ - {{p}^{2}}\cos (\omega t) - 2ip\nu \sin (\omega t)}}{{2\cos (\omega t) - 2\nu \cosh (px{\text{/}}\sqrt 2 )}} - 1} \right){{e}^{{it}}}, \\ p = 2\sqrt {{{\nu }^{2}} - 1} ,\quad \omega = p\nu . \\ \end{gathered} $

Цель состоит в том, чтобы предсказать $\left\| {\psi (x,t)} \right\|$ on $x \in [ - 1,1]$, $t \in [0,5]$ из начальных условий. Единственный параметр $\nu $ следует однородному распределению [1.5, 3.5].

4.2. Обсуждение результатов

Результаты можно найти в табл. 1. В целом видно, что за исключением уравнения Бюргерса с $\nu = 0.01$ спектральный нейронный оператор либо не сильно уступает нейронному оператору Фурье, либо превосходит его в точности. Таким образом, оказывается, что дискретизация не оказывает существенного влияния на точность нейронного оператора для рассмотренных задач.

Таблица 1.

Относительная ${{L}_{2}}$ ошибка для различных задач. SNO(Ch) – спектральный нейронный оператор в базисе Чебышева, SNO(F) – спектральный нейронный оператор в базисе Фурье (в случае задач $2D$, обозначенных $xt$, базис Чебышева используется по оси $t$, если задача не является периодической), FNO [13] – нейронный оператор Фурье, DeepONet [10] – глубокая операторная сеть

Датасет SNO(Ch) SNO(F) FNO DeepONet
Интегрирование 3.5 × 10–4 2.6 × 10–4 3.3 × 10–2 4.7 × 10–2
x, kmax = 10 1.5 × 10–4 1.3 × 10–3 5.0 × 10–4 2.5 × 10–2
x, kmax = 20 3.5 × 10–4 2.6 × 10–4 3.3 × 10–2 4.7 × 10–2
ff(x)f(x + 1) 8.5 × 10–3 6.5 × 10–2 4.6 × 10–2 1.8
параметрическое ОДУ (DETEST) 9.7 × 10–4 2.2 × 10–3 1.1 × 10–3 2.3 × 10–2
Эллиптическое уравнение (20) 1.5 × 10–2 2.3 × 10–2 2.2 × 10–1
Бюргерсx, ν = 0.01 5.8 × 10–1 3.1 × 10–1 6.3 × 10–2 6.0 × 10–1
Бюргерсx, ν = 0.1 1.1 × 10–2 2.8 × 10–2 1.5 × 10–2 1.4 × 10–1
КдВx (23) 3.2 × 10–2 2.3 × 10–2 1.3 × 10–3 4.6 × 10–1
КдВx (24) 1.0 × 10–1 8.0 × 10–2 9.0 × 10–2 2.3 × 10–1
Эллиптическое уравнение (21) 3.0 × 10–2 2.7 × 10–2 9.3 × 10–2
Бюргерсxt, ν = 0.01 1.9 × 10–1 2.6 × 10–1 4.1 × 10–2 5.8 × 10–1
Бюргерсxt, ν = 0.1 3.4 × 10–2 9.4 × 10–2 6.5 × 10–3 4.1 × 10–1
КдВxt (23) 5.7 × 10–3 5.8 × 10–3 6.5 × 10–3 7.1 × 10–2
КдВxt (24) 1.9 × 10–2 2.1 × 10–2 6.2 × 10–2 1.6 × 10–1
Нелинейное уравнение Шрёдингера (25) 1.4 × 10–2 5.2 × 10–2 2.6 × 10–2 1.5 × 10–1

5. ЗАКЛЮЧЕНИЕ

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

Список литературы

  1. Hull T.E. et al. “Comparing numerical methods for ordinary differential equations”. B: SIAM Journal on Numerical Analysis 9.4. 1972. P. 603–637.

  2. Fornberg B., Whitham G.B. “A numerical and theoretical study of certain nonlinear wave phenomena”. B: Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences 289.1361. 1978. P. 373–404.

  3. Tohru Yoneyama. “The Korteweg-de Vries two-soliton solution as interacting two single solitons”. B: Progress of theoretical physics 71.4. 1984. P. 843–846.

  4. Lagaris I.E., Likas A., Fotiadis D.I. “Artificial neural networks for solving ordinary and partial differential equations”. B: IEEE transactions on neural networks 9.5. 1998. P. 987–1000.

  5. Trefethen L.N. Spectral methods in MATLAB. SIAM, 2000.

  6. Boyd J.P. Chebyshev and Fourier spectral methods. Courier Corporation, 2001.

  7. Saksman M.L., Siltanen S. et al. “Discretization-invariant Bayesian inversion and Besov space priors”. B: arXiv preprint arXiv:0901.4220. 2009.

  8. Kedziora D.J., Ankiewicz A., Akhmediev N. “Second-order nonlinear Schrödinger equation breather solutions in the degenerate and rogue wave limits”. B: Physical Review E 85.6. 2012. P. 066601.

  9. Bar-Sinai Y. et al. “Learning data-driven discretizations for partial differential equations”. B: Proceedings of the National Academy of Sciences 116.31. 2019. P. 15344–15349.

  10. Lu Lu, Jin P., Karniadakis G.E. “DeepONet: Learning nonlinear operators for identifying differential equations based on the universal approximation theorem of operators”. B: arXiv preprint arXiv:1910.03193. 2019.

  11. Trefethen L.N. Approximation Theory and Approximation Practice, Extended Edition. SIAM, 2019.

  12. Ummenhofer B. et al. “Lagrangian fluid simulation with continuous convolutions”. B: International Conference on Learning Representations. 2019.

  13. Zongyi Li et al. “Fourier neural operator for parametric partial differential equations”. B: arXiv preprint arXiv:2010.08895 (2020).

  14. Zongyi Li et al. “Neural operator: Graph kernel network for partial differential equations”. B: arXiv preprint arXiv:2003.03485 (2020).

  15. Gupta G., Xiongye Xiao, Bogdan P. “Multiwavelet-based operator learning for differential equations”. B: Advances in Neural Information Processing Systems. 2021. V. 34. P. 24048–24062.

  16. Kovachki N. et al. “Neural operator: Learning maps between function spaces”. B: arXiv preprint arXiv:2108.08481 (2021).

  17. Tripura T., Chakraborty S. “Wavelet neural operator: a neural operator for parametric partial differential equations”. B: arXiv preprint arXiv:2205.02191. 2022.

Дополнительные материалы отсутствуют.

Инструменты

Доклады Российской академии наук. Математика, информатика, процессы управления