Авторы: Венкатеш Раджагопалан, директор по науке и аналитике, и Арун Субраманиян, вице-президент по науке и аналитике в BHGE Digital

В первом блоге этой серии мы представили нашу аналитическую философию объединения знаний предметной области, вероятностных методов, традиционного машинного обучения (ML) и методов глубокого обучения для решения некоторых из самых сложных проблем в промышленном мире. Мы также проиллюстрировали этот подход на примере построения гибридной модели распространения трещин. Наше постоянное сотрудничество с командой TensorFlow Probability (TFP) и командами Cloud ML в Google ускорило наш путь к разработке и масштабному развертыванию этих методов. Ранее трудноразрешимые проблемы теперь можно решить, объединив знания физики с кажущимися несвязанными методами, применяя их с помощью современного масштабируемого программного и аппаратного обеспечения.

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

Необходимость обновления моделей

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

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

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

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

Краткое обсуждение данных

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

Хотя эти данные взяты из учебного примера, они демонстрируют определенные характеристики, которые обычно наблюдаются в полевых данных, например следующие:

  1. Шум

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

2. Небольшой размер выборки

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

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

Чтобы проиллюстрировать подход к обновлению моделей, набор данных разделен на три части:

  • Исходный набор данных - первоначальные прогнозы модели достаточно точны в этом наборе данных. Он состоит из первых шести точек данных [циклы от 0 до 500].
  • Обновить набор данных - первоначальные прогнозы модели в этом наборе данных неточны. Этот набор данных, как следует из названия, используется для обновления исходной модели. Он состоит из следующих пяти точек данных [циклы от 600 до 1000].
  • Набор тестовых данных - этот набор данных используется для проверки прогнозов обновленной модели. Он состоит из последних пяти точек данных [циклы с 1100 по 1500]

Исходные параметры модели, полученные с помощью минимизации по методу наименьших квадратов, равны logC = -22,135 & m = 3,765, где C и m - свойства материала. Прогнозы модели для начального набора данных показаны ниже:

Прогнозы модели довольно точны по отношению к измеренным значениям. Среднеквадратичная ошибка (MSE) для начального набора данных составляет: MSE (i) = 3,93 10 ^ -7.

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

Ясно, что прогнозы исходной модели больше не точны. MSE в точках данных обновления становится MSE (u) = 5,67 · 10 ^ -6, что почти в 14 раз больше, чем начальная ошибка, MSE (i)! Кроме того, наблюдается явное расхождение между прогнозами модели и наблюдаемым размером трещины в наборе данных обновления по мере увеличения циклов. Следовательно, модель необходимо доработать, чтобы сделать ее более точной.

Методология обновления

Одним из методов, которые можно использовать для обновления модели, является Фильтр Калмана (KF) и его варианты, а именно Расширенный фильтр Калмана (EKF) и Фильтр Калмана без запаха (UKF).

В случае KF сделаны следующие допущения:

  1. Модель процесса линейна
  2. Модель измерения линейна
  3. Начальное состояние гауссово

EKF и UKF позволяют ослабить первые два предположения. Центральная операция, выполняемая в фильтре Калмана, - это распространение гауссовой случайной величины (GRV) через динамику системы. В EKF распределение состояний аппроксимируется GRV, который затем аналитически распространяется через линеаризацию первого порядка нелинейной системы. Это распространение может привести к большим ошибкам в истинном апостериорном среднем и ковариации преобразованного GRV, что может привести к неоптимальным характеристикам, а иногда и к расхождению фильтра.

UKF решает эту проблему с помощью детерминированного подхода к выборке. Распределение состояний снова аппроксимируется GRV, но теперь представлено с использованием минимального набора тщательно выбранных точек выборки, называемых сигма-точками. Когда сигма-точки распространяются через нелинейную систему, они фиксируют апостериорное среднее значение и ковариацию с точностью до 3-го порядка (разложение в ряд Тейлора) для любой нелинейности. Напротив, EKF обеспечивает точность только первого порядка. Примечательно, что вычислительная сложность UKF того же порядка, что и EKF.

Как упоминалось ранее, мы будем использовать UKF для обновления исходной модели распространения трещин. Для этого проблема должна быть отражена в структуре UKF. Параметры, которые необходимо обновить, C и m, считаются «состояниями» UKF. По соглашению состояния обозначаются x. Состояния моделируются как процесс случайного блуждания. Модель распространения трещины, описанная ранее, является уравнением измерения. Вместе технологические и измерительные модели UKF представлены как:

где a - размер трещины, u - количество циклов, h представляет модель распространения трещины, w - шум процесса, а v - шум измерения. Предполагается, что технологический шум и шум измерения являются нулевыми средними, гауссовыми и белыми.

Шаги методологии обновления модели на основе UKF кратко изложены ниже:

  1. Инициализируйте вектор состояния и его неопределенность (ковариацию).
  2. Сгенерируйте сигма-точки на основе состояния.
  3. Распространяйте сигма-точки и вычисляйте прогнозируемое среднее значение и ковариацию состояния.
  4. Вычислить сигма-точки на основе прогнозируемого среднего значения и ковариации.
  5. Рассчитайте выход для каждой сигма-точки.
  6. Рассчитайте прогнозируемый результат как взвешенную сумму отдельных результатов с шага 5.
  7. Рассчитайте неопределенность (ковариацию) прогнозируемого выхода.
  8. Вычислите перекрестную ковариацию между предсказанным состоянием и предсказанными выходными данными.
  9. Вычислите нововведение как разницу между измеренным и прогнозируемым выходом.
  10. Вычислите коэффициент усиления фильтра, используя кросс-ковариацию и выходную ковариацию.
  11. Обновите вектор состояния и его ковариацию.
  12. Повторите шаги с 2 по 11 для всех точек данных, используемых для обновления модели.

Любопытный читатель может узнать о математике UKF здесь.

Основанная на UKF методология обновления модели распространения трещин была реализована как проект Depend On Docker и может быть найдена в этом репозитории с помощью Google Colab здесь. Ниже для ясности приведены фрагменты кода для нескольких ключевых шагов алгоритма.

Сгенерировать точки сигмы

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

Прогнозировать среднее значение и ковариацию

После создания сигма-точек они распространяются по модели процесса. Затем распространенные сигма-точки используются для вычисления прогнозируемого среднего и ковариации.

Вычислить выход для всех точек сигмы

Выходы для всех сигма-точек рассчитываются как:

Вычислить выход, кросс-ковариацию и ковариацию выходных данных

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

Обновить вектор состояния и его ковариацию

Наконец, обновляются вектор состояния и его ковариация.

Результаты и обсуждение

Как упоминалось ранее, набор обновленных данных использовался для уточнения исходной модели с помощью UKF. Параметры модели после обновления оказались следующими: logC = -22,2037 & m = 3,5762. Прогнозы до и после обновления модели представлены ниже:

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

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

Методология обновления модели на основе UKF не только оценивает среднее значение параметров модели, но также вычисляет ковариацию, связанную с оценками. Другими словами, он обеспечивает совместное распределение переменных состояния. Функция MultivariateNormalFullCovariance TensorFlow Probability используется для создания выборок для вычисления неопределенности, связанной с прогнозируемым выходом, которая в данном случае является размером трещины. 95% вероятный интервал прогнозируемого размера трещины также показан на рисунке выше.

Из графика видно, что обновленная модель значительно точнее предсказывает будущее развитие трещины по сравнению с исходной моделью. Это говорит о том, что UKF смогла извлечь соответствующую информацию из измерений в наборе данных обновления, чтобы изменить параметры модели, чтобы сделать модель более точной и полезной. Еще одна важная вещь, на которую следует обратить внимание, - устойчивость этого подхода к измерениям с шумом. В наборе данных обновления измерения, соответствующие циклам 600 и 700, являются выбросами по сравнению с другими измеренными значениями трещины. Однако влияние этих выбросов на процесс обновления модели довольно минимально, поскольку UKF не пытался минимизировать ошибку между прогнозами и наблюдениями в этих точках данных. Это желательный результат, и такая устойчивость к зашумленным измерениям имеет решающее значение для получения точной обновленной модели.

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

Из приведенной выше диаграммы очевидно, что прогнозы трещин были бы очень неточными, если бы использовалась исходная модель. Фактически, первоначальная модель привела бы к ложной тревоге, генерируемой при 2100 циклах, когда истинная вероятность обнаружения трещины, превышающей порог ремонта, значительно мала (‹---------------- 5%).

Резюме

Мы показали, как решать проблему известных неизвестных, как мы описали в Части 1 этой серии блогов. В Части 1 мы показали, как объединить знания предметной области и традиционное машинное обучение для вычисления известных свойств материалов. Здесь был показан тот же пример в более реальной обстановке, когда все данные недоступны заранее. Методология обновления прогностических моделей на основе UKF, обсуждаемая в этом блоге, может быть очень эффективной в реальных приложениях, где данные ограничены и зашумлены. Он может учитывать нелинейности в модели и является эффективным с точки зрения вычислений.

Следующие шаги

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

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

Этот блог - результат напряженной работы и тесного сотрудничества нескольких команд в Google и BHGE. Мы особенно благодарны Джошу Диллону, Майку Шве, Скотту Фитцхаррису, Алексу Уокеру, Шьяму Сиварамакришнану и Фабио Нонато за их многочисленные правки, результаты, фрагменты кода и, самое главное, активную поддержку.