public static double GetScore(TracedScoreEventBase scoreEvt, BeamNode node) { //TODO recognition learning belongs here var featureScore = 0.0; foreach (var feature in scoreEvt.GenerateFeatures(node)) { if (_featureScores.TryGetValue(feature, out var score)) { featureScore += score; break; //TODO think more about feature semantic } } return(scoreEvt.GetDefaultScore(node) + featureScore); }
protected double GetScore(TracedScoreEventBase scoreEvt) { return(GetScore(scoreEvt, getCurrentNode())); }
internal virtual void Visit(TracedScoreEventBase evt) { // nothing to do by default }