Saving and loading a model: Difference between revisions
From Jstacs
Jump to navigationJump to search
(New page: <source lang="java5"> //create a DNA-alphabet AlphabetContainer container = new AlphabetContainer( new DNAAlphabet() ); //the length of our input sequences int length = 7; //create a Sam...) |
No edit summary |
||
Line 9: | Line 9: | ||
Sample[] data = new Sample[]{ new Sample( container, new StringExtractor( new File(args[0]), 100) ), | Sample[] data = new Sample[]{ new Sample( container, new StringExtractor( new File(args[0]), 100) ), | ||
new Sample( container, new StringExtractor( new File(args[1]), 100 ), length ) }; | new Sample( container, new StringExtractor( new File(args[1]), 100 ), length ) }; | ||
//create a new PWM | //create a new PWM |
Revision as of 08:18, 29 October 2008
//create a DNA-alphabet
AlphabetContainer container = new AlphabetContainer( new DNAAlphabet() );
//the length of our input sequences
int length = 7;
//create a Sample for each class from the input data, using the alphabet from above
Sample[] data = new Sample[]{ new Sample( container, new StringExtractor( new File(args[0]), 100) ),
new Sample( container, new StringExtractor( new File(args[1]), 100 ), length ) };
//create a new PWM
BayesianNetworkModel pwm = new BayesianNetworkModel( new BayesianNetworkModelParameterSet(
//the alphabet and the length of the model:
container, length,
//the equivalent sample size to compute hyper-parameters
4,
//some identifier for the model
"my PWM",
//we want a PWM, which is an inhomogeneous Markov model (IMM) of order 0
ModelType.IMM, (byte) 0,
//we want to estimate the MAP-parameters
LearningType.ML_OR_MAP ) );
//create a new classifier
ModelBasedClassifier classifier = new ModelBasedClassifier( pwm, pwm );
//train the classifier
classifier.train( data );
//create the XML-representation of the classifier
StringBuffer buf = classifier.toXML();
//write it to disk
FileManager.writeFile( new File("myClassifier.xml"), buf );
//read XML-representation from disk
StringBuffer buf2 = FileManager.readFile( new File("myClassifier.xml") );
//create new classifier from read StringBuffer containing XML-code
ModelBasedClassifier loaded = new ModelBasedClassifier(buf2);