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

Что такое ленивый прогноз?

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

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

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

Как использовать LazyPredict?

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

Реализация LazyPredict

Прежде чем перейти к реализации LazyPredict, полезно знать несколько полезных ссылок;

LazyPredict Документы: https://lazypredict.readthedocs.io/en/latest/index.html

LazyPredict Github: https://github.com/shankarpandala/lazypredict

LazyPredict PyPI: https://pypi.org/project/lazypredict/

LazyPredict Conda: https://anaconda.org/conda-forge/lazypredict

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

Классификация

# Import Libraries
import lazypredict
from lazypredict.Supervised import LazyClassifier
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split

# Load Dataset
data = load_breast_cancer()
X = data.data
y= data.target

# Train/Test Split
X_train, X_test, y_train, y_test = train_test_split(X, y,test_size=.2,random_state =42)

# Apply LazyClassifier
clf = LazyClassifier(verbose=0,ignore_warnings=True, custom_metric=None)
models_train,predictions_train = clf.fit(X_train, X_train, y_train, y_train)

# Uncomment for test data 
#models_test,predictions_test = clf.fit(X_train, X_test, y_train, y_test)

# Prints the model performance
models_train

Регрессия

# Import libraries
from lazypredict.Supervised import LazyRegressor
from sklearn import datasets
from sklearn.utils import shuffle
import numpy as np
import pandas as pd

# Load dataset

data_url = "http://lib.stat.cmu.edu/datasets/boston"
raw_df = pd.read_csv(data_url, sep="\s+", skiprows=22, header=None)
data = np.hstack([raw_df.values[::2, :], raw_df.values[1::2, :2]])
target = raw_df.values[1::2, 2]


# Data split
X_train, X_test, y_train, y_test = train_test_split(data, target,test_size=.2,random_state =42)

# Defines and builds the LazyRegressor
reg = LazyRegressor(verbose=0,ignore_warnings=False, custom_metric=None)
models_train,predictions_train = reg.fit(X_train, X_train, y_train, y_train)

# Uncomment for test data
#models_test,predictions_test = reg.fit(X_train, X_test, y_train, y_test)

# Prints the model performance
models_train

Красивый образ для моделей

import matplotlib.pyplot as plt
import seaborn as sns

# depends on classification/regression models and metrics
model=models_train
metric="Accuracy"

plt.figure(figsize=(10, 5))
sns.set_theme(style="whitegrid")
ax = sns.barplot(x=model.index, y=metric, data=model)
plt.xticks(rotation=90)
plt.show()

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