numl.Learner.Best C# (CSharp) Method

Best() public static method

Retrieve best model (or model with the highest accuracy)
public static Best ( this models, ScoringMetric metric = ScoringMetric.Accuracy ) : LearningModel
models this List of models.
metric ScoringMetric Scoring metric to use for model selection.
return LearningModel
        public static LearningModel Best(this IEnumerable<LearningModel> models, ScoringMetric metric = ScoringMetric.Accuracy)
        {
            return models.OrderByDescending(
                m => {
                    switch (metric)
                    {
                        case ScoringMetric.Accuracy: return m.Accuracy;
                        case ScoringMetric.FScore: return m.Score.FScore;
                        case ScoringMetric.Precision: return m.Score.Precision;
                        case ScoringMetric.Recall: return m.Score.Recall;
                        case ScoringMetric.RMSE: return m.Score.RMSE;
                        case ScoringMetric.NormRMSE: return m.Score.NormRMSE;
                        case ScoringMetric.AUC: return m.Score.AUC;
                        case ScoringMetric.Fallout: return m.Score.Fallout;
                        case ScoringMetric.Specificity: return m.Score.Specificity;
                        default: return m.Accuracy;
                    }
                }).FirstOrDefault();
        }