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

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

Обнаружение отказа дуги с помощью вейвлета преобразовывает, был изучен в [1]. Этот пример выполняет процедуру извлечения признаков, подробно изложенную в [1]. Извлечение признаков включает фильтрацию сигналов загрузки с помощью db3 Daubechies вейвлет сопровождается нормализацией. Далее, автоэнкодер, обученный с функциями сигнала при нормальных условиях, используется, чтобы обнаружить отказы дуги в сигналах загрузки. Модель дуги DC раньше генерировала сигнал отказа, и предварительно обученная сеть, используемая, чтобы обнаружить отказы дуги, обеспечиваются в папке в качестве примера. Когда обучение сети и обнаружения дуги в больших сигналах может взять значительно длинное время симуляции в этом примере, мы только сообщаем о результатах обнаружения.

Обучение и Setup тестирования

Автоэнкодер обучен с помощью сигнала загрузки, сгенерированного моделью Simulink™ DCNoArc при нормальных условиях, т.е. без отказов дуги. Модель DCNoArc был создан с помощью компонентов из Specialized Power System библиотека в Simscape Electrical™.

Рисунок 1: DCNoArc модель для генерации загрузки сигнализирует при нормальных условиях.

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

  • Источник Гармоники AC 1: 10-вольтовое напряжение переменного тока и частота на 120 Гц

  • Источник Гармоники AC 2: 20-вольтовое напряжение переменного тока и частота на 2 000 Гц

  • Источник напряжения постоянного тока: 1000 В

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

Рисунок 2: DCArcModelFinal модель для генерации загрузки сигнализирует с отказом дуги.

Модель дуги Кэсси:

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

dgdt=gτ(u2Uc2-1)

где

  • g является проводимостью дуги в Siemens

  • τ постоянная времени дуги в секундах

  • u является напряжением через дугу в вольтах

  • Uc постоянное напряжение дуги в вольтах

Модели дуги Кэсси были реализованы в Simulink™ с помощью следующих значений параметров:

  • Начальная проводимость g (0) 1e4 Siemens

  • Постоянное напряжение дуги Uc = 100 В

  • Секунды постоянной времени 1.2e-6 дуги

Разделительные времена контакта для моделей дуги выбраны наугад. Все параметры загрузились в initFcn коллбэки в Model Properties вкладки Model Settings. Мы используем DCArcModelFinal модель, чтобы сгенерировать дефектную загрузку сигнализирует, чтобы протестировать автоэнкодер.

Обнаружение аномалии с автоэнкодером

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

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

Извлечение признаков

Основанный на вейвлете автоэнкодер был обучен и протестирован на сигналах, отфильтрованных с помощью дискретного вейвлета преобразовывает (DWT). После [1], db3 Daubechies вейвлет использовался.

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

Рисунок 3: Необработанная загрузка и отфильтрованная вейвлетом функция сигнала при нормальных условиях.

Рисунок 4: Необработанная загрузка и отфильтрованная вейвлетом функция сигнала при дефектных условиях.

Обучение модели

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

% Training data: load voltage under normal condition 
featureDimension = 100;

% Create network layers
numHiddenUnits = 50;

layers = [ sequenceInputLayer(1, 'Name', 'in')
    bilstmLayer(32, 'Name', 'bilstm1')
    reluLayer('Name', 'relu1')
    bilstmLayer(16, 'Name', 'bilstm2')
    reluLayer('Name', 'relu2')
    bilstmLayer(32, 'Name', 'bilstm3')
    reluLayer('Name', 'relu3')
    fullyConnectedLayer(1, 'Name', 'fc')
    regressionLayer('Name', 'out') ];

% Set options
options = trainingOptions('adam', ...
    'MaxEpochs',20, ...
    'MiniBatchSize',16, ...
    'Plots','training-progress');

Рисунок 5: Процесс обучения для автоэнкодера.

Обучивший сеть задан в файле netData.mat в папке в качестве примера. Обучивший сеть может быть загружен в the Predict блок из Глубокого обучения Toolboxчтобы обнаружить дугу дают сбой в сигнале загрузки. Рисунок показывает гистограмму для ошибки реконструкции, произведенной автоэнкодером, когда вход является обучающими данными. Можно использовать статистику для ошибки реконструкции выбрать порог обнаружения. Например, выберите порог обнаружения, чтобы быть три раза стандартным отклонением для ошибки реконструкции.

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

Модель для обнаружения аномалии Используя автоэнкодер

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

Рисунок 7: DCArcModelFinal для обнаружения отказа дуги.

Первый блок генерирует шумный сигнал загрузки DC с отказом дуги в непрерывное время. Напряжение загрузки затем преобразовано в сигнал дискретного времени, произведенный на уровне 20 кГц Rate transition блокируйтесь в DSP System Toolbox™. Сигнал дискретного времени затем буферизуется к LWTFeatureGen блокируйтесь, который получает желаемую проекцию детали уровня 4 после предварительной обработки. Проекция детали затем сегментируется в 100 демонстрационных системах координат, которые являются тестовыми функциями Predict блок. Predict блок был предварительно загружен с сетью, предварительно обученной с помощью сигнала загрузки при нормальных условиях. Блок обнаружения аномалии затем вычисляет среднеквадратичную ошибку (RMSE) для каждой системы координат и объявляет присутствие отказа дуги, если ошибка выше некоторого предопределенного порога. Мы можем наблюдать предсказание от блока, добавляющего осциллограф в модель. Красная линия в графике указывает, где переход из-за аномалии обнаруживается. Автоэнкодер идентифицировал большинство отказов дуги.

Рисунок 8: обнаружение отказа дуги в реальном времени, как замечено по осциллографу.

Этот график показывает области, предсказанные сетью, когда отфильтрованные вейвлетом функции используются. Автоэнкодер смог обнаружить все 10 областей отказа дуги правильно. Другими словами, мы получили 100%-ю вероятность обнаружения в этом случае.

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

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

Рисунок 10: эффективность Обнаружения для автоэнкодера с помощью сырых данных загружает сигнал.

Наконец, мы сгенерировали 50-секундный длинный аномальный сигнал с 40 областями отказа дуги (эти данные не включены с примером). Когда протестировано с автоэнкодером, обученным с необработанными сигналами, области дуги были обнаружены с вероятностью на 57,85% обнаружения. В отличие от этого автоэнкодер, обученный с отфильтрованными вейвлетом сигналами, смог обнаружить области отказа дуги с вероятностью на 97,52% обнаружения.

Сводные данные

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

Ссылки

[1] Ван, Чжань и Роберт С. Бэлог. “Отказ дуги и Анализ Сигнала Flash в Системах распределения DC Используя Преобразование Вейвлета”. Транзакции IEEE на Интеллектуальной сети 6, № 4 (июль 2015): 1955–63. https://doi.org/10.1109/TSG.2015.2407868

Смотрите также

(Deep Learning Toolbox)