Logistic回归CV多个评分指标

时间:2019-11-21 17:38:10

标签: python logistic-regression cross-validation

我正在使用Logistic回归创建有关分类问题的模型。

数据-5000 * 100

由于数据很小,我真的很想利用Logistic回归CV,因为它有助于避免将数据分解为单独的训练和测试,进而增加了训练集

我想查看所有5折的Precision,Recall和F1得分的CV得分,并在Accuracy上拟合模型

代码给出以下错误- dict对象不可调用

使用的代码-

C=[np.power(10.0,0)]
scorers = {
                'precision_score': make_scorer(precision_score),
                'recall_score': make_scorer(recall_score),
                'accuracy_score': make_scorer(accuracy_score),
                'AUC': 'roc_auc',
                'Accuracy' : 'accuracy'
                } 
clf3 = LogisticRegressionCV(penalty="l1", max_iter=100, solver='liblinear', n_jobs=30, cv=5, Cs=C, scoring=scorers, refit='accuracy')
clf3.fit(X_train,y_train)

我在这里做错什么,而且LogisticregressionCV是否支持多种评分标准?

真的很感谢任何想法。

1 个答案:

答案 0 :(得分:0)

您已经确定了问题; LogisticregressionCV不支持SELECT id, name, (SELECT VALUE FROM CUSTOM_VALUES val WHERE PROP_NAME = 'age' AND usr.id = val.USER_ID) "age", (SELECT VALUE FROM CUSTOM_VALUES val WHERE PROP_NAME = 'gender' AND usr.id = val.USER_ID) "gender" FROM my_user usr ; 的多个指标。您需要传递函数而不是字典。