【问题标题】:Weka prediction using SMO classifier in c# code在 c# 代码中使用 SMO 分类器进行 Weka 预测
【发布时间】:2015-07-07 13:53:15
【问题描述】:

我正在通过 IKVM 使用 Weka 库,并且我已经使用 Weka explorer 为 SMO 构建了一个模型。现在我想用它来预测代码中未标记的数据(我已经用 J48 成功完成了)。

我这样加载模型:

weka.classifiers.functions.SMO smo = (weka.classifiers.functions.SMO)SerializationHelper.read("C:\\Users\\lorenzov\\Desktop\\weka_files\\Modelli\\SMO_modello.model");

此代码适用于 J48:

  weka.core.Instances test = new weka.core.Instances(new java.io.FileReader("C:\\Users\\lorenzov\\Desktop\\weka_files\\test.arff"));
        test.setClassIndex(5);

        // istanze da etichettare
        Instances labeled = new Instances(test);



        const int percentSplit = 66;
        int trainSize = test.numInstances() * percentSplit / 100;
        int testSize = test.numInstances() - trainSize;

        weka.classifiers.evaluation.Evaluation eval = new weka.classifiers.evaluation.Evaluation(test);

        eval.evaluateModel(cls, test);


        eval.evaluateModel(cls, test);

        for (int i = 0; i < test.numInstances(); i++)
        {
            weka.core.Instance currentInst = test.instance(i);
            test.instance(i).classValue();
            double predictedClass = cls.classifyInstance(currentInst);
            labeled.instance(i).setClassValue(predictedClass);

        }

如何使用 SMO 模型做到这一点?

【问题讨论】:

    标签: c# weka smo prediction


    【解决方案1】:

    你可以用下面的这个替换你的分类器行。

    weka.classifiers.Classifier cl = new weka.classifiers.functions.SMO();
    

    【讨论】:

      猜你喜欢
      • 2013-04-22
      • 2012-04-06
      • 2014-02-20
      • 2019-11-26
      • 2017-12-07
      • 2012-08-19
      • 1970-01-01
      • 2013-12-25
      • 2015-08-05
      相关资源
      最近更新 更多