Как нейронные сети могут сочетаться с методами параметризации, используемыми в инженерии, разработанными за последние полвека? Предварительный ответ: универсальное приближение, неявная регуляризация, облегчение проклятия размерности и эффективные вычислительные структуры!

Физика и уравнения с частными производными

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

Одним из важных УЧП является уравнение переноса, которое описывает перенос начальной массы со скоростью c ›0.

Довольно простое уравнение управляет многими физическими процессами, такими как загрязнение воздуха, дисперсия красителя или химическая концентрация внутри потока. Его также можно использовать для моделирования транспортного потока. Однако существуют и другие УЧП, такие как волновое уравнение, уравнение диффузии и знаменитое уравнение Навье-Стокса. Эти уравнения объединены для более точного описания физики. Например, вы можете встретить следующие устрашающие PDE в документе по моделированию коллектора. Но по сути он состоит из нескольких моделей PDE, которые взаимозависимы через общие физические величины.

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

Обратите внимание, что мы сохраняем и вычисляем только значения u (t) в t_j, которые называются сеткой.

Нейросетевой подход к обратным задачам

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

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

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

Здесь L (u, c) является сокращением от PDE, например L (u, c) = u_t-c * u_x. трудность в том, что c может быть самой функцией (c зависит от x), и поэтому мы должны сначала параметризовать ее.

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

  • Шаг 1. Параметризация c с помощью нейронных сетей

Поскольку мы параметризовали c с помощью нейронной сети, нейронная сеть принимает координаты x в качестве входных данных и выводит значение c (x).

Напомним, что в числовых схемах сохраняются и вычисляются только точки x_i в сетке, поэтому мы можем оценить c (x_i), используя эти заранее определенные точки сетки.

  • Шаг 2. Решите PDE с помощью числовых схем

Теперь у нас есть значения для c (x_i), и поэтому мы можем выполнить численное моделирование для PDE. Обозначим результаты как u. Мы должны указать, что симуляция должна быть написана на TensorFlow, чтобы можно было выполнить шаг 3.

  • Шаг 3. Минимизация расхождений между наблюдением и u

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

Почему нейронные сети привлекательны для моделирования физики

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

  • Прямой подход. Мы можем параметризовать c (x) напрямую, назначив параметр для каждого c (x_i).
  • Линейные базисные функции. c (x) можно аппроксимировать кусочно-линейной функцией с фиксированными узлами. Этот подход очень популярен в анализе методом конечных элементов.
  • Другие базисные функции, такие как радиальные базисные функции, полиномы Чебышева, базисные функции Фурье или что-то в этом роде.

Линейные базисные функции имеют локальные степени свободы и легко подгоняются или не подходят для неравномерно распределенных данных. Кроме того, метод страдает проклятием размерности, поскольку нам нужны сетки. Радиальные базисные функции и подобные им не устойчивы к шуму. Характеристики легко ухудшаются из-за разрывов или шумов. Если вы хотите увидеть больше сравнения между нейронными сетями и вышеуказанными базовыми функциями, см. Здесь, где нейронная сеть сравнивается с радиальными базисными функциями и линейными базисными функциями.

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

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

  • Универсальная аппроксимирующая способность. Например, он может довольно легко аппроксимировать гладкие функции, а также ступенчатые функции (и без явления Гиббса!).
  • Неявная регуляризация. Кажется, что его сложно переоборудовать, и он довольно устойчив к шуму.
  • Снятие проклятия размерности. Нетрудно обобщить приближенный подход на большие размерности (хотя некоторые соображения требуются для решения уравнений в частных производных в высокой размерности).
  • Эффективные вычислительные платформы. Очевидно, что TensorFlow имеет докторскую степень. жизнь проще :).

Что дальше…

Теперь мы увидели возможности нейронных сетей для решения обратных задач в дифференциальных уравнениях. В будущем я буду постепенно вводить и выпускать вычислительные методы, лежащие в основе использования TensorFlow / PyTorch для научных вычислений. Быть в курсе!

Если вы хотите узнать больше о деталях, см. Статью Подход нейронной сети к обратным задачам в дифференциальных уравнениях.