如何使用predict_生成器可视化ROC曲线,并为predict生成_数组?

2024-03-28 21:56:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用predict_generator绘制ROC曲线。我不知道在使用我的代码时这是否可能。我没有找到任何代码来帮助我如何在使用generate_arrays_for_predict时绘制ROC曲线。 我发现这段代码可以绘制ROC曲线

y_pred_keras = keras_model.predict(X_test).ravel()

fpr_keras, tpr_keras, thresholds_keras = roc_curve(y_pred, preictPrediction)我已经编辑了它以适应我的代码,但是我得到了这个错误,因为我使用了generate_arrays_for_predict错误:Expected array-like(array or non-string sequence),got<generator object generate_arrays_for_predict>

任何帮助都将不胜感激。 提前谢谢

def generate_arrays_for_predict(indexPat, paths, start=0, end=100):
    while True:
        from_=int(len(paths)/100*start)
        to_=int(len(paths)/100*end)
        for i in range(from_, int(to_)):
            f=paths[i]
            x = np.load(PathSpectogramFolder+f)
            x=np.array([x])
            x=x.swapaxes(0,1)
            yield(x)
preictPrediction=model.predict_generator(generate_arrays_for_predict(indexPat, filesPath), max_queue_size=4, steps=len(filesPath))
y_pred=generate_arrays_for_predict(indexPat, filesPath)
fpr_keras, tpr_keras, thresholds_keras = roc_curve(y_pred, preictPrediction)


Tags: 代码for绘制generatorarraypredict曲线generate