Java源码示例:moa.classifiers.AbstractClassifier

示例1
@Override
public void trainOnInstanceImpl(Instance inst) {
	if(!hasStarted){
		learner=(AbstractClassifier) getPreparedClassOption(this.baseLearnerOption);
		hasStarted=true;
		learner.trainOnInstance(inst);
		lastX=learner.getVotesForInstance(inst)[0];
		lastY=lastX;
		alpha=alphaOption.getValue();
	}
	else{
		learner.trainOnInstance(inst);
		lastX=learner.getVotesForInstance(inst)[0];
		lastY=lastY+alpha*(lastX-lastY);
	}

	
	
}
 
示例2
@Override
public void getModelDescription(StringBuilder out, int indent) {
	if(ensemble.length>0 && ensemble[0] instanceof AbstractClassifier)
	{
		for (int i=0; i<ensemble.length;i++){
			StringUtils.appendIndented(out,indent+1,"\nModel output attribute #" + i);
			((AbstractClassifier)ensemble[i]).getModelDescription(out, indent+1);
		}
	}
}
 
示例3
@Override
public void getModelDescription(StringBuilder out, int indent) {
	if(ensemble.length>0 && ensemble[0] instanceof AbstractClassifier)
	{
		for (int i=0; i<ensemble.length;i++){
			StringUtils.appendIndented(out,indent+1,"\nModel output attribute #" + i);
			((AbstractClassifier)ensemble[i]).getModelDescription(out, indent+1);
		}
	}
}
 
示例4
@Override
protected Measurement[] getModelMeasurementsImpl() {
    List<Measurement> measurementList = new LinkedList<Measurement>();
    Measurement[] modelMeasurements = ((AbstractClassifier) this.baseLearner).getModelMeasurements();
    if (modelMeasurements != null) {
        for (Measurement measurement : modelMeasurements) {
            measurementList.add(measurement);
        }
    }
    return measurementList.toArray(new Measurement[measurementList.size()]);
}
 
示例5
@Override
protected Measurement[] getModelMeasurementsImpl() {
    List<Measurement> measurementList = new LinkedList();
    measurementList.add(new Measurement("Change detected", this.changeDetected));
    Measurement[] modelMeasurements = ((AbstractClassifier) this.stableLearner).getModelMeasurements();
    if (modelMeasurements != null) {
        measurementList.addAll(Arrays.asList(modelMeasurements));
    }
    this.changeDetected = 0;
    return measurementList.toArray(new Measurement[measurementList.size()]);
}
 
示例6
public void buildClassifier() {
    try {
        if ((classifier instanceof UpdateableClassifier) == false) {
            Classifier auxclassifier = weka.classifiers.AbstractClassifier.makeCopy(classifier);
            auxclassifier.buildClassifier(instancesBuffer);
            classifier = auxclassifier;
            isBufferStoring = false;
        }
    } catch (Exception e) {
        System.err.println("Building WEKA Classifier: " + e.getMessage());
    }
}
 
示例7
@Override
protected Measurement[] getModelMeasurementsImpl() {
    List<Measurement> measurementList = new LinkedList<Measurement>();
    measurementList.add(new Measurement("labeling cost", this.costLabeling));
    measurementList.add(new Measurement("newThreshold", this.newThreshold));
    measurementList.add(new Measurement("maxPosterior", this.maxPosterior));
    measurementList.add(new Measurement("accuracyBaseLearner (percent)", 100 * this.accuracyBaseLearner / this.costLabeling));
    Measurement[] modelMeasurements = ((AbstractClassifier) this.classifier).getModelMeasurements();
    if (modelMeasurements != null) {
        for (Measurement measurement : modelMeasurements) {
            measurementList.add(measurement);
        }
    }
    return measurementList.toArray(new Measurement[measurementList.size()]);
}
 
示例8
@Override
protected Measurement[] getModelMeasurementsImpl() {
    List<Measurement> measurementList = new LinkedList<Measurement>();
    measurementList.add(new Measurement("Change detected", this.changeDetected));
    measurementList.add(new Measurement("Warning detected", this.warningDetected));
    Measurement[] modelMeasurements = ((AbstractClassifier) this.classifier).getModelMeasurements();
    if (modelMeasurements != null) {
        for (Measurement measurement : modelMeasurements) {
            measurementList.add(measurement);
        }
    }
    this.changeDetected = 0;
    this.warningDetected = 0;
    return measurementList.toArray(new Measurement[measurementList.size()]);
}
 
示例9
public void createWekaClassifier(String[] options) throws Exception {
       String classifierName = options[0];
       String[] newoptions = options.clone();
       newoptions[0] = "";
       this.classifier = weka.classifiers.AbstractClassifier.forName(classifierName, newoptions);
	if (! (this.classifier instanceof UpdateableClassifier)) {
		// TODO: Non-Updateable MEKA classifiers could also work here.
		System.err.println("[ERROR] You must use an Updateable Classifier");
		throw new Exception("Only Updateable MEKA classifiers can be used.");
	}
}
 
示例10
public void createWekaClassifier(String[] options) throws Exception {
    String classifierName = options[0];
    String[] newoptions = options.clone();
    newoptions[0] = "";
    this.classifier = weka.classifiers.AbstractClassifier.forName(classifierName, newoptions);
}
 
示例11
@Override
public void getModelDescription(StringBuilder out, int indent) {
    ((AbstractClassifier) this.classifier).getModelDescription(out, indent);
}
 
示例12
@Override
public void getModelDescription(StringBuilder out, int indent) {
       ((AbstractClassifier) this.classifier).getModelDescription(out, indent);
	
}
 
示例13
@Override
public void getModelDescription(StringBuilder out, int indent) {
    ((AbstractClassifier) this.classifier).getModelDescription(out, indent);
}