Weka - 如何在 Java 中使用分类器
Weka - How to use classifier in Java
我在 Weka 资源管理器中创建了一个模型,并将其保存为 .model 文件
首先,我从 Java 代码
加载保存的模型
Classifier cls = null;
try {
cls = (Classifier) weka.core.SerializationHelper.read("Model.model");
} catch (Exception e1) {
e1.printStackTrace();
}
然后,我从 .arff 文件
中读取了我想要 classify 的实例
BufferedReader reader = new BufferedReader(new FileReader(file));
ArffReader arff = new ArffReader(reader);
Instances data = arff.getData();
该文件仅包含一个实例。 class 属性的值为“?”。
使用下面的代码,我尝试对实例进行class化。
data.setClassIndex(data.numAttributes()-1);
try {
double value=cls.classifyInstance(data.firstInstance());
String prediction=data.classAttribute().value((int)value);
System.out.println("The predicted value of instance "+
Integer.toString(s1)+
": "+prediction);
} catch (Exception e) {
e.printStackTrace();
}
这样对吗;
这是一个正确的代码示例,可以执行您希望它执行的操作。另一个有用的方法是:
yourClassifier.distributionForInstance(yourInstance);
那个 returns 一个双[] 与每个 class 标签的实例概率。它对于不太清楚的问题很有用,其中 class 成员资格可能是一个模糊的概念。
请参阅此处 Java 包含幻灯片和文本数据集的代码。它训练机器、加载模型并对实时看不见的文本数据进行分类。很容易理解
https://github.com/drelhaj/MachineLearning
我在 Weka 资源管理器中创建了一个模型,并将其保存为 .model 文件
首先,我从 Java 代码
加载保存的模型Classifier cls = null;
try {
cls = (Classifier) weka.core.SerializationHelper.read("Model.model");
} catch (Exception e1) {
e1.printStackTrace();
}
然后,我从 .arff 文件
中读取了我想要 classify 的实例 BufferedReader reader = new BufferedReader(new FileReader(file));
ArffReader arff = new ArffReader(reader);
Instances data = arff.getData();
该文件仅包含一个实例。 class 属性的值为“?”。 使用下面的代码,我尝试对实例进行class化。
data.setClassIndex(data.numAttributes()-1);
try {
double value=cls.classifyInstance(data.firstInstance());
String prediction=data.classAttribute().value((int)value);
System.out.println("The predicted value of instance "+
Integer.toString(s1)+
": "+prediction);
} catch (Exception e) {
e.printStackTrace();
}
这样对吗;
这是一个正确的代码示例,可以执行您希望它执行的操作。另一个有用的方法是:
yourClassifier.distributionForInstance(yourInstance);
那个 returns 一个双[] 与每个 class 标签的实例概率。它对于不太清楚的问题很有用,其中 class 成员资格可能是一个模糊的概念。
请参阅此处 Java 包含幻灯片和文本数据集的代码。它训练机器、加载模型并对实时看不见的文本数据进行分类。很容易理解 https://github.com/drelhaj/MachineLearning