Da X_train
zur Schulung des Modells verwendet wird, erwartet das Modell während der Vorhersagephase, dass X_test
die genau gleiche Merkmalsdimension (d.h. Anzahl der Spalten) aufweist.
Sie haben erwähnt, dass X_train
und X_test
mithilfe eines CountVectorizers erstellt werden. Eine wahrscheinliche Ursache für dieses Problem ist, dass Sie fit
(oder fit_transform
) zweimal aufgerufen haben, was zwei verschiedene Transformationen erzeugt hat. Um dies zu verhindern, stellen Sie sicher, dass es nur einen Aufruf von fit
gibt:
from sklearn.feature_extraction.text import CountVectorizer
vec = CountVectorizer()
X_train = vec.fit_transform(X_train_raw)
X_test = vec.transform(X_test_raw) # Nicht fit_transform!
Auf diese Weise werden die Testdaten mithilfe genau desselben Vokabulars transformiert, das aus den Trainingsdaten gelernt wurde.