gpt4 book ai didi

pyspark 提取 ROC 曲线?

转载 作者:行者123 更新时间:2023-12-01 10:20:52 28 4
gpt4 key购买 nike

有没有办法从pyspark中的Spark ML获取ROC曲线上的点?在文档中,我看到了一个 Scala 的例子,但不是 python:https://spark.apache.org/docs/2.1.0/mllib-evaluation-metrics.html
是吗?我当然可以想出实现它的方法,但我不得不想象如果有一个预先构建的函数它会更快。我正在处理 300 万个分数和几十个模型,所以速度很重要。

最佳答案

只要 ROC 曲线是 FPR 对 TPR 的图,您就可以提取所需的值如下:

your_model.summary.roc.select('FPR').collect()
your_model.summary.roc.select('TPR').collect())

哪里 your_model可以是例如你从这样的东西得到的模型:
from pyspark.ml.classification import LogisticRegression
log_reg = LogisticRegression()
your_model = log_reg.fit(df)

现在你应该只针对 TPR 绘制 FPR,例如使用 matplotlib .

附言

这是使用名为 your_model 的模型绘制 ROC 曲线的完整示例。 (以及其他任何东西!)。我还在 ROC 图中绘制了一条引用“随机猜测”线。
import matplotlib.pyplot as plt
plt.figure(figsize=(5,5))
plt.plot([0, 1], [0, 1], 'r--')
plt.plot(your_model.summary.roc.select('FPR').collect(),
your_model.summary.roc.select('TPR').collect())
plt.xlabel('FPR')
plt.ylabel('TPR')
plt.show()

关于pyspark 提取 ROC 曲线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52847408/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com