我正在使用 scikit-learn 对文本进行情感分析。我现在的功能只是词频计数。
当我执行以下操作时,平均 F 值约为 59%:
from sklearn import svm
clf = svm.LinearSVC(class_weight='auto');
clf.fit(Xfeatures, YLabels);
......
predictedLabels = clf.predict(XTestFeatures);
但是当我使用 StandardScalar() 来缩放我的特征向量时,平均 F-measure 下降到 49%:
from sklearn import svm
clf = svm.LinearSVC(class_weight='auto');
Xfeatures = scaler.fit_transform(Xfeatures);
clf.fit(Xfeatures, YLabels);
......
XTestFeatures = scaler.transform(XTestFeatures);
predictedLabels = clf.predict(XTestFeatures);
缩放应该可以提高我的 SVM 的性能,但在这里,它似乎会降低性能。为什么会这样?我怎样才能使它正确?