⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lab.java

📁 基于2叉树svm的入侵检测算法
💻 JAVA
字号:
package instanceTest;

 

import java.io.FileReader;

 

import weka.classifiers.trees.J48;
import weka.classifiers.functions.*;
import libsvm.libsvm.*;

import weka.core.Instances;

public class lab
{
	 public static Instances getFileInstances( String fileName ) throws Exception

    {

        FileReader frData = new FileReader( fileName );

          Instances data = new Instances( frData );

        

          return data;

    }
    
    public static void main( String[] args ) throws Exception

    {

        Instances train1=getFileInstances("F:s11.arff");
        Instances train2=getFileInstances("F:s12.arff");
        Instances train3=getFileInstances("F:s13.arff");
        Instances train4=getFileInstances("F:s14.arff");
        train1.setClassIndex(41);
        train2.setClassIndex(41);
        train3.setClassIndex(41);
        train4.setClassIndex(41);
        
  //      svm svm1=new svm();
//        svm svm2=new svm();
 //       svm svm3=new svm();
  //      svm svm4=new svm();
       SMO svm1 = new SMO();
       SMO svm2 = new SMO();
       SMO svm3 = new SMO();
       SMO svm4 = new SMO();
        svm1.buildClassifier(train1);
        svm2.buildClassifier(train2);
        svm3.buildClassifier(train3);
        svm4.buildClassifier(train4);
        
        Instances test=getFileInstances("F:text1.arff");
        test.setClassIndex(41);
        
        for(int i=0;i<test.numInstances();i++)
        {
        	if(svm1.classifyInstance(test.instance(i))==0)
        	{
        		if(svm2.classifyInstance(test.instance(i))==0)
        		{
        			if(svm4.classifyInstance(test.instance(i))==0)
        			{
        				System.out.println(1);
        			}
        			else if(svm4.classifyInstance(test.instance(i))==1)
        			{
        				System.out.println(4);
        			}
        		}
        		else if(svm2.classifyInstance(test.instance(i))==1)
        		{
        			System.out.println(5);
        		}
        	}
        	else if(svm1.classifyInstance(test.instance(i))==1)
        	{
        		if(svm3.classifyInstance(test.instance(i))==0)
        		{
        			System.out.println(2);
        		}
        		else if(svm3.classifyInstance(test.instance(i))==1)
        		{
        			System.out.println(3);
        		}
        	}
        }
    }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -