Utilizzando la libreria Lazy Predict possiamo confrontare facilmente gli algoritmi di classificazione e regressione con le migliori prestazioni. Questa libreria è stata creata da "Shankar Rao Pandala" ed ecco il link alla documentazione.
Useremo il set di dati sul cancro al seno per confrontare gli algoritmi di classificazione e il set di dati sull'alloggiamento di Boston per confrontare gli algoritmi di regressione con poche righe di codice per ogni attività che utilizza questa libreria.
Installazione della libreria:
! pip installa lazypredict
Usa il comando precedente per installare la libreria lazypredict
Importazione delle librerie necessarie e dei dati sul cancro al seno:
# Importa librerie
importa lazypredict
da lazypredict. Importazione supervisionato LazyClassifier
da sklearn.datasets importa load_breast_cancer
da sklearn.model_selection import train_test_split
# Carica dataset
data = load_breast_cancer ()
X = data.data
y = data.target
Ora suddivideremo i dati in un rapporto 80/20:
#
Divisione dei dati X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = .2, random_state = 100)
Assegnazione di lazyclassifier:
# Definisce e
compila 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)
models_test, predictions_test = clf.fit, X_test (X_test y_train, y_test)
Addestrare le prestazioni dei dati:
# Stampa le prestazioni del modello sul set di addestramento
models_train
Test delle prestazioni dei dati:
# Stampa le prestazioni del modello sul set di dati di test
models_test
Dalle immagini sopra possiamo capire come vengono costruiti i vari algoritmi di classificazione (circa 28 modelli) e possiamo confrontare le loro accuratezze, i punteggi ROC AUC e F1 insieme al tempo impiegato per costruire.
Creiamo un grafico a barre per confrontare questi modelli utilizzando le librerie seaborn e matplot.
importa matplotlib.pyplot come plt
importa seaborn come sns
plt.figure (figsize = (5, 10))
sns.set_theme (style = "whitegrid")
ax = sns.barplot (y = models_train.index, x = "Accuracy", data = models_train)
Dal barplot sopra possiamo decidere quale algoritmo si adatta meglio alla nostra dichiarazione del problema e modificarlo ulteriormente per ottenere prestazioni migliori.
# Caricamento del set di dati sull'alloggiamento di Boston
boston = datasets.load_boston ()
X, y = shuffle (boston.data, boston.target, random_state = 42)
Ora suddivideremo i dati in un rapporto 80/20:
# Data split
X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = .2, random_state = 42)
Assegnazione di lazyregressor:
# Definisce e compila il lazyclassifier
reg = LazyRegressor (verbose = 0, ignore_warnings = False, custom_metric = None)
models_train, predictions_train = reg.fit (X_train, X_train, y_train, y_train)
models_test, predictions_test = reg.fit, X_test y_train, y_test)
Addestrare le prestazioni dei dati:
# Stampa le prestazioni del modello sul set di dati di addestramento
models_train
Test delle prestazioni dei dati:
# Stampa le prestazioni del modello sul set di dati di test
models_test
Dalle immagini sopra possiamo capire come vengono costruiti i vari algoritmi di regressione (circa 36 modelli) e possiamo confrontare i loro valori R-quadrato, RMSE e il tempo impiegato per costruire.
Creiamo un grafico a barre per confrontare questi modelli utilizzando le librerie seaborn e matplot.
importa matplotlib.pyplot come plt
importa seaborn come sns
models_train ["R-Squared"] = [0 if i <0 else i for i in models_train.iloc [:, 0]]
plt.figure (figsize = (5, 10))
sns.set_theme (style = "whitegrid")
ax = sns.barplot (y = models_train.index, x = "R-Squared", data = models_train)
ax.set ( xlim = (0, 1))
Questo è un modo semplice per creare diversi modelli di machine learning utilizzando solo poche righe di codice. Se proviamo a costruire manualmente questi modelli ML individualmente, ci vorrebbe molto tempo per importare le rispettive librerie, costruirle individualmente e aggregare i loro risultati di previsione. Dal barplot di cui sopra possiamo trarre una conclusione su quale algoritmo sta funzionando bene e decidere di modificarlo ulteriormente per prestazioni migliori.
Nota :
La libreria LazyPredict ci consente di costruire i modelli con i loro parametri predefiniti. Non possiamo ottimizzare i parametri ma costruirà questi modelli con i loro parametri predefiniti, il che è ancora buono poiché siamo stati in grado di costruirli rapidamente e una volta identificato quale modello è il migliore, possiamo concentrare i nostri sforzi sull'ottimizzazione degli iperparametri per quel ML algoritmo.
Allora, cosa ne pensate? Mi interesserà conoscere i tuoi pensieri al riguardo. Spero di averti dato una breve idea su come creare rapidamente modelli ML utilizzando solo poche righe di codice. Dagli un 💚, se ti piace questo post per una motivazione extra. Sono sempre aperto ai tuoi suggerimenti e domande.
Scritto da Shashata Sawmya e Harveer Singh Con l'avvento delle grandi reti neurali e i sempre crescenti progressi tecnologici che spingono i metodi attuali al loro limite assoluto, l'attenzione si è concentrata sulla creazione di uno strumento universale che mira a fare tutto. Tuttavia, la maggior parte delle attività non richiederebbe le reti profonde incredibilmente intense, ma comunque qualcosa di più versatile dei modelli matematici di base.
Devi aver sentito parlare di tutti i nuovi potenti plug-in ChatGPT come Browser, Code Interpreter ecc. Ma c'è un problema, l'accesso ai plug-in è limitato a una lista di attesa e quindi molti non hanno accesso ad essa.
Spesso ci troviamo a lottare per implementare ciò che sappiamo essere buono per noi. Dal dire a un altro significativo che li amiamo al ricordare di parlare come un pirata, ci saranno sempre quelli che affermeranno che un giorno, una settimana o un mese di eventi non è necessario perché stanno già facendo quelle cose.
“Mi proteggerà quando sarò in pericolo. mi nasconderà nella sua tenda.
Quando cresci tendi a sentirti dire che il mondo è così com'è e che la tua vita è vivere la tua vita dentro il mondo, senza mai rischiare la vita, basta seguire un percorso prestabilito e morire alla fine, e cercare di non farlo sfondare troppo i muri. Ma questa è una vita molto limitata.