运行 多个 Meka (Weka) 分类器 - 将错误加载到文件/table 对象
Run multiple Meka (Weka) classifiers - load errors to file / table object
对于那些不熟悉 Meka 的人 - 它是 Weka 的多标签分类器扩展。然而,Meka 和 Weka 非常相似,因此 Weka 用户也可以回答这个问题。
基本上,我想要我的 运行 个不同分类器的结果,我希望它们都在一个 table 中,这样我就可以快速进行模型选择 (dynamically/automatically) 而无需对于各种评估指标,必须对每个分类器的值进行硬编码...
是否有一种万无一失的有效方法来 运行 多个分类器实验 - 例如使用交叉验证 - 并获得如下所示的 table:
Model Hamming_Loss Exact_match Jaccard One_Error Rank_Loss
Binary.Relevance 0.94 0.95 0.03 0.04 0.002
Classifier.Chains 0.91 0.94 0.06 0.04 0.03
Random.k-Labelsets 0.95 0.97 0.01 0.01 0.005
... ... ... ... ...
... ... ... ... ...
使用Java,您可以手动创建一个包含不同分类器的数组并对其进行迭代,将相关的输出值保存在一个矩阵中,以便以后轻松访问。正如您所说,您甚至可以根据获得的结果创建一个新的数据集,用于动态模型选择。但关键是,如前所述,您必须手动设置分类器数组。
Classifiers[] cls = new Classifiers[clSize];
cls[0] = new J48();//or whatever you need
...
//one option:
cls[0].buildClassifier(dataset);
....
//another option
cls[0].crossValidateModel(dataset);
....
希望对您有所帮助。如果您需要进一步的支持,请发表评论。
对于那些不熟悉 Meka 的人 - 它是 Weka 的多标签分类器扩展。然而,Meka 和 Weka 非常相似,因此 Weka 用户也可以回答这个问题。
基本上,我想要我的 运行 个不同分类器的结果,我希望它们都在一个 table 中,这样我就可以快速进行模型选择 (dynamically/automatically) 而无需对于各种评估指标,必须对每个分类器的值进行硬编码...
是否有一种万无一失的有效方法来 运行 多个分类器实验 - 例如使用交叉验证 - 并获得如下所示的 table:
Model Hamming_Loss Exact_match Jaccard One_Error Rank_Loss
Binary.Relevance 0.94 0.95 0.03 0.04 0.002
Classifier.Chains 0.91 0.94 0.06 0.04 0.03
Random.k-Labelsets 0.95 0.97 0.01 0.01 0.005
... ... ... ... ...
... ... ... ... ...
使用Java,您可以手动创建一个包含不同分类器的数组并对其进行迭代,将相关的输出值保存在一个矩阵中,以便以后轻松访问。正如您所说,您甚至可以根据获得的结果创建一个新的数据集,用于动态模型选择。但关键是,如前所述,您必须手动设置分类器数组。
Classifiers[] cls = new Classifiers[clSize];
cls[0] = new J48();//or whatever you need
...
//one option:
cls[0].buildClassifier(dataset);
....
//another option
cls[0].crossValidateModel(dataset);
....
希望对您有所帮助。如果您需要进一步的支持,请发表评论。