На сегодня почти всё внимание IT-общественности приковано к LLM — огромным нейросетям, которые почти как люди. LLM внедряют в HR, дизайн, журналистику, писательство, маркетинг, в общем в первую очередь туда, где важна красота изложения или картинки, и весьма широк допуск понятия ошибки (программирование стоит особняком, и рассматривать его желательно отдельно).
Но основа экономики всё-таки не эти, весьма, конечно, уважаемые специальности, а промышленность, транспорт, энергетика — те, кто реально производит материальные ценности и материальные услуги. Но об успехах LLM в этих отраслях особо не слышно. Нет, конечно есть примеры, но большая их часть касается документооборота, правового обеспечения, CRM и так далее. Такое ощущение, что LLM полезна только офису и то не всем, а только обеспечивающему персоналу.
Что же происходит с нейросетями, когда они сталкиваются с реальным миром и реальным железом?
❯ Микросети против гигантов
В отличие от генерации текста, где творчество модели приветствуется, в промышленности любое отклонение от регламента — это проблема, и часто фатальная. Нейросети здесь нужны не для того, чтобы делать красивые отчеты и презентации, а для решения двух критических задач:
Предиктивная аналитика: поймать момент, когда станок работает нештатно, но авария ещё не произошла; подшипник ещё не рассыпался, дизель не пошел в разнос, не отвалился электрод или не рухнула стенка печи.
Оптимизация процессов: найти такие параметры подачи топлива и сырья, чтобы снизить расход хотя бы на 1%, что в масштабах завода сэкономит миллионы.
Чаще всего, здесь нет необходимости в нейросетях на миллиарды параметров и гигабайты видеопамяти. Физический мир, в отличие от человеческого языка, детерминирован и жесток. Законы термодинамики или сопромата не меняются в зависимости от контекста. Поэтому здесь в приоритете малые сети:
LSTM и GRU (рекуррентные сети) работают с историей временных рядов, и соответственно, понимают инерцию процессов. Типичная задача — прогноз вибрации подшипника на горизонте 1–4 часа по данным акселерометра. Архитектура: 1–2 слоя GRU (hidden_size=64–128), вход — окно 30–60 точек (10-секундные отсчёты), выход — регрессия на RMS вибрации или классификация состояния (норма / предотказ / отказ). Обучение: MSE или Huber loss, Adam, lr=1e-3 с decay. На практике GRU предпочтительнее LSTM — меньше параметров при сопоставимом качестве.
1D-CNN (свёрточные сети) отслеживают паттерны на спектрограммах вибрации. Стандартный подход: сырой сигнал акселерометра (8–16 кГц) нарезается на окна по 1–2 секунды, к каждому окну применяется FFT или Mel-спектрограмма. Далее 3–4 свёрточных слоя (kernel_size=3–7, каналы 16→32→64) с BatchNorm и MaxPool, затем полносвязный слой на классификацию дефекта: дисбаланс, расцентровка, износ подшипника, ослабление крепежа. Преимущество перед рекуррентными сетями — параллельность вычислений и устойчивость к сдвигу паттерна во времени.
Классический ML (XGBoost, Random Forest) часто работает надёжнее и прозрачнее глубокого обучения на табличных данных с десятками сенсоров. Типичный пайплайн: из временных рядов извлекаются агрегированные признаки на окне (mean, std, skewness, kurtosis, RMS, peak-to-peak, crest factor), затем XGBoost (n_estimators=200–500, max_depth=4–6) обучается на этих признаках. Feature importance сразу показывает, какой сенсор вносит наибольший вклад, что критично для доверия инженера к модели.
Autoencoders для детекции аномалий — отдельный класс задач, когда размеченных аварий нет вообще. Сеть учится восстанавливать нормальный сигнал (encoder: 64→32→16, decoder: 16→32→64, loss = MSE). При появлении аномалии ошибка реконструкции резко растёт. Порог срабатывания подбирается по статистике ошибки на валидации: обычно mean + 3σ или персентиль 99.5%. Подход работает, но чувствителен к дрейфу сенсоров — о чём ниже.
Все эти модели могут работать на обычном промышленном ПК или даже на микроконтроллере прямо внутри датчика (Edge AI), не требуя облаков и дата-центров.
❯ Стена данных: дорогие галлюцинации
Главная проблема промышленного ИИ — отсутствие данных для обучения. LLM обучаются на всём интернете, а данные для доменной печи или турбины на ГРЭС? Только у самих производственников.
И тут возникают вопросы, каждый из которых решаем, но одновременно способен убить любой проект:
Дрейф сенсоров. Термопара через полгода работы в агрессивной среде начинает завышать показания на 30–80 °C. Нейросеть не поймёт этого сама — она продолжит доверять показаниям датчика и будет систематически ошибаться, принимая артефакт деградации за реальный сигнал. Помогает периодическая рекалибровка и мониторинг статистик входных данных. На практике проще всего (и одновременно организационно сложнее) отслеживать скользящие mean и std каждого сенсора и поднимать алерт при отклонении от исторического коридора.
Дисбаланс классов. Аварии случаются редко — это хорошо для завода и плохо для модели. Типичное соотношение: 50:1 или 100:1 (норма к аномалии). При таком дисбалансе модель легко может выучить стратегию всегда говори: всё нормально, и получать accuracy 98%, ничего при этом не обнаруживая. Стандартные контрмеры: подбор порога по Precision-Recall кривой, взвешивание классов (scale_pos_weight в XGBoost), SMOTE или ADASYN для синтетической генерации minority class. Но главное — метрики: в промышленности accuracy бесполезна, смотреть нужно на Recall (сколько аварий поймали), Precision (сколько ложных тревог) и PR-AUC.
Отсутствие разметки. На большинстве заводов логи пишутся, но никто не размечает, что именно произошло в 03:47 во вторник. Журнал оператора чаще всего тетрадка с записью «что-то шумит, вызван механик». Привязать эту запись к конкретным точкам в данных SCADA — отдельная работа, требующая инженера, времени и терпения. Впрочем, нейросети может быть достаточно и интервального подхода, когда указывается наличие проблемы во временном диапазоне.
Стоимость ошибки. В текстах галлюцинация — это смешная картинка, неверная дата, двойка за курсовую. В промышленности галлюцинация — это пропущенная авария, простой линии или взрыв. Ложная тревога тоже стоит денег: незапланированная остановка конвертера — потеря плавки, перезапуск, часы простоя. Более того, ложные тревоги могут психологически усыпить оператора, который однажды не отреагирует на реальную проблему. А уж служебок с жалобами на разработчиков будут сотни.
Поэтому промышленные модели настраиваются в зависимости от цены ошибки. Лучше пропустить аномалию, чем напрасно дергать оператора или лучше лишний раз дёрнуть оператора, чем рисковать миллиардами или жизнями.
❯ А если синтетика? Почему алгоритм не заменит физику
Казалось бы, решение на поверхности: если реальных аварий мало, давайте их нарисуем! Сгенерируем синтетические данные, добавим шума, научим модель. Это популярный путь создания так называемых «цифровых двойников», но без тщательного анализа он ведёт в тупик.
Проблема синтетических датасетов в том, что они создаются алгоритмически. Генератор берёт формулу идеального процесса и добавляет к ней случайный шум.
Вот пример, замечательная статья @ac1esan. Он вложил много усилий в конструирование датасета электродуговой печи. В нём много физики, но не меньше и алгоритмов, что, по идее, должно было бы помочь в тестовом обучении нейросетей.
Но нейросеть — существо ленивое и хитрое. Вместо того чтобы учить сложную физику процесса, она выучивает примитивный рецепт генератора. В этом конкретном датасете модель не увидела реальных предвестников: фазовых переходов, изменения когерентности сигналов, накопления усталости материала.
Я протестировал разные подходы на этом синтетическом датасете (75 тысяч точек, 72 параметра, 4 печи, ~2% аномалий). Автор датасета описывал каузальные цепочки: «растёт вибрация → скачок импеданса → ток падает», но, фактически, предаварийная зона (3–12 шагов до аномалии) статистически неотличима от нормы: все отклонения < 0.11σ. Аномалии оказались мгновенными: генератор просто одновременно подкручивал несколько сенсоров в точке is_anomaly=1. Никакой развивающейся динамики, никаких предвестников.
После десятка попыток победить упрямый датасет, я перешел к его проверке, сначала стандартными статистическими методами, а потом уже и достаточно экзотическими. Параметр порядка Курамото — мера фазовой синхронизации 64 виртуальных агентов, построенных из спектральных, кинетических и статистических разложений сигналов. Если бы аномалия была реальным физическим процессом (например, обрыв электрода), фазовая когерентность между подсистемами печи должна была бы измениться: ток одной фазы падает, другие компенсируют, вибрация реагирует с задержкой. Результат: когерентность в норме — 0.237, перед аварией — 0.235, в момент аварии — 0.233. Дельта 0.004 при стандартном отклонении 0.05. Рой из 64 агентов не заметил аварию даже когда она происходила. Генератор просто масштабировал все сенсоры синхронно.
Итоговые метрики после пяти принципиально разных подходов, не считая достаточно экстравагантных гипотез (классический ML, физическое моделирование, unsupervised learning, signal processing, фазовая синхронизация): лучший результат — F1 ≈ 0.77, Precision 95%, Recall 64%. Модель ловит 162 из 254 аномалий, пропускает 92, даёт 8 ложных тревог. Это потолок, и он определился не алгоритмом, а свойствами датасета: модель научилась распознавать подкрученные значения, но предсказывать за 5 минут до события ей было не из чего.
Вывод: на синтетических данных без каузальной структуры модель обучается распознавать рецепт генератора, а не физику процесса. На реальном заводе такая модель будет бесполезна.
Но в любом случае я очень благодарен автору этого датасета @ac1esan, и надеюсь, что он продолжит его развивать.
❯ Что нужно, чтобы синтетика работала
Синтетические данные не бесполезны, но генератор должен моделировать не значения сенсоров, а физику взаимодействия компонентов:
Причинно-следственная динамика. Авария развивается во времени. За 30–60 минут до отказа подшипника растёт RMS вибрации на высоких частотах (дефект внешнего кольца — характерные частоты BPFO). За 5–15 минут — появляется модуляция на частоте вращения. В последнюю минуту — широкополосный шум и скачок температуры. Генератор должен воспроизводить эту последовательность, а не ставить флаг в случайной точке.
Разные типы отказов с разными сигнатурами. Обрыв электрода — это не то же самое, что утечка охлаждающей воды. Первый даёт мгновенный скачок импеданса и дисбаланс фаз. Вторая — медленное снижение теплосъёма, рост температуры стенки, изменение состава отходящих газов. Генератор должен иметь библиотеку сценариев отказов.
Почти-аварии. Ситуации, которые выглядят опасно, но не привели к отказу. Высокая вибрация при агрессивном режиме плавки — это норма, а не аномалия. Именно на таких граничных случаях модель учится отличать тревожный сигнал от рабочего шума. Без них модель будет либо попусту дёргать оператора при каждом пуске, либо молчать до самого взрыва.
Я написал вроде бы уверенно, но, на самом деле, у меня нет никакой уверенности, что синтетический датасет не пропустит ещё что-то важное, что скрыто присутствует в физическом шуме, и результатом будет полное фиаско в непосредственной эксплуатации.
❯ Битва за внедрение: инженер против менеджера
Даже если у вас есть данные и рабочая модель, вы упираетесь в человеческий фактор. Внедрение нейросетей на производстве — это часто скрытая война.
Менеджмент восторженно ждёт быстрого и дешевого внедрения, инженеры видят огромное количество дополнительной работы, при этом лавры достанутся разработчикам нейросетей, а инженерам возможное сокращение (зарплат или вообще).
Для начала нужно привести в порядок датчики, а на любом реальном объекте половина датчиков заглушены, требуют замены или калибровки. Не факт, что эти датчики до сих пор производятся, а поиск подходящего аналога тот ещё квест. Потом выяснится что требуется замена контроллера, а с учетом накопившегося зоопарка возникает дилемма полной замены всего парка датчиков… Обычно на этом этапе руководство, увидев сметы и объем работ, представленные опытными инженерами, сдаётся.
И техническая поддержка вздыхает с облегчением, потому что иначе каждый вышедший из строя датчик, на который раньше не обращали внимания, требовал бы экстренной замены, нейросеть сигнализировала бы об этом в каждом отчете, а вина за все непредсказанные аварии возлагалась бы на эту службу.
И психологически. Если нейросеть предупредит об аварии, а печь была в порядке — инженера лишат премии за простой. Если нейросеть промолчит, а печь встанет — виноват снова инженер. При таких правилах игры рациональная стратегия инженера достаточно проста — игнорировать нейросеть.
Так что ожидать тихого саботажа вполне логично. Инженерам проще работать по старинке, доверяя своему опыту и манометру, чем чёрному ящику, который обучен программистами, ни разу не инженерами. Побеждают в этой борьбе обычно инженеры, а дорогой пилотный проект ложится на полку.
Поэтому внедрение требует более тонкого подхода:
Модель как консультант. Система выдаёт рекомендацию и объяснение («вибрация на подшипнике 7 выросла на 40% за последние 2 часа, рекомендую осмотр при ближайшей остановке»). Решение остаётся за инженером.
Интерпретируемость. Инженер должен видеть не число от 0 до 1, а конкретно: какой сенсор сработал, как изменился тренд, почему модель считает ситуацию аномальной. SHAP-значения (от XGBoost) и визуализация важности — минимум. В идеале, привязка к физическим параметрам, которые инженер и так отслеживает.
Постепенность. Первые месяцы модель работает параллельно, алерты пишутся в лог, но не показываются оператору. Сравниваются с реальными событиями. Только после подтверждения корреляции система переводится в режим консультанта. И только после нескольких подтверждённых пойманных аварий — в предупредительный режим.
Разделение ответственности. В идеале, если модель предупредила, а инженер проигнорировал и печь встала, это разговор с инженером. Если модель не предупредила, это ответственность разработчика. Но в реальной жизни такого не будет никогда. Разработчик категорически откажется от любой формы ответственности, максимум по суду вернет деньги за внедрение. То есть производство будет вынуждено поддерживать две системы мониторинга - нейросеть и человек на пульте управления. Поэтому внедрение нейросети необходимо принципиально рассматривать, как дополнительный инструмент, а не как замену линейным средствам мониторинга.
❯ Заключение
Промышленности не нужны триллионы параметров, умеющие писать стихи. Ей нужны надёжные, интерпретируемые инструменты, которым инженер может доверять или хотя бы проверять.
Выходом из тупика данных может стать появление открытых библиотек реальных промышленных датасетов. Не синтетики, а сырых логов с настоящими отказами, на которых сообщество сможет строить и проверять модели. Пока таких библиотек практически нет, каждый завод изобретает велосипед в одиночку. Я, конечно, мечтаю о том, как какой-нибудь из технических университетов возьмёт на себя огромный труд по выпрашиванию (или снятию) логов с типового промышленного оборудования, сверку и разметку хотя бы с журналами инцидентов. И любой школьник мог бы попробовать обучить микромодель на размеченном датасете газовой турбины, и сверить на контрольном датасете со скрытыми метками аномалий. А конкурс по лучшей нейросети для той же турбины, с хорошими призами, сделал бы для развития нейросетей в стране больше, чем любой хакатон странных идей за безумные деньги.
Нейросеть в цеху — это не замена инженера и не искусственный интеллект в традиционном понимании. Скорее это ещё один сенсор. Очень сложный, капризный, требующий глубокого знания математики и физики процессов, но невероятно мощный в умелых руках. И хайп вокруг LLM здесь совершенно ни при чём.
Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩

Комментарии (9)

Urmanov_t
03.03.2026 08:29Хочу добавить, что метод Курамото для аудита синтетических данных можно систематизировать. Метод проверяет не только когерентность, но и структуру фазового пространства (Такенс), спектральные свойства и утечки данных. Набросал на Python, на днях на github.com выложу.

Kamil_GR Автор
03.03.2026 08:29Это инструмент для определения автогенератора. Мне интересно, а справится ли он с отклонениями физическими, обусловленными чистой случайностью. Если задать допуск на шум, то возможно потеряем разнонаправленные отклонения в рамках шума. Вообще было бы конечно интересно попробовать на реальных датасетах.

Wesha
03.03.2026 08:29затем полносвязный слой на классификацию дефекта: дисбаланс, расцентровка, износ подшипника, ослабление крепежа.
Эх, парни, вот где вы были 17 лет назад?

Dims_SPb
03.03.2026 08:29Все описанные проблемы - вовсе не специфика внедрения LLM. А вообще любого проекта (во всяком случае - ИТ-проекта), модернизирующего существующие процессы управления. Эти перечисленные проблемы должны быть обнаружены еще на стадии пред-проекта, при первичных обсуждениях с экспертизой заказчика. И для их преодоления должны быть придуманы конкретные решения. Если нужны эксперименты - они должны быть тоже проведены заранее. Только после этого можно начинать проект внедрения всерьез.

appet1te
03.03.2026 08:29Проблема синтетических датасетов в том, что они создаются алгоритмически. Генератор берёт формулу идеального процесса и добавляет к ней случайный шум.
Как говорил один мудрец "Чтобы научиться плавать в реке Янцзы, нужно плавать в реке Янцзы"
Ну, а серьезно, можно внедрять ии-шку, но не панацея. На типовых стадиях линии. На моменте, например, выделения брака в шпоне. На одном из деревообрабатывающих производств слышал, что было так: 30 процентов замечала работница, еще 10-15 замечал лазер. Поставили сканер иишный: камера вертикальная, обсветили шпон, и ии-шка замечает 90 процентов. 90 явно лучше чем 30-50.
Промышленность вообще благодатное место для ии. Ибо все стандартное, много данных собирается. Можно датасет реальный насобирать(не в сравнении алгоритмическому).
Dims_SPb
03.03.2026 08:29Строгая распозавалка с легко собираемым датасетом для обучения - да, типовой пример условно-простого внедрения ИИ (не забывая о регировании на предстоящие флуктуации). Творческую распознавалку с искусственными датасетами внедрять значительно рискованнее. ИИ в этом смысле совсем не интеллектуален.

Dim2010
03.03.2026 08:29поймать момент, когда станок работает нештатно, но авария ещё не произошла, подшипник ещё не рассыпался, дизель не пошел в разнос.
Интересно глянуть на этот станок на дизеле :)
Может все дело именно в этом, в глубине понимания вопроса? А то как попугай Кеша когда давал интервью в колхозе (в мультфильме)

Kamil_GR Автор
03.03.2026 08:29Это перечисление вариантов )) можно добавить: стенка печи не рухнула, электрод не отвалился...
pg_expecto
И слава богу.
Причина очень проста и давно и всем известна :
1. Юридический и экономический вакуум ответственности
Короткий и честный ответ: сегодня — никто не отвечает, и это одна из главных проблем и одновременно тормозов для внедрения ИИ в критических сферах.
Формально ответственность пытаются переложить на человека, который использует систему. Врач, поставивший диагноз с помощью ИИ, несёт ответственность за окончательное решение. Оператор беспилотного автомобиля (если он есть) — за действия машины. Но это юридическая фикция, потому что:
Человек не может эффективно контролировать «чёрный ящик». Если модель выдаёт рекомендацию, у врача нет инструментов, чтобы проверить её обоснованность в реальном времени. Он либо доверяет, либо нет. Если он доверяет ошибочной рекомендации — виноват он. Если не доверяет правильной — он теряет пользу от системы. Это ставит человека в ложную позицию.
Производитель модели снимает с себя ответственность. В лицензионных соглашениях чётко прописано: «модель предоставляется "как есть", мы не гарантируем безошибочность и не несём ответственности за последствия её использования». Юридически производитель отвечает только за явные дефекты кода (если ошибка в софте, а не в модели), но не за ошибки самой модели, потому что они — не баг, а feature статистического обучения.
2. Почему это принципиальная проблема?
В традиционной инженерии действует принцип: за любое решение отвечает человек или организация. Если мост рухнул — отвечает инженер и строительная компания. Если лекарство убило — отвечает производитель и врач.
В случае с ИИ мы имеем дело с системой, которая:
не программируется явно, а обучается на данных;
не детерминирована (может давать разные ответы на один и тот же запрос);
не объясняет свои решения (проблема интерпретируемости).
Как привлечь к ответственности алгоритм? Его нельзя посадить в тюрьму, оштрафовать или лишить лицензии. А если привлекать разработчиков, то за что? За то, что модель ошиблась на примере, которого не было в обучающей выборке? Но это неизбежно для любой статистической системы.
В области использования ИИ для оптимизации производительности СУБД - точно такая же проблема . В сети практически , нет данных о экспериментах. Поэтому в области performance engineering - пользы от нейросетей пока не очень, только для анализа данных, советы просто гадание и угадывание. Иногда попадают. Чаще - нет. Но процесс конечно интересный .
C СУБД - тоже самое. Дословно.
Я как раз сейчас присутствую при восторженном эксперименте -"а давайте сделаем на продуктиве как тут вот в интернете написано и ИИ подсказал". Может быть будет по итогам статья, хотя врядли, DBA от экспериментаторов удалось отмазаться.
По итогам статьи - мое личное мнение - главное - не пускать восторженных энтузиастов в продуктивный контур.
Впрочем так всегда было и до моды на нейросети.
И уж тем более никогда не допускать даже возможности автоматизированного принятия решений нейросетями в критической инфраструктуре.