错误描述:
ValueError: Target is multilabel-indicator but average='binary' . Please choose another average setting,one of [None, 'micro', 'macro', 'weighted', 'samples'].
出错语句:
f1_score(y_true, y_pred)
原因分析:
sklearn.metrics模块中的precision_score,recall_score中对比的target和pred参数都是一维数组(若不是一维数组,则会认为某一行代表一个样本有多个标签),因此在模型的批训练时,获得的预测结果,需要先转换成一维数组再计算precision,recall,f1等指标。
改为:
f1_score(y_true, y_pred, 'binary')
Python将二维数组/多维数组转换为一维 详细见:
https://blog.csdn.net/qq_42251157/article/details/125091328
参考博文:https://blog.csdn.net/hoo1990/article/details/117377466