• 数据挖掘(一)


    import java.io.File;
    import weka.classifiers.Classifier;
    import weka.classifiers.Evaluation;
    import weka.core.Instance;
    import weka.core.Instances;
    import weka.core.converters.ArffLoader;
    
    public class Test
    {
        public void main(String[] agrs)
       {
            try
            {
              /*
               * 读入训练序列、测试样本
                 * 这里将训练序列和测试样本作为同一个样本
                 */
               File file = new file("D://Program Files//Weka-3-6//data//contatct-lenses.arff");
               ArffLoader loader = new ArffLoader();
               loader.setFile(file);
               Instances ins = loader.getDateSet();                  
                 
               //使用样本之前,一定要首先设置instances的classIndex,否则在使用时会抛出异常
                 ins.setClassIndex(ins.numAttributes()-1);
    
               /*
                *初始化分类器
                  *具体使用哪一种特定的分类器可以进行选择,将特定分类器的名称放到forName函数
                  *这样就构建了一个简单的分类器
                  */
    
                Classifier cfs = (Classifier)Class.foreName("weka.classifiers.bayes.NavieBayes").newInstance();
                  
                /*
                 *使用训练样本训练分类器
                   */
    cfs.buildClassifier(ins); /* *使用测试样本测试分类器的学习效果
    *这里使用的训练样本和测试样本是同一个,实际中需要读入一个特定的测试样本
    */ Instance testIns; /* * Evaluation: Class for evaluating machine learning models * 即它是用于检测分类模型的类 */ Evaluation testingEvaluation = new Evaluation(ins); int length = ins.numInstances();
    for (int i =0; i < length; i++) {
    testInst
    = ins.instance(i); //通过这个方法来用每个测试样本测试分类器的效果 testingEvaluation.evaluateModelOnceAndRecordPrediction(cfs, testInst); } /* * 打印分类结果 * 在这里我们打印了分类器的正确率 * 其它的一些信息我们可以通过Evaluation对象的其它方法得到 */ System.out.println( "分类器的正确率:" + (1- testingEvaluation.errorRate())); }catch(Exception e) { e.printStackTrace(); } } }

    链接:http://blog.csdn.net/anqiang1984/article/details/4040571

    数据挖掘的一般过程

    1.读入训练、测试样本

    2.初始化分类器

    3.使用训练样本训练分类器

    4.使用测试样本测试分类器的学习效果

    5.打印分类结果

  • 相关阅读:
    将新的rpm包添加到本地yum源
    linux cp命令直接覆盖不提示按Y/N的方法
    十一月二十一学习报告
    十一月二十学习报告
    十一月十九学习报告
    十一月十八学习报告
    十一月十七学习报告
    十一月十五学习报告
    十一月十四学习报告
    十一月十三学习报告
  • 原文地址:https://www.cnblogs.com/buptlyn/p/3620397.html
Copyright © 2020-2023  润新知