Migliorare il tuo modello
Il tuo compito in questo esercizio è testare alcuni diversi livelli di alpha usando i vettori Tfidf per capire se esiste una combinazione con prestazioni migliori.
I set di training e test sono già stati creati e tfidf_vectorizer, tfidf_train e tfidf_test sono già stati calcolati.
Questo esercizio fa parte del corso
Introduzione al Natural Language Processing in Python
Istruzioni dell'esercizio
- Crea un elenco di valori di alpha da provare usando
np.arange(). I valori devono andare da0a1con passi di0.1. - Crea una funzione
train_and_predict()che accetti un argomento:alpha. La funzione deve:- Istanziare un classificatore
MultinomialNBconalpha=alpha. - Fittarlo sui dati di training.
- Calcolare le predizioni sui dati di test.
- Calcolare e restituire l'accuracy.
- Istanziare un classificatore
- Usando un ciclo
for, stampaalpha,scoree una riga vuota tra loro. Usa la tua funzionetrain_and_predict()per calcolare loscore. Lo score cambia al variare di alpha? Qual è il valore di alpha migliore?
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Create the list of alphas: alphas
alphas = ____
# Define train_and_predict()
def ____(____):
# Instantiate the classifier: nb_classifier
nb_classifier = ____
# Fit to the training data
____
# Predict the labels: pred
pred = ____
# Compute accuracy: score
score = ____
return score
# Iterate over the alphas and print the corresponding score
for alpha in alphas:
print('Alpha: ', alpha)
print('Score: ', ____)
print()