Вы ищете способ построить модель машинного обучения (ML) без написания большого количества кода? Если у вас нет кода или мало кода, библиотека PyCaret может упростить вам создание моделей ML, как профессионалу.

В конце этой статьи вы:

  • Поймите знания PyCaret.
  • Понимание рабочего процесса машинного обучения.
  • Создайте модель классификации рака молочной железы с помощью PyCaret.

Что такое Пикарет?

PyCaret — это библиотека Python для машинного обучения с низким кодом. PyCaret устраняет необходимость обширной обработки ML для создания модели. Вы можете выполнять задачи, на которые обычно уходят часы, за считанные минуты. Это удивительно, правда?

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

Предпосылки

Модель классификации рака молочной железы с PyCaret

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

Набор данных можно найти по этой ссылке Kaggle.

  1. Загрузите PyCaret. Чтобы использовать библиотеку PyCaret ML, вы можете установить ее в свой блокнот Jupyter или Colab. Это позволит вам получить доступ и использовать функции и функции библиотеки в этих средах.

Эта строка кода устанавливает несколько библиотек Python, необходимых для использования PyCaret.

2. Импортируйте необходимые библиотеки. Для этого проекта вам понадобятся две библиотеки Python: Pandas и PyCaret. Pandas уже установлен на вашем ноутбуке Google Colab или Jupyter, поэтому вам нужно только установить PyCaret.

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

Вывод, полученный из этого кода, показан ниже.

Целевой переменной является столбец «диагноз», который показывает, является ли рак злокачественным (М) или доброкачественным (В). Это категориальная переменная, которую можно предварительно обработать с помощью PyCaret. Остальные переменные являются числовыми и будут использоваться для прогнозирования целевой переменной.

Следуйте приведенному выше руководству, чтобы узнать, как импортировать наборы данных Kaggle в Google Colab за 3 простых шага.



4. Предварительная обработка данных. В этой статье не рассматривается предварительная обработка данных. Однако важно отметить, что модели машинного обучения могут понимать только числовые данные. Поэтому нам нужно будет использовать библиотеку Scikit-learn для преобразования столбца «диагноз», который содержит категориальные данные «M» и «B», в числовые значения 1 и 0 соответственно.

5. Настройка среды PyCaret. Чтобы использовать встроенные функции PyCaret, необходимо сначала настроить среду PyCaret. Если вы используете Colab, вам нужно будет запустить эти строки кода, чтобы включить Google Colab. Если вы этого не сделаете, вы можете столкнуться с сообщениями об ошибках

При настройке среды PyCaret необходимо учитывать три важных момента:

  1. Данные: набор данных (df) должен быть сопоставлен с переменной «данные». Обратите внимание, что «df» — это просто имя переменной, которое я выбрал для своего набора данных. Вы можете использовать любое имя переменной, которое вы предпочитаете.
  2. Цель: задайте столбец целевой переменной с помощью параметра target.
  3. Идентификатор сеанса: помогает обеспечить воспроизводимость кода.

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

Вот краткий обзор вывода кода, чтобы помочь с пониманием:

  • Target Type: указывает тип выполняемой классификации. В этом случае мы классифицируем рак молочной железы как злокачественный или доброкачественный, поэтому это бинарная классификация.
  • Исходные данные: показывает количество строк и столбцов в наборе данных. Набор данных в этом примере содержит 569 строк и 32 столбца, включая целевую переменную.
  • Преобразованный набор поездов и преобразованный набор тестов: по умолчанию исходный набор данных разделен на соотношение 67:33. Здесь 30 столбцов вместо 31, потому что столбец «id» был удален, так как он бесполезен для прогнозирования.
  • Отсутствующее значение: в выходных данных указано «ложь», что означает, что в наборе данных нет пропущенных значений.

Существует дополнительная информация, которую можно получить, запустив эту операцию в блокноте Jupyter или Google Colab.

6. Выберите лучшую модель: это очень простая задача, на выполнение которой в Google Colab ушло всего 20 секунд. Код отсортировал и распечатал более 15 моделей от самой высокой до самой низкой, используя параметр «sort» для метрики оценки f1-score. Вы можете попробовать попрактиковаться с другими показателями оценки, такими как точность и полнота.

7. Создайте модель классификатора. Функцию create_model можно использовать для создания любой модели классификатора, используя любые сокращения, перечисленные на изображении выше.

8. Настройка гиперпараметров. Настройка гиперпараметров — это эффективный рабочий процесс машинного обучения, направленный на оптимизацию вашей модели машинного обучения. «Функция «tune_model» используется для оптимизации гиперпараметров модели с помощью процесса, называемого настройкой гиперпараметров.

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

PyCaret позволяет легко визуализировать важность функций вашей модели с помощью графика.

10. Оценка модели. Используя PyCaret, вы можете легко оценить свою модель, написав всего одну строку кода. В этом примере были выполнены две оценки модели с использованием кривой ROC-AUC и матрицы путаницы.

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

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

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

После запуска этой строки кода ваша обученная модель будет сохранена в файле pickle (pkl).

Рад, что ты зашел так далеко

Заключение

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

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



Увидимся позже. А сейчас до свидания! Не забывайте хлопать в ладоши и делать необходимые комментарии для обратной связи.