private double EvaluatePolicy(IList <ClustererDataLoader.ClustererDoc> docs, bool training) { isTraining = 0; EvalUtils.B3Evaluator evaluator = new EvalUtils.B3Evaluator(); foreach (ClustererDataLoader.ClustererDoc doc in docs) { Clusterer.State currentState = new Clusterer.State(doc); while (!currentState.IsComplete()) { currentState.DoBestAction(classifier); } currentState.UpdateEvaluator(evaluator); } isTraining = 1; double score = evaluator.GetF1(); Redwood.Log("scoref.train", string.Format("B3 F1 score on %s: %.4f", training ? "train" : "validate", score)); return(score); }
public CombinedEvaluator(double mucWeight) { b3Evaluator = new EvalUtils.B3Evaluator(); mucEvaluator = new EvalUtils.MUCEvaluator(); this.mucWeight = mucWeight; }