Если ваш набор данных готов, вы можете начать использовать 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.