Тензорные Аппроксимации и неполные Тензорные Аппроксимации в pSeven Core

Частично факторизованные экспериментальные планы

Все знакомы со стандартным полнофакторным Экспериментальным Планом (ЭП):

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

Мы рассмотрим далекоидущее обобщение этой структуры. Взглянем на следующий ЭП в 3D (картинку можно вращать и рассматривать с разных углов; требуется современный браузер, поддерживающий технологию WebGL):

Каковы характерные свойства этого множества?

  • Данный ЭП является декартовым произведением двух множеств – одномерного и двумерного. Будем называть эти множества факторами.
  • Сами факторы не имеют регулярной структуры – в данном примере они состоят просто из случайных точек в 1D (первый фактор) или в 2D (второй фактор).

В общем случае, для любого набора переменных  \(S=\{x_1, x_2, \dots, x_N\}\), мы можем:

  1. Разбить \(S\) на некоторое количество непересекающихся подмножеств \(S_1\sqcup S_2\sqcup\dots\sqcup S_n\) (не обязательно в порядке переменных \(x_1, x_2, \dots, x_N\));
  2. Определить некоторый ЭП  \(Q_k\) для каждого подмножества \(S_k\);
  3. Образовать полный ЭП как декартово произведение \(Q=Q_1\times Q_2\times\dots\times Q_n\).

Почему эта конструкция заслуживает нашего внимания? Две причины:

  • Этот частично факторизованный тип ЭП естественным образом возникает в некотрых контекстах. Представим, например, что мы проводим эксперименты с некоторым аппаратом и измеряем какие-то физические величины вроде температуры или давления с помощью сенсоров, установленных в определенных местах на этом аппарате. Мы проводим эксперименты с разными настройками аппарата. В таком случае наш ЭП естественно факторизуется: один фактор отвечает положениям сенсоров, а другой – настройкам аппарата. Заметим, что эти два фактора не обязаны иметь какую-то конкретную структуру, в частности мы не требуем, чтобы положения сенсоров и настройки аппарата обязательно образовывали какую-то равномерную сетку (что было бы необходимо, если бы мы хотели применить полнофакторный ЭП).
  • Факторизованная структура ЭП может быть довольно полезна при построении метамоделей функций отклика, вычисленных на этом ЭП – она позволяет нам ускорить метамоделирование и/или сделать метамодели более точными. Подробнее об этом – в следующем параграфе.

Тензорные аппроксимации

Для заданного обучающего множества (набора пар входов-выходов), метод Tensor Approximation (TA) библиотеки pSeven Core GT Approx позволяет нам:

  • определить, допускает ли соответствующий ЭП (т.е. множество входов) какую-либо факторизацию как описано выше;
  • если да, то построить специальную аппроксимацию – так называемую тензорную аппроксимацию.

Чем тензорные аппроксимации отличаются от обычных?

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

  • мы связываем с каждым фактором некоторый "элементарный" метод аппроксимации (линейную регрессию, сплайны и т.д.) и выбираем соответствующий базис;
  • мы получаем полную аппроксимацию как линейную комбинацию тензорных произведений выбранных элементарных базисных функций.

Соответственно, тензорные аппроксимации в некоторой степени "наследуют" свойства элементарных аппроксимационных методов, выбранных для их факторов. pSeven Core GT Approx автоматически выбирает разумный элементарный метод для каждого фактора, но пользователь может и установить его вручную.

Почему тензорные аппроксимации могут быть лучше обычных аппроксимаций?

Факторизация ЭП очень часто сопровождается анизотропией, которая может принимать много форм:

  • элементарные ЭП разных факторов могут иметь совершенно разные размеры;
  • факторы могут иметь совершенно разные размерности;
  • функция отклика может совершенно по разному зависеть от переменных из разных факторов.

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

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

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

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

Тензорные Аппроксимации – пример

Одним из применений Тензорных Аппроксимаций библиотеки MACROS было метамоделирование осесимметричного вертолетного двигателя.

Рассматриваемую модель двигателя можно было математически представить как функцию \(y=f(x_1,x_2,x_3,x_4,x_5,x_6,x_7)\).

  • Пара переменных \((x_1,x_2)\) описывала точку вдоль границы двигателя: \(x_1\) обозначало положение вдоль оси двигателя, а  \(x_2\) – радиальное положение. Таких точек было много (около 700), и они образовывали кривую сложной формы.  

  • Наборы \((x_3,x_4,x_5,x_6)\) описывали внешние условия моделирования ("полетные точки"). Таких наборов было около 150.
  • Переменная \(x_7\) была параметром модели (коэффициентом передачи теплоты), который мог принимать 5 разных значений независимо от других переменных.
  • Отклик \(y\) был векторнозначной функцией, описывающей значения несколько физических величин на границе двигателя.

Целью проекта было создание метамодели отклика \(f\), поскольку ее прямые расчеты были долгими и дорогими. Функция  \(f\) была очень анизотропной: с одной стороны, она сложным образом зависела от пространственного положения точки:

(здесь различные кривые отвечают различным наборам \((x_3,x_4,x_5,x_6,x_7)\)). С другой стороны, предварительное исследование показало, что функция \(f\) была почти линейной по отношению к параметрам \((x_3,x_4,x_5,x_6)\). 

В этой задаче была построена тензорная аппроксимация с 3 факторами:

Фактор 1:
  • Переменные: \(S_1=\{x_1, x_2\}\) (пространственное положение). Этот фактор формально двумерный, но поскольку его значения лежат на одномерной кривой, две переменные можно было заменить на одну переменную \(x_1'\) с помощью несложного преобразования. 
  • Элементарная аппроксимация: сплайны (метод pSeven Core SPLT), из-за одномерности и большого числа точек.
Фактор 2:
  • Переменные\(S_2=\{x_3,x_4,x_5,x_6\}\) (внешние условия полета). 
  • Элементарная аппроксимация: линейная регрессия, из-за почти линейной зависимости отклика от этих переменных. Можно было использовать и другие многомерные методы, например pSeven Core GP (Гауссовские Процессы), но время обучения при этом росло, а улучшение точности было незначительным.
Фактор 3:
  • Переменные\(S_3=\{x_7\}\) (коэффициент передачи теплоты). 
  • Элементарная аппроксимация: сплайны, поскольку фактор одномерный.

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

Неполные Тензорные Аппроксимации

Факторизация ЭП является довольно сильным требованием, и естественно попытаться ослабить его с тем, чтобы распространить тензорные аппроксимации на более широкий круг задач.

В некоторых случаях ЭП имеет неполную частично факторизованную структуру. Это означает факторизованный ЭП с пропусками некоторых точек, как на следующем рисунке:

Для таких задач pSeven Core GTApprox предлагает метод неполных Тензорных Аппроксимаций (iTA – incomplete Tensor Approximations). Математически он также основан на тензорных произведениях факториальных базисных функций, но алгоритм гораздо сложнее из-за того, что мы имеем дело с хуже структурированными и неполными обучающими данными. Метод iTA обычно довольно быстр и, если пропусков данных не слишком много, как правило порождает довольно точные аппроксимации.

В настоящее время метод pSeven Core iTA работает только с одномерными факторами и тензорными произведениями сплайнов.

Неполные Тензорные Аппроксимации – пример

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

Поле давлений определено на сетке из 200 ? 29 точек:

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

Здесь пропущено ровно 50% значений поля давлений. Синий участок в середине крыла имеет пониженное давление, а рыжевато-красные у краев  повышенное.

Применим теперь iTA и сравним истинное распределение с реконструированным:

Разница едва видна! Попробуем теперь увеличить число удаленных значений до 95%:

На этот раз результат таков:

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

Теперь попробуем еще увеличить уровень потерь данных, до 99% – при этом из исходных 5800 значений поля остается лишь 58! Заметим, что теперь на крыле имеются большие участки, в которых значения давления отсутствуют совсем.

Вот результат iTA:

Точность аппроксимация заметно пострадала, но аппроксимация все еще корректно передает общие черты поля.

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

Контактная информация

location_on  117246, Москва, Научный проезд, д. 17, 15 этаж

phone  +7 (495) 669-68-15

mail_outline  info@datadvance.net

Связаться navigate_next Дистрибьюторы navigate_next