L’algorithme SVM (Machine à vecteurs de supports) pour
le classement de texte
Nous allons à présent utiliser
l’ Algorithme SVMalgorithme SVM pour tenter de classifier notre texte. Cet algorithme
commence à nous être familier, car les chapitres
précédents nous ont permis de découvrir
son fonctionnement et son optimisation.
Tout comme pour l’algorithme de Naive Bayes,
nous allons utiliser un pipeline pour réaliser les différentes
tâches d’analyse des messages avant leur apprentissage :
from sklearn.pipeline import Pipeline
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.svm import SVC
etapes_apprentissage = Pipeline([(’frequence’,
CountVectorizer()),
(’tfidf’, TfidfTransformer()),
(’algorithme’,
SVC(kernel=’linear’, C=2))])
Réalisons à présent
l’apprentissage :
modele = etapes_apprentissage.fit(X_train,y_train)
from sklearn.metrics import classification_report
print(classification_report(y_test, modele.predict(X_test),
digits=4))