classcmar_app.java
来自「多关联分类算法」· Java 代码 · 共 86 行
JAVA
86 行
/* -------------------------------------------------------------------------- *//* *//* APRIORI-TFP CMAR (CLASSIFICATION BASED ON *//* MULTIPLE ASSOCIATION RULES) APPLICATION *//* *//* Frans Coenen *//* *//* Friday 5 March 2004 *//* *//* Department of Computer Science *//* The University of Liverpool *//* *//* -------------------------------------------------------------------------- */import java.io.*;/* Classification application the CMAR (Classification based on Multiple Associate Rules) algorithm proposed by Wenmin Li, Jiawei Han and Jian Pei,but founded on Apriori-TFP.Compile using:javac ClassCMAR_App.javaRun using the java interpreter, Example:java ClassCMAR_App -FpimaIndians.D42.N768.C2.num -N2 -S1 -C50(-F filename, -N number of classifiers). */public class ClassCMAR_App { // ------------------- FIELDS ------------------------ // None // ---------------- CONSTRUCTORS --------------------- // None // ------------------ METHODS ------------------------ public static void main(String[] args) throws IOException { double time1 = (double) System.currentTimeMillis(); // Create instance of class ClassificationPRM AprioriTFP_CMAR newClassification = new AprioriTFP_CMAR(args); // Read data to be mined from file (method in AssocRuleMining class) newClassification.inputDataSet(); // Reorder input data according to frequency of single attributes // excluding classifiers. Proceed as follows: (1) create a conversion // array (with classifiers left at end), (2) reorder the attributes // according to this array. Do not throw away unsupported attributes // as when data set is split (if distribution is not exactly even) we // may have thrown away supported attributes that contribute to the // generation of CRs. NB Never throw away classifiers even if // unsupported! newClassification.idInputDataOrdering(); // ClassificationAprioriT newClassification.recastInputData(); // AssocRuleMining // Create training data set (method in ClassificationAprioriT class) // assuming a 50:50 split newClassification.createTrainingAndTestDataSets(); // Mine data, produce T-tree and generate CRs double accuracy = newClassification.startCMARclassification(); newClassification.outputDuration(time1, (double) System.currentTimeMillis()); // Output //newClassification.outputFrequentSets(); newClassification.outputNumFreqSets(); newClassification.outputNumUpdates(); newClassification.outputStorage(); //newClassification.outputTtree(); System.out.println("Accuracy = " + accuracy); newClassification.getCurrentRuleListObject().outputNumCMARrules(); newClassification.getCurrentRuleListObject().outputCMARrules(); // End System.exit(0); } }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?