我对Weka中的Textmining有疑问。所以我有4个不同的类别。我希望将数据分类为这些类别。另外,我希望可以预测数据是正/负还是中性。 所以这是我在使用任何过滤器之前的训练数据:
@relation QueryResult
@attribute class {Qualität,Bord,Kite,Harness}
@attribute text {evo,foil,end,fin,edg}
@data
Qualität,evo
Bord,foil
Kite,end
Harness,fin
Qualität,edg
这是我的Java代码:
Instances train = new Instances(loadInstancesForWeka("root","",sqlCommand));
train.setClassIndex(train.numAttributes() - 2);
NominalToString filter1 = new NominalToString();
filter1.setInputFormat(train);
train = Filter.useFilter(train, filter1);
//filter
StringToWordVector filter = new StringToWordVector();
filter.setInputFormat(train);
train = Filter.useFilter(train, filter);
// test2 are the testing instances
naive.buildClassifier(train);
for (int i = 0; i < test2.numInstances(); i++) {
double index = naive.classifyInstance(test2.instance(i));
}
因此,到目前为止,我的数据分为Qualität,Bord,Kite和Harness四个类别。 现在如何使用朴素贝叶斯将它们也分为正面/负面/中性?