...

вторник, 17 декабря 2013 г.

[Из песочницы] Система прогнозирования на базе нейронных сетей в промышленности

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



Кратко о нейронных сетях




Нейронная сеть представляют собой систему соединённых и взаимодействующих между собой простых процессоров (нейронов).

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


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


Рисунок 2. Схема нейрона.


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


Брифинг




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

Единицы измерения — ppm (одна миллионная доля).

Входные данные — исторические значения технологических параметров объекта.

Данные для проверки прогноза сети — ежесуточные лабораторные анализы содержания серы.

Обучение и проверка сетей




Всего было использовано 531 наблюдение, общая выборка была поделена следующим образом: 70% наблюдений выборки использовалось для обучения сети, 30% использовалось в качестве контрольной выборки для оценки качества обучения сети и дальнейшего сравнения сетей между собой. Среднее содержание серы во всех наблюдениях составило 316,7ppm.

Всего по результатам обучения было отобрано 4 сети, сети имеют следующую конфигурацию:

Сеть №1: 20-22-1

Сеть №2: 20-26-1

Сеть №3: 20-27-1

Сеть №4: 20-16-1

Конфигурация сетей представлена в виде AA-BB-C, где AA – количество нейронов во входном слое, BB – количество нейронов в скрытом слое, C – количество нейронов в выходном слое.


Обучение сетей производилось в специализированных пакетах, на данный момент их великое множество (SPSS, Statistica и пр), ниже приведены гистограммы распределения ошибок обученных сетей на всем множестве наблюдений:


Рисунок 3. Гистограмма распределения ошибки для сети №1.



Рисунок 4. Гистограмма распределения ошибки для сети №2.



Рисунок 5. Гистограмма распределения ошибки для сети №3.



Рисунок 6. Гистограмма распределения ошибки для сети №4.


По полученным гистограммам можно сделать вывод, что ошибка сети подчиняется нормальному закону распределения, т.е. можно разделить размер ошибки на 3 области (для упрощения распределение считается нормализованным):


±σ1 (область 1 сигма — величина ошибки в 68% процентах прогнозов находится в данном диапазоне);

±σ2 (область 2 сигма — величина ошибки в 95% процентах прогнозов находится в данном диапазоне);

±σ3 (область 3 сигма — грубые ошибки, промахи, менее чем в 5% процентах случаев, величина ошибки больше, чем в области ±σ2).


Ошибки по областям распределения:

№ сети и ±σ1 (68% прогнозов)

Сеть №1: ±16,4ppm

Сеть №2: ±18,3ppm

Сеть №3: ±19ppm

Сеть №4: ±18,6ppm


№ сети и ±σ2 (95% прогнозов)

Сеть №1: ±43,9ppm

Сеть №2: ±47,6ppm

Сеть №3: ±42,8ppm

Сеть №4: ±41ppm


Причина грубых ошибок (промахов) в области ±σ3 – это работа сети с данными сильно отличающимися от тех, которые присутствовали в обучающей выборке.

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


Размер средней абсолютной ошибки:

Сеть №1 — 14,4ppm

Сеть №2 — 13,4ppm

Сеть №3 — 14,3ppm

Сеть №4 — 13,6ppm


Ниже представлены графики зависимости содержания серы в продукте (лабораторный анализ) и величины абсолютной ошибки:


Рисунок 7. График зависимости содержания серы и абсолютной ошибки для сети №1.



Рисунок 8. График зависимости содержания серы и абсолютной ошибки для сети №2.



Рисунок 9. График зависимости содержания серы и абсолютной ошибки для сети №3.



Рисунок 10. График зависимости содержания серы и абсолютной ошибки для сети №4.


Программная реализация




Для просмотра прогнозов в реальном времени использовалась собственная разработка на C#, данные получались от OPC-сервера, изначально было разработано приложение с минимальным набором возможностей (графики, XML-импорт, экспорт графика, добавление произвольного параметра на график), в дальнейшем планируется добавить сохранение истории в БД, сравнение прогнозов сети с реальными историческими значениями по заданным временным отметкам, обучение сетей уже в своем пакете, сравнение сетей между собой и не только.

Рисунок 11. Скриншот первой версии


Выводы




Благоприятные условия работы для сети:



Наименьшую ошибку сеть выдает при содержании серы в конечном продукте в диапазоне 240-250ppm ÷ 400-410ppm (содержание серы, полученное в результате лабораторного анализа, а не прогноза сети), это связано с тем, что большинство измерений было произведено именно в данном диапазоне, и, собственно, на них и была обучена сеть. Нейронные сети имеют способность к обобщению информации, т.е. способны давать прогноз, в том числе основываясь на данных с которыми сеть не работала до данного момента, используя закономерности обучающей выборки, но в данном случае не смотря на такую особенность сети следует помнить, что конечный результат будет малопредсказуем, но с уверенностью можно утверждать что ошибка возрастет.

В случае серьезных изменений на объекте сеть необходимо переобучить.
Пути улучшения:




  • Учет времени реакции

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

  • Фильтрация шума

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

  • Повышение частоты анализов

    Увеличение количества замеров содержания серы в течение дня, что позволит увеличить количество данных для обучения сети и в свою очередь позволит получить более качественную сеть.

  • Повышение точности лабораторного анализа

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

  • Увеличение количества входных переменных

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




Резюме




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

This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers.


Комментариев нет:

Отправить комментарий