Эта статья является второй частью серии статей об искусственном интеллекте для трехмерной печати. Читать часть 1 и часть 3.

Из части 1 мы пришли к выводу, что необходимо определить единую метрику для измерения степени аномальности видеокадров плавильной ванны для системы мониторинга LPBF in-situ. В идеале оценка этой метрики должна быть недорогой в вычислительном отношении, чтобы ее можно было вычислить в режиме, близком к реальному времени. В этой статье представлена ​​структура обнаружения аномалий, основанная на концепции обучения в одном классе.

Отказ от ответственности. Цель этой статьи — продемонстрировать, как различные модели могут быть объединены в структуру обнаружения аномалий. Такие детали, как тонкая настройка гиперпараметров и архитектура модели, будут опущены.

Введение

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

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

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

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

Автоэнкодер

В этом разделе представлено краткое введение в автоэнкодер.

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

Математически это можно записать как Z= g(X) и X ' = f(Z) подвергается XX', гдеX — входное изображение, g — кодировщик, Z — скрытый вектор, f — декодер и X' — выходное изображение.

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

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

Предварительное просеивание данных

В этом разделе представлен метод фильтрации данных для подготовки обучающих данных. Как уже упоминалось, обучение в одном классе требует, чтобы аномальные экземпляры были меньшинством в обучающем наборе данных. Быстрый способ обеспечить требуемое ограничение — использовать неконтролируемый алгоритм кластеризации, такой как кластеризация k-средних. В частности, сфокусированные пулы расплава из кластеров 1 и 9 перемешиваются и используются для обучения нашего автоэнкодера.

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

Обнаружение аномалий

Метрика ошибки реконструкции (RE) используется для измерения несоответствия между входными данными и реконструированными выходными данными. В качестве проверки работоспособности была рассчитана и визуализирована метрика RE расфокусированных бассейнов расплава.

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

Некоторые реконструкции аномальных ванн расплава также представлены ниже.

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

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

Интересно, что автоэнкодер фиксирует направление движения луж расплава, и нормальные лужи расплава действительно появляются в виде кластеров в скрытом пространстве.

Для аналогичного графика, но на данных тестирования, мы заметили, что некоторые аномалии расположены далеко от скоплений.

Оценка производительности модели

Затем были помечены ~ 1500 невидимых точек данных. Затем помеченные точки данных можно использовать для определения подходящего порога RE и для количественной оценки производительности автоэнкодера.

Соответствующий порог RE ​​был определен с помощью кривой рабочих характеристик приемника (ROC). Обратите внимание, что аномалии определяются как положительный класс, в то время как нормальные бассейны расплава помечаются как отрицательный класс.

Наконец, с определенным пороговым значением RE производительность автоэнкодера с точки зрения отзыва и точности обоих классов ванны расплава была оценена и обобщена в таблице ниже:

Некоторые мысли

Измеряя время, необходимое для этой системы обнаружения аномалий, от минимальной максимальной нормализации изображения до вычисления RE, автоэнкодеру в среднем требовалось 1 микросекунда для вывода прогноза. Это примерно в 1000 раз быстрее, чем извлечение только признаков реквизита региона. Что еще более важно, обработка изображений также быстрее, чем FPS используемой системы мониторинга LPBF на месте.

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

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

Предостережения

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

Заключительное замечание

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