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);
}