Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 不支持未知-f1分数_Python_Machine Learning_Scikit Learn - Fatal编程技术网

Python 不支持未知-f1分数

Python 不支持未知-f1分数,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,我想用32个预测的蒙版图像和32个真实的蒙版图像进行f1评分。我的数据具有以下特点: predicted.shape [32,512,512] true.shape [32,512,512] type_of_target(predicted) Unknown type_of_target(true) Unknown type_of_target(predicted[0]) Continuous-multioutput type_of_target(t

我想用32个预测的蒙版图像和32个真实的蒙版图像进行f1评分。我的数据具有以下特点:

predicted.shape [32,512,512]         

true.shape [32,512,512]

type_of_target(predicted) Unknown      

type_of_target(true) Unknown

type_of_target(predicted[0]) Continuous-multioutput   

type_of_target(true[0]) Continuous-multioutput



当我运行这一行时,f1_分数(true、predicted、average='macro') 我得到这个错误:

f1_score(true, predicted, average='macro')
Traceback (most recent call last):

  File "<ipython-input-75-7198c91642b6>", line 1, in <module>
    f1_score(true, predicted, average='macro')

  File "C:\Anaconda3\lib\site-packages\sklearn\metrics\_classification.py", line 1099, in f1_score
    zero_division=zero_division)

  File "C:\Anaconda3\lib\site-packages\sklearn\metrics\_classification.py", line 1226, in fbeta_score
    zero_division=zero_division)

  File "C:\Anaconda3\lib\site-packages\sklearn\metrics\_classification.py", line 1484, in precision_recall_fscore_support
    pos_label)

  File "C:\Anaconda3\lib\site-packages\sklearn\metrics\_classification.py", line 1301, in _check_set_wise_labels
    y_type, y_true, y_pred = _check_targets(y_true, y_pred)

  File "C:\Anaconda3\lib\site-packages\sklearn\metrics\_classification.py", line 97, in _check_targets
    raise ValueError("{0} is not supported".format(y_type))

ValueError: unknown is not supported
f1_分数(真、预测、平均=”宏“)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
f1_分数(真实、预测、平均值=‘宏’)
文件“C:\Anaconda3\lib\site packages\sklearn\metrics\\ u classification.py”,第1099行,f1\ U分数
零除法=零除法)
文件“C:\Anaconda3\lib\site packages\sklearn\metrics\\ u classification.py”,第1226行,在fbeta\ U分数中
零除法=零除法)
文件“C:\Anaconda3\lib\site packages\sklearn\metrics\\u classification.py”,第1484行,在precision\u recall\u fscore\u支持中
pos_标签)
文件“C:\Anaconda3\lib\site packages\sklearn\metrics\\ u classification.py”,第1301行,在检查标签中
y_type,y_true,y_pred=_check_targets(y_true,y_pred)
文件“C:\Anaconda3\lib\site packages\sklearn\metrics\\ u classification.py”,第97行,在检查目标中
raise VALUERROR(“{0}不受支持”。格式(y_类型))
ValueError:不支持未知

我认为F1输入应该是1d数组(标签)。
确保这一点。

F1成绩是准确度和召回率的调和平均值。当预测值是分类输出而不是连续输出时,计算精度和召回率。您需要将预测转换为分类(通过向上舍入或向下舍入),然后展平数组,因为
f1\u score
函数仅将1D数组作为输入参数。

谢谢,您是正确的。f1分数中的输入必须是1d数组。所以我使用flatte(),现在我的预测值和真值是这个形状(8388608,),但是出现了错误“continuous is not supported”