在JAVA程序中使用来自Weka GUI的模型

时间:2018-12-11 17:28:14

标签: java weka

我已经基于FilteredClassifier训练了模型并将其保存在系统中。 该模型使用StringToWordVector作为过滤器,并使用MultilayerPerceptron作为分类器。

在begginnig,我的.ARFF文件仅包含两个属性:

@attribute text string
@attribute class {1, 2, 3...}

在训练集上进行训练后,我的属性部分如下所示: 过滤的标题

@relation 'userquestions-weka.filters.unsupervised.attribute.ClassAssigner-Clast-weka.filters.unsupervised.attribute.StringToWordVector-R1-W1000-prune-rate-1.0-T-I-N0-L-stemmerweka.core.stemmers.SnowballStemmer -S russian-stopwords-handlerweka.core.stopwords.Null-M1-tokenizerweka.core.tokenizers.WordTokenizer -delimiters \" \\r\\n\\t.,;:\\\'\\\"()?!\"'

@attribute class {0,1,2,3 ...}
@attribute ð±ð°ð½ðºðµ numeric
@attribute ð±ñ‹ numeric
@attribute ð² numeric
@attribute ð²ð°ñˆðµð¼ numeric
@attribute ð²ð°ñ� numeric
@attribute ð²ðµñ‡ðµñ€ numeric

我应该如何通过Java代码测试另一个数据?

例如另一个测试数据集如下

@relation userquestions

@attribute text string
@attribute class {0,1,2,3 ...}

@data
'Добрый вечер', ?
'Привет', ?

这是我加载模型的方式:

public class MyClassTest{

    private FilteredClassifier mlp = new FilteredClassifier();

    public void loadModel(String modelFile) throws Exception {
        this.mlp = (FilteredClassifier) weka.core.SerializationHelper.read(modelFile);
    }
}

我应该如何从测试数据集中加载实例以对其进行分类?我应该从加载的模型中加载过滤器并在测试数据集上使用它吗?

0 个答案:

没有答案