<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Yuriy Gavrilov: posts tagged CRISP-ML(Q)</title>
<link>https://gavrilov.info/tags/crisp-ml-q/</link>
<description>Welcome to my personal place for love, peace and happiness 🤖 Yuiry Gavrilov</description>
<author></author>
<language>en</language>
<generator>Aegea 11.4 (v4171e)</generator>

<itunes:owner>
<itunes:name></itunes:name>
<itunes:email>yvgavrilov@gmail.com</itunes:email>
</itunes:owner>
<itunes:subtitle>Welcome to my personal place for love, peace and happiness 🤖 Yuiry Gavrilov</itunes:subtitle>
<itunes:image href="https://gavrilov.info/pictures/userpic/userpic-square@2x.jpg?1643451008" />
<itunes:explicit>no</itunes:explicit>

<item>
<title>CRISP-ML(Q)+MLOps and Platform: Стандартизированная методология разработки машинного обучения с гарантией качества</title>
<guid isPermaLink="false">248</guid>
<link>https://gavrilov.info/all/crisp-ml-q-standartizirovannaya-metodologiya-razrabotki-mashinno/</link>
<pubDate>Thu, 03 Jul 2025 00:32:17 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/crisp-ml-q-standartizirovannaya-metodologiya-razrabotki-mashinno/</comments>
<description>
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-194.png.jpg" width="2560" height="1421" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;CRISP-ML(Q) (&lt;b&gt;C&lt;/b&gt;ross-&lt;b&gt;I&lt;/b&gt;ndustry &lt;b&gt;S&lt;/b&gt;tandard &lt;b&gt;P&lt;/b&gt;rocess for &lt;b&gt;M&lt;/b&gt;achine &lt;b&gt;L&lt;/b&gt;earning with &lt;b&gt;Q&lt;/b&gt;uality Assurance) — это современная процессная модель для управления жизненным циклом ML-проектов. Она была разработана как эволюция классической методологии &lt;a href="https://www.datascience-pm.com/crisp-dm-still-most-popular/"&gt;CRISP-DM&lt;/a&gt; (Cross-Industry Standard Process for Data Mining, 1999 г.), которая остается одной из самых популярных методологий для проектов по анализу данных &lt;a href="https://www.datascience-pm.com/crisp-dm-still-most-popular/"&gt;datascience-pm.com&lt;/a&gt;. CRISP-ML(Q) адаптирует и расширяет CRISP-DM, добавляя этапы, критичные для промышленного машинного обучения: &lt;b&gt;обеспечение качества, мониторинг и поддержку моделей в продакшене&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Возникновение CRISP-ML(Q) продиктовано статистикой: значительная часть ML-проектов (по некоторым оценкам, 75-85%) не достигали поставленных целей из-за отсутствия стандартизации, проблем с данными и недооценки операционных рисков. В отличие от CRISP-DM, который сосредоточен в первую очередь на процессе анализа данных &lt;a href="https://medium.com/voice-tech-podcast/cross-industry-standard-process-for-data-mining-crisp-dm-9edc0c5e3a1"&gt;medium.com&lt;/a&gt;, CRISP-ML(Q) охватывает &lt;b&gt;полный жизненный цикл&lt;/b&gt; — от бизнес-постановки до эксплуатации ML-систем, делая основной акцент на обеспечении качества на каждом шаге &lt;a href="https://www.mdpi.com/2076-3417/11/19/8861"&gt;mdpi.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Кстати ранее писал про The Big Book of MLOps – 2nd Edition: &lt;a href="https://gavrilov.info/all/sintez-the-big-book-of-mlops-2nd-edition/"&gt;https://gavrilov.info/all/sintez-the-big-book-of-mlops-2nd-edition/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;А еще тут добавлю про ZenML pdf’ку и &lt;a href="https://github.com/zenml-io/zenml"&gt;https://github.com/zenml-io/zenml&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Ключевые фазы методологии (6 этапов)&lt;/h3&gt;
&lt;p&gt;CRISP-ML(Q) структурирует процесс разработки ML-решений в шесть основных взаимосвязанных и итеративных фаз:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;&lt;b&gt;Понимание бизнеса и данных (Business Understanding &amp; Data Understanding)&lt;/b&gt;  &lt;br /&gt;
На этом начальном этапе определяются и понимаются бизнес-цели проекта (например, снижение времени обработки заявки на 20%), а также ключевые показатели эффективности (KPI). Эти бизнес-цели затем переводятся в конкретные задачи машинного обучения. Одновременно проводится глубокий анализ данных: исследуется их доступность, качество, потенциальные проблемы (пропуски, аномалии) и нормативные ограничения (например, GDPR), а также оцениваются необходимые ресурсы. На этом этапе могут использоваться инструменты типа ML Canvas для оценки осуществимости проекта.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="2"&gt;
&lt;li&gt;&lt;b&gt;Инженерия данных (Data Engineering)&lt;/b&gt;  &lt;br /&gt;
Эта фаза включает всестороннюю подготовку данных для моделирования. Это очистка данных (обработка пропущенных значений, удаление или корректировка выбросов), их трансформация (нормализация, стандартизация), балансировка классов (методы oversampling/undersampling), а также генерация новых, более информативных признаков (feature engineering). Важным нововведением здесь является внедрение &lt;b&gt;Data Unit Tests&lt;/b&gt; для предотвращения ошибок и поддержания качества данных до их использования в моделях.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="3"&gt;
&lt;li&gt;&lt;b&gt;Моделирование машинного обучения (Machine Learning Modeling)&lt;/b&gt;  &lt;br /&gt;
На этом этапе команда выбирает подходящие алгоритмы машинного обучения, учитывая такие ограничения, как интерпретируемость модели, вычислительные ресурсы и требования к времени отклика. Происходит обучение моделей, настройка гиперпараметров и оценка их производительности на валидационных наборах данных. Для обеспечения воспроизводимости и отслеживаемости всех экспериментов фиксируются метаданные: используемые гиперпараметры, версии датасетов, окружение выполнения. Применяются такие инструменты, как MLflow и Kubeflow.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="4"&gt;
&lt;li&gt;&lt;b&gt;Оценка качества ML-моделей (Quality Assurance)&lt;/b&gt;  &lt;br /&gt;
Это одна из ключевых отличительных фаз CRISP-ML(Q), выделенная в отдельный этап. Здесь проводится всестороннее тестирование модели: оценка ее устойчивости к зашумленным данным, проверка ключевых метрик (accuracy, F1-score, ROC-AUC) и глубокий анализ справедливости (fairness) для выявления и устранения потенциальных смещений в предсказаниях. Решение о переходе к развертыванию принимается только после того, как модель достигнет заданных пороговых значений качества (например, precision &gt; 0.9). Эта фаза может включать проверку надежности, стабильности и объяснимости модели &lt;a href="https://www.mdpi.com/2076-3417/11/19/8861"&gt;mdpi.com&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="5"&gt;
&lt;li&gt;&lt;b&gt;Развертывание (Deployment)&lt;/b&gt;  &lt;br /&gt;
На этом этапе обученная и проверенная модель интегрируется в производственную среду. Развертывание может осуществляться различными способами: как REST-API, микросервис или встроенный плагин. Используются стратегии безопасного развертывания, такие как A/B-тестирование, канареечные релизы или сине-зеленое развертывание. Обязательной частью этой фазы является наличие четкого плана отката на предыдущую версию в случае возникновения сбоев или неожиданной деградации производительности.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="6"&gt;
&lt;li&gt;&lt;b&gt;Мониторинг и поддержка (Monitoring &amp; Maintenance)&lt;/b&gt;  &lt;br /&gt;
После развертывания модели начинается фаза непрерывного мониторинга её производительности в реальных условиях. Это критически важно, так как модели машинного обучения могут терять свою эффективность со временем из-за дрейфа данных (concept drift или data drift). Мониторинг включает отслеживание метрик производительности модели, выявление аномалий и автоматическое переобучение при падении метрик или существенном изменении распределения входных данных. Также на этом этапе происходит сбор новых данных, которые могут быть использованы для последующего ретренинга моделей, замыкая цикл улучшения &lt;a href="https://www.mdpi.com/2076-3417/11/19/8861"&gt;mdpi.com&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Таблица 1: Сравнение CRISP-DM и CRISP-ML(Q)&lt;/h3&gt;
&lt;table cellpadding="0" cellspacing="0" border="0" class="e2-text-table"&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Аспект&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;CRISP-DM&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;CRISP-ML(Q)&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Фазы&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;6 этапов&lt;/td&gt;
&lt;td&gt;6 этапов + углубление в QA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Фокус&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Data Mining, анализ данных&lt;/td&gt;
&lt;td&gt;End-to-end ML-приложения, производство&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Мониторинг&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Не включен как отдельный этап&lt;/td&gt;
&lt;td&gt;Обязательная фаза №6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Воспроизводимость&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Частичная, не стандартизирована&lt;/td&gt;
&lt;td&gt;Документирование метаданных, версионирование&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Риск-менеджмент&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Не явно выражен&lt;/td&gt;
&lt;td&gt;Встроен в каждый этап, риск-ориентированный подход&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Обеспечение качества&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;В основном, оценка модели&lt;/td&gt;
&lt;td&gt;Системный QA на всех этапах жизненного цикла&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;h3&gt;Таблица 2: Детализация Задач по Фазам CRISP-ML(Q)&lt;/h3&gt;
&lt;table cellpadding="0" cellspacing="0" border="0" class="e2-text-table"&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Фаза&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;Задачи&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;1. Понимание Бизнеса и Данных&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;– Определение бизнес-целей проекта.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Перевод бизнес-целей в цели машинного обучения (ML-цели).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Выявление и сбор доступных данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Верификация и первичный анализ данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Оценка осуществимости проекта (техническая, ресурсная, экономическая).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Создание концепции/доказательства концепции (POC – Proof of Concept), если необходимо.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Определение нормативных и этических ограничений.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: right"&gt;&lt;b&gt;2. Инженерия Данных&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;– Отбор признаков (feature selection).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Отбор данных (data selection), создание выборок.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Балансировка классов (методы oversampling/undersampling).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Очистка данных (снижение шума, обработка пропущенных значений, удаление/коррекция выбросов).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Инженерия признаков (feature engineering), создание новых признаков.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Аугментация данных (data augmentation) для увеличения объема обучающих данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Стандартизация/нормализация данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Реализация &lt;b&gt;Data Unit Tests&lt;/b&gt; для контроля качества входных данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;3. Инженерия ML-модели&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;– Определение метрик качества модели (например, точность, F1-score, ROC AUC).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Выбор алгоритма машинного обучения (включая выбор базового/эталонного решения – baseline).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Добавление специфических знаний предметной области для специализации модели.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Обучение модели.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Опционально: применение трансферного обучения (Transfer Learning) с использованием предобученных моделей.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Опционально: сжатие модели (Model Compression) для оптимизации ресурсов.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Опционально: использование ансамблевого обучения (Ensemble Learning).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Тщательное документирование ML-модели и проведенных экспериментов (метаданные, гиперпараметры, версии).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;4. Оценка Качества ML-модели&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;– Валидация производительности модели на тестовых данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Определение робастности (устойчивости) модели к изменениям во входных данных.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Повышение объяснимости (Explainability) модели (например, с использованием SHAP, LIME).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Оценка справедливости (Fairness) модели для предотвращения смещений.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Принятие решения о развертывании модели (Deploy/No Deploy) на основе установленных порогов качества.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Документирование фазы оценки и принятых решений.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Проведение аудита модели.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;5. Развертывание Модели&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;– Оценка модели в производственных условиях (производительность, стабильность, потребление ресурсов).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Обеспечение приемлемости для пользователя и удобства использования системы.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Управление моделью (Model Governance): контроль версий, политики доступа.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Развертывание согласно выбранной стратегии (A/B-тестирование, многорукие бандиты, канареечные релизы, сине-зеленое развертывание).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Разработка плана отката (rollback plan) на случай проблем.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;6. Мониторинг и Поддержка Модели&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;– Мониторинг эффективности и результативности предсказаний модели в продакшене.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Сравнение данных производительности модели с ранее заданными критериями успеха и порогами (например, деградация метрик).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Выявление дрейфа данных (data drift) и концептуального дрейфа (concept drift).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Принятие решения о необходимости переобучения модели.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Сбор новых данных из продакшена.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Выполнение разметки новых точек данных для обновления обучающей выборки.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Повторение задач из фаз “Инженерия модели” и “Оценка модели” при переобучении.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;/td&gt;
&lt;td&gt;– Непрерывная интеграция (CI), непрерывное обучение (CT) и непрерывное развертывание (CD) модели в рамках MLOps пайплайна.&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;h3&gt;Принципы обеспечения качества (QA)&lt;/h3&gt;
&lt;p&gt;CRISP-ML(Q) интегрирует принципы обеспечения качества на каждом этапе цикла разработки ML:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Риск-ориентированный подход&lt;/b&gt;: Для каждой фазы идентифицируются потенциальные риски (например, смещение данных, переобучение, дрейф модели), и разрабатываются методы их минимизации. Примеры включают использование кросс-валидации, объяснимых моделей (таких как SHAP для интерпретации предсказаний) и тщательное логирование экспериментов.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Документирование&lt;/b&gt;: Поддерживается строгая документация требований, версий данных, используемых метрик оценки и любых изменений в пайплайне. Инструменты типа Model Cards Toolkit могут использоваться для создания прозрачных отчетов о моделях.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Автоматизация пайплайнов&lt;/b&gt;: Для обеспечения воспроизводимости и эффективности процессов активно используются автоматизированные конвейеры (data pipelines, ML pipelines).&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-194.png-1.jpg" width="2560" height="1919" alt="" /&gt;
&lt;div class="e2-text-caption"&gt;pic. Этапы оценки рисков&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;MLOps: Концепция, Инструменты и Сравнение с Apache Airflow&lt;/h3&gt;
&lt;p&gt;MLOps — это, по сути, &lt;b&gt;инженерная дисциплина&lt;/b&gt;, сосредоточенная на автоматизации и масштабировании жизненного цикла ML-систем, включая CI/CD (непрерывная интеграция/непрерывная поставка) для моделей, автоматизированное тестирование и мониторинг в продакшене &lt;a href="https://www.mdpi.com/2076-3417/11/19/8861"&gt;mdpi.com&lt;/a&gt;.&lt;br /&gt;
CRISP-ML(Q), напротив, является &lt;b&gt;процессной моделью&lt;/b&gt;, которая задает последовательность шагов и необходимых активностей для успешного выполнения ML-проекта.&lt;/p&gt;
&lt;p&gt;Таким образом, они дополняют друг друга:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CRISP-ML(Q) определяет &lt;b&gt;“что делать”&lt;/b&gt; и “когда делать” на каждом этапе жизненного цикла ML-проекта, фокусируясь на методологии и целях.&lt;/li&gt;
&lt;li&gt;MLOps предоставляет &lt;b&gt;инструменты и практики&lt;/b&gt; для реализации этих “что делать”, отвечая на вопрос “как делать”.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Apache SeaTunnel и Apache DolphinScheduler в контексте MLOps&lt;/h4&gt;
&lt;p&gt;На этапе &lt;b&gt;инженерии данных&lt;/b&gt; и &lt;b&gt;мониторинга&lt;/b&gt; в рамках MLOps-пайплайна часто требуются мощные инструменты для интеграции, обработки и оркестрации данных. Здесь на помощь приходят такие открытые фреймворки и платформы, как &lt;b&gt;Apache SeaTunnel&lt;/b&gt; и &lt;b&gt;Apache DolphinScheduler&lt;/b&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Apache SeaTunnel&lt;/b&gt;: Этот фреймворк является высокопроизводительным, распределенным решением для интеграции и синхронизации больших объемов данных &lt;a href="https://news.apache.org/foundation/entry/asf-project-spotlight-apache-seatunnel"&gt;news.apache.org&lt;/a&gt;. Он позволяет быстро и эффективно перемещать данные между различными источниками (например, базы данных, облачные хранилища, Kafka) и потребителями данных.  &lt;br /&gt;
&gt; В контексте MLOps, SeaTunnel играет ключевую роль в:  &lt;br /&gt;
&gt; –   &lt;b&gt;Подготовке данных&lt;/b&gt;: Автоматизация сбора, очистки и трансформации данных для обучения и переобучения моделей. Это включает потоковую ETL/ELT обработку, что обеспечивает актуальность и качество обучающих данных.  &lt;br /&gt;
&gt; –   &lt;b&gt;Получении данных для мониторинга&lt;/b&gt;: Сбор метрик производительности модели и данных о её входящих запросах из различных систем для последующего анализа дрейфа данных или деградации производительности.  &lt;br /&gt;
&gt; –   &lt;b&gt;Интеграции с ML-платформами&lt;/b&gt;: SeaTunnel может выступать в качестве универсального коннектора для передачи данных в хранилища признаков (feature stores) или напрямую в тренировочные пайплайны.  &lt;br /&gt;
&gt; Фактически, SeaTunnel унифицирует процесс синхронизации и интеграции данных, поддерживая разнообразные источники и цели, необходимые для обработки больших объёмов данных в ML-системах. &lt;a href="https://blog.devgenius.io/the-evolution-of-apache-seatunnels-technical-architecture-and-its-applications-in-the-ai-field-24706d6e66e8"&gt;blog.devgenius.io&lt;/a&gt;. Например, его можно использовать для эффективного сбора данных для поиска сходства между книгами с помощью больших языковых моделей &lt;a href="https://apacheseatunnel.medium.com/breakthrough-in-the-book-search-field-c7d4ef927c69"&gt;apacheseatunnel.medium.com&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Apache DolphinScheduler&lt;/b&gt;: Это распределенная платформа для оркестрации рабочих процессов (workflow orchestration) с возможностью визуализации и мониторинга &lt;a href="https://gavrilov.info/all/dolphinscheduler-and-seatunnel-vs-airflow-and-nifi"&gt;dolphinscheduler and seatunnel vs airflow and nifi&lt;/a&gt;. Если Apache SeaTunnel занимается *движением данных*, то DolphinScheduler отвечает за *управление последовательностью задач*.  &lt;br /&gt;
&gt; В MLOps DolphinScheduler может использоваться для:  &lt;br /&gt;
&gt; –   &lt;b&gt;Оркестрации ML-пайплайнов&lt;/b&gt;: Автоматизация запуска задач по подготовке данных (с помощью SeaTunnel), обучению моделей, их оценке, развертыванию и мониторингу. Он позволяет определять зависимости между задачами, управлять их выполнением по расписанию или по событию, а также обрабатывать ошибки.  &lt;br /&gt;
&gt; –   &lt;b&gt;Управление ресурсами&lt;/b&gt;: Эффективное распределение вычислительных ресурсов для различных этапов ML-рабочих процессов.  &lt;br /&gt;
&gt; –   &lt;b&gt;Мониторинг рабочих процессов&lt;/b&gt;: Предоставление наглядных дашбордов для отслеживания статуса пайплайнов, выявления узких мест и оперативного реагирования на сбои. &lt;a href="https://blog.devgenius.io/workflow-as-code-sagemaker-new-gameplay-with-dolphinschedulers-machine-learning-stock-selection-ad0422e8aae5"&gt;blog.devgenius.io&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;SeaTunnel и DolphinScheduler против Apache Airflow&lt;/h4&gt;
&lt;p&gt;Обычно для оркестрации рабочих процессов в MLOps применяется &lt;b&gt;Apache Airflow&lt;/b&gt;. Однако, в определенных сценариях, комбинация &lt;b&gt;Apache DolphinScheduler и Apache SeaTunnel&lt;/b&gt; может предложить преимущества:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Apache Airflow&lt;/b&gt;: Широко используется для создания, планирования и мониторинга программно определенных рабочих процессов (DAGs – Directed Acyclic Graphs) &lt;a href="https://risingwave.com/blog/which-one-wins-apache-airflow-or-spark-showdown/"&gt;risingwave.com&lt;/a&gt;. Он обладает высокой гибкостью и огромным комьюнити.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Преимущества DolphinScheduler + SeaTunnel в MLOps&lt;/b&gt;:
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;Специализация&lt;/b&gt;: SeaTunnel &lt;b&gt;специализируется на высокопроизводительной передаче данных&lt;/b&gt;, что делает его более эффективным для задач, связанных с перемещением и синхронизацией больших объемов данных, часто возникающих в ML. Airflow, с другой стороны, является более общим оркестратором.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Визуализация и удобство&lt;/b&gt;: DolphinScheduler часто отмечается за его более интуитивный графический интерфейс и drag-and-drop функциональность, что может упростить создание и управление ML-пайплайнами для пользователей с меньшим опытом программирования, чем в Airflow, который требует написания кода на Python для DAGs. &lt;a href="https://dev.to/seatunnel/dolphinscheduler-and-seatunnel-vs-airflow-and-nifi-2jg0"&gt;dev.to&lt;/a&gt;. DolphinScheduler поддерживает модель “Workflow as Code”, но дополняется более удобной визуализацией.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Распределенная архитектура&lt;/b&gt;: DolphinScheduler изначально разрабатывался как распределенная система, что может быть преимуществом для очень больших и сложных рабочих процессов, эффективно распределяя нагрузку.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Комплексное решение для данных&lt;/b&gt;: Сочетание DolphinScheduler с SeaTunnel предоставляет более цельное решение для управления &lt;b&gt;как потоками данных, так и рабочими процессами&lt;/b&gt;, тогда как Airflow требует интеграции с отдельными инструментами для обработки данных.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;В итоге, выбор между Airflow и связкой DolphinScheduler + SeaTunnel зависит от конкретных потребностей проекта, в частности от объема и сложности задач по интеграции данных, а также от предпочтений команды в отношении визуализации и кодирования пайплайнов.&lt;/p&gt;
&lt;h4&gt;Примеры MLOps-платформ: Databricks и ZenML&lt;/h4&gt;
&lt;p&gt;На рынке существуют как открытые, так и коммерческие MLOps-платформы, которые объединяют различные инструменты для реализации полного цикла ML-разработки:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Databricks&lt;/b&gt;: Эта компания является одним из лидеров в области озер данных (Data Lakehouse) и MLOps. Их платформа предоставляет интегрированную среду для полной цепочки MLOps: от подготовки данных с использованием Apache Spark (ядра платформы Databricks &lt;a href="https://risingwave.com/blog/which-one-wins-apache-airflow-or-spark-showdown/"&gt;risingwave.com&lt;/a&gt;), обучения моделей, управления экспериментами (MLflow, разработанный Databricks) до развертывания и мониторинга. “The big book of MLOps от Databricks” — это всеобъемлющее руководство, которое детализирует их подход к построению MLOps-систем, подчеркивая важность воспроизводимости, автоматизации и совместной работы.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ZenML&lt;/b&gt;: Это Extensible MLOps фреймворк, ориентированный на Developer Experience. ZenML позволяет создавать портативные, воспроизводимые и масштабируемые MLOps-пайплайны, абстрагируя пользователей от сложности базовой инфраструктуры. Он поддерживает множество интеграций с другими популярными ML-библиотеками и платформами (например, TensorFlow Extended, PyTorch, Kubeflow, MLflow), позволяя командам выбирать лучшие инструменты для своих задач, сохраняя при этом единую MLOps-структуру. ZenML фокусируется на “workflow-as-code” и модульности, что делает его гибким решением для различных MLOps-сценариев.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Из россияйских есть Neoflex Dognauts она обеспечивает полный цикл разработки и эксплуатации&lt;br /&gt;
ML-моделей для решения задач бизнеса. Это единая платформа корпоративного MLOps позволяет управлять всем жизненным циклом DS/ML от постановки бизнес-задач до управления внедренными моделями &lt;a href="https://neoflex.dognauts.ru/#about"&gt;Neoflex Dognauts&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Коммерческая реализация WhaleOps&lt;/h4&gt;
&lt;p&gt;На рынке существуют и коммерческие реализации платформ, основанные на технологиях Apache и тесно интегрированные с принципами CRISP-ML(Q) и MLOps. Одним из ярких примеров является компания &lt;b&gt;WhaleOps Technology&lt;/b&gt;. &lt;a href="https://www.linkedin.com/company/whaleops"&gt;linkedin.com&lt;/a&gt; Основанная в августе 2021 года ключевыми участниками проектов Apache DolphinScheduler и Apache SeaTunnel, WhaleOps специализируется на создании решений для DataOps и MLOps. &lt;a href="https://github.com/WhaleOps"&gt;github.com&lt;/a&gt; Платформа WhaleOps предлагает комплексный набор инструментов, который помогает компаниям внедрять и управлять ML-моделями в продакшене, используя открытые стандарты и обеспечивая высокий уровень автоматизации и контроля качества на всех этапах жизненного цикла модели. &lt;a href="https://cn.linkedin.com/company/whaleops"&gt;cn.linkedin.com&lt;/a&gt; Такая интеграция open-source фреймворков и коммерческих платформ позволяет организациям строить масштабируемые и надежные ML-системы, полностью соответствующие лучшим практикам, описанным в CRISP-ML(Q).&lt;/p&gt;
&lt;h3&gt;Практические кейсы применения&lt;/h3&gt;
&lt;p&gt;CRISP-ML(Q) применяется в различных отраслях для создания надежных и управляемых ML-решений:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Предиктивное обслуживание в Mercedes-Benz&lt;/b&gt;: Использование CRISP-ML(Q) для прогнозирования поломок автомобилей. На фазе мониторинга был выявлен дрейф данных, вызванный изменением условий эксплуатации, что потребовало своевременного переобучения моделей для поддержания их точности.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Кредитный скоринг в банках&lt;/b&gt;: На фазе оценки качества (QA) методики CRISP-ML(Q) помогли обнаружить смещение модели против клиентов старше 60 лет. Это позволило скорректировать модель перед её развертыванием, обеспечив справедливость и соответствие этическим нормам.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Критика и ограничения&lt;/h3&gt;
&lt;p&gt;Несмотря на свои преимущества, CRISP-ML(Q) имеет и некоторые ограничения:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Сложность внедрения&lt;/b&gt;: Для небольших проектов или стартапов, возможно, будет избыточным следование всем детальным процедурам CRISP-ML(Q) из-за требований к документации и ресурсам.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Нехватка инструментов&lt;/b&gt;: Хотя MLOps предоставляет множество инструментов, некоторые аспекты QA, такие как автоматизированная проверка этики или полностью автоматизированное управление дрейфом данных, все еще требуют активного участия человека и не всегда полностью автоматизированы.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Заключение&lt;/h3&gt;
&lt;p&gt;CRISP-ML(Q) — это наиболее полная и зрелая методология для управления промышленными ML-проектами. Она успешно закрывает пробелы CRISP-DM за счет:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;&lt;b&gt;Системного обеспечения качества (QA)&lt;/b&gt; на всех этапах жизненного цикла.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Эффективного эксплуатационного мониторинга&lt;/b&gt; развернутых моделей.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Пристального внимания к воспроизводимости&lt;/b&gt; всех экспериментов и моделей.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Для достижения максимального успеха в ML-проектах рекомендуется комбинировать методологические рамки CRISP-ML(Q) с инженерными практиками MLOps. Интеграция мощных open-source фреймворков, таких как Apache SeaTunnel и Apache DolphinScheduler, а также использование комплексных MLOps-платформ, как Databricks или ZenML, и коммерческих решений вроде WhaleOps, позволяет автоматизировать и масштабировать эти процессы. Дальнейшее развитие методологии, вероятно, будет направлено на стандартизацию этических аудитов и дальнейшую автоматизацию процессов обработки дрейфа данных, делая ML-системы ещё более надёжными и управляемыми.&lt;/p&gt;
&lt;h3&gt;Источники&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Оригинальная статья CRISP-DM: &lt;a href="https://medium.com/voice-tech-podcast/cross-industry-standard-process-for-data-mining-crisp-dm-9edc0c5e3a1"&gt;https://medium.com/voice-tech-podcast/cross-industry-standard-process-for-data-mining-crisp-dm-9edc0c5e3a1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CRISP-DM и его популярность: &lt;a href="https://www.datascience-pm.com/crisp-dm-still-most-popular/"&gt;https://www.datascience-pm.com/crisp-dm-still-most-popular/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CRISP-ML(Q) и MLOps: &lt;a href="https://www.mdpi.com/2076-3417/11/19/8861"&gt;https://www.mdpi.com/2076-3417/11/19/8861&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Руководство по выбору алгоритма: &lt;a href="https://www.kdnuggets.com/2020/05/guide-choose-right-machine-learning-algorithm.html"&gt;https://www.kdnuggets.com/2020/05/guide-choose-right-machine-learning-algorithm.html&lt;/a&gt;&lt;br /&gt;
&lt;i&gt;image-194.png.jpg&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Подробное описание CRISP-ML(Q) на Medium: &lt;a href="https://medium.com/@desmondonam/understanding-the-crisp-ml-q-1e8c5bbfb8cb"&gt;https://medium.com/@desmondonam/understanding-the-crisp-ml-q-1e8c5bbfb8cb&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Apache SeaTunnel (официальный проект): &lt;a href="https://news.apache.org/foundation/entry/asf-project-spotlight-apache-seatunnel"&gt;news.apache.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;SeaTunnel – эволюция архитектуры: &lt;a href="https://blog.devgenius.io/the-evolution-of-apache-seatunnels-technical-architecture-and-its-applications-in-the-ai-field-24706d6e66e8"&gt;blog.devgenius.io&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;SeaTunnel для поиска (пример): &lt;a href="https://apacheseatunnel.medium.com/breakthrough-in-the-book-search-field-c7d4ef927c69"&gt;apacheseatunnel.medium.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;DolphinScheduler и SeaTunnel vs Airflow и NiFi: &lt;a href="https://dev.to/seatunnel/dolphinscheduler-and-seatunnel-vs-airflow-and-nifi-2jg0"&gt;dev.to&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;DolphinScheduler – Workflow as Code + SageMaker: &lt;a href="https://blog.devgenius.io/workflow-as-code-sagemaker-new-gameplay-with-dolphinschedulers-machine-learning-stock-selection-ad0422e8aae5"&gt;blog.devgenius.io&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Apache Airflow vs Spark: &lt;a href="https://risingwave.com/blog/which-one-wins-apache-airflow-or-spark-showdown/"&gt;risingwave.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;WhaleOps Technology (LinkedIn): &lt;a href="https://www.linkedin.com/company/whaleops"&gt;linkedin.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;WhaleOps Technology (GitHub): &lt;a href="https://github.com/WhaleOps"&gt;github.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;WhaleOps Technology (LinkedIn CN): &lt;a href="https://cn.linkedin.com/company/whaleops"&gt;cn.linkedin.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Databricks: (“The big book of MLOps от Databricks” – ссылка на книгу, если доступна, или на соответствующий раздел сайта Databricks. Например: &lt;a href="https://www.databricks.com/solutions/accelerators/mlops"&gt;databricks.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;ZenML: &lt;a href="https://zenml.io/"&gt;zenml.io/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>


</channel>
</rss>