Эта статья была написана Neetika Khandelwal и опубликована в блоге Neptune.

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

  1. Интерактивные инструменты веб-приложений
  2. Инструменты анализа данных
  3. Инструменты объяснимости модели
  4. Инструменты отладки модели
  5. Инструменты отладки производительности модели
  6. Инструменты отслеживания экспериментов
  7. Инструменты мониторинга производства

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

1. Интерактивные инструменты веб-приложений

Стримлит

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

Всего за несколько минут вы сможете создать и развернуть красивые и мощные приложения для работы с данными.

Чтобы использовать Streamlit, вам просто нужно установить его с помощью pip с помощью команды:

pip install streamlit

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

Ознакомьтесь с документацией Streamlit, чтобы узнать, как именно это работает.

Фляжка

Один из самых популярных и легких фреймворков Python для создания веб-приложений. Вы можете использовать его для разработки веб-API для вашей модели. Он основан на наборе инструментов Werkzeug WSGI и механизме шаблонов Jinja2.

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

Чтобы начать использовать Flask, настройте виртуальную среду и установите ее с помощью команды:

pip install flask

Для получения подробной информации ознакомьтесь с документацией Flask.

Блестящий

Shiny — это пакет R для создания интерактивных веб-приложений. Если вы уже знаете язык R, вам будет очень легко создать приложение и поделиться своей работой. Он имеет действительно интерактивный и интуитивно понятный дизайн.

Вы можете размещать автономные приложения на веб-странице, встраивать их в документы R Markdown или создавать панели инструментов. Вы также можете расширить свои приложения Shiny с помощью тем CSS, htmlwidgets и действий JavaScript.

Чтобы начать использовать Shiny, используйте команду:

install.packages("shiny")

Для получения подробной информации о Shiny ознакомьтесь с их официальным руководством.

2. Инструменты анализа данных

ДАБЛ

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

Это новая библиотека Python, поэтому ее функции ограничены, но она очень многообещающая.

Чтобы начать использовать DABL, используйте команду:

pip install dabl

Для получения дополнительной информации о DABL ознакомьтесь с этой статьей.

НОЖ

Инструмент анализа данных с открытым исходным кодом для создания приложений для обработки данных и построения моделей машинного обучения.

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

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

Чтобы начать работу с KNIME, посетите документацию.

РапидМайнер

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

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

Чтобы начать работу с RapidMiner, перейдите по этой ссылке.

САС

SAS расшифровывается как система статистического анализа и используется для анализа статистических данных. Это помогает вам выполнять анализ данных с использованием SAS SQL и автоматической генерации кода. Вы можете легко интегрировать его с инструментами MS, такими как Excel.

SAS позволяет создавать интерактивные информационные панели и отчеты для лучшего понимания сложных данных.

Чтобы начать работу с SAS, ознакомьтесь с этим руководством.

3. Инструменты объяснимости модели

Эли5

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

  • XGBoost — объясняет прогнозы XGBClassifier, XGBRegressor, а также помогает проверить важность функций.
  • CatBoost — объясняет прогнозы CatBoostClassifier, CatBoostRegressor, а также помогает проверить важность функций.
  • Scikit-learn — объясняет веса и прогнозы линейных классификаторов и регрессоров scikit-learn, а также помогает проверить важность признаков деревьев решений.

Чтобы узнать больше об Eli5, ознакомьтесь с документацией.

ШАП

Это сокращение от Shapley Additive exPlanations. Он основан на ценностях Шепли. Значения SHAP показывают влияние каждой функции путем разбивки прогнозов, что может привести к пониманию модели.

Некоторые приложения значений SHAP:

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

Чтобы узнать больше о SHAP, ознакомьтесь с этим руководством.

Далекс

Это означает описательные объяснения машинного обучения. Это пакет R, созданный в основном для интерпретируемости моделей.

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

Dalex позволяет сравнивать производительность нескольких моделей. Есть несколько преимуществ использования Dalex:

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

Чтобы узнать больше о Dalex, посетите официальную страницу GitHub.

СМОТРИ ТАКЖЕ
Интеграция Neptune с Dalex

4. Инструменты отладки модели

Убер Манифолд

Визуальный инструмент отладки для машинного обучения, созданный командой Uber. Он был разработан, чтобы сделать процесс итерации модели более информативным и действенным.

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

Manifold обслуживает большинство моделей машинного обучения, включая большинство моделей классификации и регрессии.

Чтобы узнать больше об Uber Manifold, посетите официальную страницу.

5. Инструменты отладки производительности модели

MLPerf

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

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

Чтобы узнать больше о MLPerf, ознакомьтесь с этой вводной статьей.

6. Инструменты отслеживания экспериментов

"Нептун"

Легкий и мощный инструмент отслеживания экспериментов для специалистов по данным. Он легко интегрируется в ваш рабочий процесс и предлагает широкий спектр функций отслеживания.

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

Он также позволяет хранить, извлекать и анализировать большие объемы данных.

Чтобы узнать больше о Нептуне, посетите веб-сайт.

WandB

Это расшифровывается как Weights and Biases. Это пакет Python, который позволяет отслеживать обучение модели в режиме реального времени. Он легко интегрируется с популярными фреймворками, такими как Pytorch, Keras и Tensorflow.

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

Узнайте больше о WandB в этой вводной статье.

УЗНАТЬ БОЛЬШЕ
Посмотрите сравнение между WandB и Neptune.ai.

Комета

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

Чтобы узнать больше о Comet, ознакомьтесь с официальной документацией.

УЗНАТЬ БОЛЬШЕ
Посмотрите сравнение Comet and Neptune.ai.

Млфлоу

Платформа с открытым исходным кодом для отслеживания экспериментов по машинному обучению, а также для развертывания моделей. Каждый элемент представлен одним компонентом MLflow: отслеживание, проекты и модели.

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

MLflow был разработан для обеспечения масштабируемости от одного человека до большой организации, но лучше всего он работает для отдельного пользователя.

Чтобы узнать больше о MLflow, ознакомьтесь с официальной документацией.

УЗНАТЬ БОЛЬШЕ
– Узнайте, какой инструмент лучше: Neptune vs MLflow
– Узнайте о других инструментах в статье 15 лучших инструментов для отслеживания экспериментов с машинным обучением

7. Инструменты мониторинга производства

Кубфлоу

Kubeflow упрощает развертывание рабочих процессов машинного обучения. Он известен как набор инструментов машинного обучения для Kubernetes и направлен на использование потенциала Kubernetes для упрощения масштабирования моделей машинного обучения.

Команда Kubeflow постоянно совершенствует свои функции и делает все возможное, чтобы облегчить жизнь специалистам по данным. Kubeflow имеет некоторые возможности отслеживания, но они не являются основным направлением проекта. Его можно легко использовать с другими инструментами из этого списка в качестве дополнительного инструмента.

Чтобы узнать больше о Kubeflow, ознакомьтесь с официальной документацией.

УЗНАТЬ БОЛЬШЕ
Посмотрите сравнение между Kubeflow и Neptune.ai.

Вывод

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

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

Удачи!

Эта статья изначально была написана Нитика Ханделвал и размещена в блоге Neptune. Там вы можете найти более подробные статьи для специалистов по машинному обучению.