NLP/IA

Analyse expérimentale d'un modèle de classification textuelle

BiasharaIntermédiaireFrançais1 min de lecture

En bref

La classification automatique de textes constitue une tâche importante du traitement automatique du langage naturel (TALN). Elle consiste à associer automatiquement un document à une ou plusieurs catégories prédéfinies à partir de ses caractéristiques linguistiques.

Dans cette étude, nous évaluons un modèle simple de classification sur un corpus composé de 5 000 documents répartis en cinq catégories : politique, économie, sport, santé et culture.

L'objectif principal est d'étudier l'influence de la représentation des textes sur les performances du modèle.

Méthodologie

Les documents sont d'abord normalisés puis transformés en représentations vectorielles à l'aide de TF-IDF. Le corpus est ensuite divisé en deux sous-ensembles :

  • 80 % pour l'entraînement ;
  • 20 % pour l'évaluation.

Les performances sont mesurées à l'aide de l'accuracy, de la précision et du rappel.

Hypothèse : une représentation prenant en compte la fréquence des termes devrait permettre au modèle de distinguer efficacement les catégories présentant un vocabulaire spécifique.

Python
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score

texts = [
    "Le gouvernement annonce une nouvelle réforme",
    "L'équipe remporte la finale du championnat",
    "Le marché connaît une forte croissance",
    "Une nouvelle étude médicale vient de paraître",
]

labels = [
    "politique",
    "sport",
    "economie",
    "sante",
]

vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(texts)

X_train, X_test, y_train, y_test = train_test_split(
    X, labels, test_size=0.25, random_state=42
)

model = LogisticRegression()
model.fit(X_train, y_train)

predictions = model.predict(X_test)
accuracy = accuracy_score(y_test, predictions)

print(f"Accuracy : {accuracy:.2f}")
ammar mohamed
ammar mohamed

Texte sous licence CC BY 4.0, code sous licence MIT.