Un modello di intelligenza artificiale (AI), nonostante abbia attraversato un addestramento costante e rigoroso, potrebbe non funzionare come previsto. È importante osservare valutazioni rigorose e proceed per misurare la sua precisione e affidabilità nelle applicazioni del mondo reale. Valutare le metriche chiave come precisione, richiamo e punteggio F1 consente al modello AI di applicare correttamente i suoi modelli appresi su diversi set di dati. Senza una valutazione sufficiente, anche i modelli AI avanzati potrebbero non raggiungere il loro pieno potenziale.
L’efficacia di un modello AI viene valutata attraverso una combinazione di tecniche di misurazione, rappresentazione visiva e analisi dei guasti. Questi includono quanto segue:
-
Utilizzo di various serie di metriche di prestazione per la valutazione.
-
Tecniche di indagine specifiche per l’analisi dei risultati.
-
Impiegare strategie per migliorare le prestazioni del modello.
Perché l’analisi delle prestazioni è importante?
I sistemi di intelligenza artificiale devono dimostrare prestazioni eccezionali mentre si gestiscono in modo efficiente sia i dati di formazione che nuovi dati invisibili. Le scarse prestazioni possono portare a diversi problemi:
-
Memorizzazione: un modello che memorizza semplicemente i suoi dati di addestramento potrebbe non riconoscere gli enter del mondo reale durante la distribuzione.
-
Semplificazione eccessiva: quando i processi di modellazione, il Apprendimento automatico (ML) il sistema potrebbe diventare troppo semplice per identificare i modelli sottostanti nei dati.
-
Bias: durante il funzionamento, il sistema può mostrare la preferenza nei confronti di determinate classi, trascurando altre.
La valutazione delle prestazioni migliora i modelli di intelligenza artificiale garantendo risultati accurati e affidabili nelle applicazioni di intelligenza artificiale.
Metriche per le prestazioni chiave per i modelli AI
Le metriche delle prestazioni variano a seconda del tipo di modello utilizzato, che si tratti di classificazione, regressione o clustering.
Precisione
La percentuale di modelli correttamente classificati:
Precisione = Previsioni totali/previsioni corrette × 100
Esempio:
from sklearn.metrics import accuracy_score
y_true = (1, 0, 1, 1, 0, 1) # Precise labels
y_pred = (1, 0, 1, 0, 0, 1) # Predicted labels
accuracy = accuracy_score(y_true, y_pred)
print(f'Accuracy: {accuracy * 100:.2f}%')
Limitazioni:
La misurazione dell’accuratezza diventa falsa perché esistono set di dati sbilanciati. Un modello con alta precisione diventa inefficace quando prevede continuamente una particolare classe, che esiste nel 95% dei campioni.
Precisione, richiamo e punteggio f1
Particolari metriche di valutazione offrono informazioni utili quando i set di dati hanno distribuzioni di classe irregolari come la prevenzione delle frodi e i sistemi di diagnosi di salute.
-
Attraverso la metrica di precisione misuriamo le previsioni optimistic corrette tra tutti i casi proposti.
-
La metrica di richiamo rileva il numero di classificazioni reali optimistic che il tuo modello produce effettivamente.
-
La misurazione del punteggio F1 fornisce una media bilanciata tra i valori di precisione e di richiamo attraverso il calcolo armonico.
Rating F1 = 2× Precisione + Richiamo/ Precisione × Richiamo
Esempio:
from sklearn.metrics import precision_score, recall_score, f1_score
precision = precision_score(y_true, y_pred)
recall = recall_score(y_true, y_pred)
f1 = f1_score(y_true, y_pred)
print(f'Precision: {precision:.2f}, Recall: {recall:.2f}, F1-Rating: {f1:.2f}')
Metriche delle prestazioni per i modelli di regressione
I modelli di regressione producono previsioni di valori continui, che includono i prezzi delle abitazioni e i valori del mercato azionario. Le metriche comuni includono:
-
Errore assoluto medio (MAE): Calcola la media delle differenze di valore assoluto che esistono tra risultati effettivi e risultati di previsione.
-
Errore quadrato medio (MSE): Bandiere errori più grandi rispetto a MAE.
-
Il punteggio R² (coefficiente di determinazione): Funzioni per determinare la misura in cui il modello spiega le variazioni dei dati.
Esempio in Python:
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
y_true = (3, -0.5, 2, 7)
y_pred = (2.5, 0.0, 2, 8)
mae = mean_absolute_error(y_true, y_pred)
mse = mean_squared_error(y_true, y_pred)
r2 = r2_score(y_true, y_pred)
print(f'MAE: {mae:.2f}, MSE: {mse:.2f}, R² Rating: {r2:.2f}')
Tecniche di visualizzazione per le prestazioni del modello
Comprendere gli errori del modello è possibile attraverso la valutazione visiva, che migliora l’accuratezza della previsione.
Matrix di confusione (per modelli di classificazione)
IL Matrix di confusione Il metodo visualizza risultati precisi di previsioni corrette e errate per tutte le classi presenti in un sistema di classificazione dopo l’analisi della matrice.
La matrice di confusione opera come uno strumento vitale per valutare i modelli di intelligenza artificiale in particolare se utilizzato negli ambienti di apprendimento automatico e di apprendimento profondo. L’analisi consente sia i modelli di classificazione errata che l’identificazione e la valutazione effettiva del modello che porta a miglioramenti mirati. Il numero di veri positivi, falsi positivi, veri negativi e falsi negativi possono essere controllati per migliorare la prevedibilità, l’accuratezza e l’affidabilità di un modello.
from sklearn.metrics import confusion_matrix
import seaborn as sns
import matplotlib.pyplot as plt
cm = confusion_matrix(y_true, y_pred)
sns.heatmap(cm, annot=True, fmt="d", cmap='Blues')
plt.xlabel('Predicted')
plt.ylabel('Precise')
plt.present()
Curva roc e punteggio AUC
I modelli determinano la loro capacità di discriminazione interclassa attraverso la curva ROC.
from sklearn.metrics import roc_curve, auc
y_prob = (0.8, 0.2, 0.7, 0.1, 0.3, 0.9) # Possibilities assigned by the mannequin
fpr, tpr = roc_curve(y_true, y_prob)
auc_score = auc(fpr, tpr)
plt.plot(fpr, tpr, label=f'AUC = {auc_score:.2f}')
plt.xlabel('False Constructive Charge')
plt.ylabel('True Constructive Charge')
plt.legend()
plt.present()
Analisi degli errori e miglioramento del modello
Verifica della distorsione dei dati
I problemi di prestazioni del modello su determinate classi dovrebbero portare a indagini sui problemi di distorsione del set di dati. Una serie di process per il bilanciamento della distribuzione consente di correggere le funzioni di implementazione o perdita ponderate aiutano a correggere tali problemi.
class_weights = {0: 1.0, 1: 3.0} # Give extra weight to minority class
mannequin.match(X_train, y_train, class_weight=class_weights)
Tuning iperparametro
Le migliori impostazioni dovrebbero essere scoperte tramite metodi di ricerca di ricerca o griglia casuali.
from sklearn.model_selection import GridSearchCV
from sklearn.ensemble import RandomForestClassifier
param_grid = {'n_estimators': (50, 100, 200), 'max_depth': (None, 10, 20)}
grid = GridSearchCV(RandomForestClassifier(), param_grid, scoring='accuracy')
grid.match(X_train, y_train)
print(grid.best_params_)
Gli strumenti {hardware} e software program dovrebbero essere analizzati per ottenere prestazioni forti all’interno dei modelli AI. L’aggiunta di metriche adeguate insieme agli strumenti di visualizzazione e all’analisi degli errori aiutano advert aumentare l’affidabilità del modello migliorando al contempo l’accuratezza.
Conclusione
Per garantire l’accuratezza, l’affidabilità e la pertinenza nelle applicazioni pratiche, la valutazione del modello AI è essenziale. L’uso di metriche chiave come precisione, richiamo, punteggio F1 e metriche di regressione come il punteggio MAE e R² aiuta a garantire che le metriche di prestazione siano valutate.
Le matrici di confusione e le curve ROC, entrambe le tecniche di visualizzazione, possono essere utilizzate per interpretare facilmente come sta eseguendo il modello. Rilevamento di distorsioni, bilanciamento di classe e Tuning iperparametro hanno anche dimostrato il successo nell’ottimizzazione dei risultati. Con questi metodi, i modelli di intelligenza artificiale possono ottenere una maggiore efficienza, equità e scalabilità, fornendo risultati credibili e imparziali in scenari applicati.
Nella parte finale di questa serie, imparerai di più su come ottimizzare un modello di intelligenza artificiale utilizzando la preelaborazione dei dati, i miglioramenti algoritmici, la messa a punto iperparametro, l’accelerazione {hardware} e le strategie di distribuzione. Nel frattempo, se vuoi creare il tuo primo modello AI, ecco la nostra rapida guida: “Costruisci il tuo primo modello AI in Python: una guida per principianti (1 di 3). “