Evaluate multiple scores on sklearn cross_val_score

前端 未结 3 1837
野趣味
野趣味 2020-12-12 18:08

I\'m trying to evaluate multiple machine learning algorithms with sklearn for a couple of metrics (accuracy, recall, precision and maybe more).

For what I understood

3条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-12 18:50

    from sklearn import model_selection
    
    def error_metrics(model, train_data, train_targ, kfold):
        scoring = ["accuracy","roc_auc","neg_log_loss","r2",
                 "neg_mean_squared_error","neg_mean_absolute_error"] 
    
        error_metrics = pd.DataFrame()
        error_metrics["model"] = model
        for scor in scoring:
            score = []
            for mod in model:
               
                result = model_selection.cross_val_score(estimator= mod, X=train_data, y=train_targ,cv=kfold,scoring=scor )
                score.append(result.mean())
                
            error_metrics[scor] =pd.Series(score)
            
        return error_metrics
    

提交回复
热议问题