Spark:回归模型阈值和精度

2023-12-14

我有逻辑回归模式,我明确地将阈值设置为 0.5。

model.setThreshold(0.5)

我训练模型,然后我想要获得基本统计数据——精确度、召回率等。

这就是我评估模型时所做的:

val metrics = new BinaryClassificationMetrics(predictionAndLabels)

val precision = metrics.precisionByThreshold


precision.foreach { case (t, p) =>

      println(s"Threshold is: $t, Precision is: $p")

    }

我得到的结果只有 0.0 和 1.0 作为阈值,0.5 被完全忽略。

这是上述循环的输出:

阈值是:1.0,精度是:0.8571428571428571

阈值是:0.0,精度是:0.3005181347150259

当我调用metrics.thresholds()时,它也只返回两个值:0.0和1.0。

如何获得阈值为 0.5 的精度和召回值?


在进行预测之前,您需要清除模型阈值。清除阈值使您的预测返回分数而不是分类标签。如果不是,您将只有两个阈值,即标签 0.0 和 1.0。

model.clearThreshold()

来自 PredictionsAndLabels 的元组应该看起来像(0.6753421,1.0)并不是(1.0,1.0)

看一眼https://github.com/apache/spark/blob/master/examples/src/main/scala/org/apache/spark/examples/mllib/BinaryClassificationMetricsExample.scala

如果输入很大,您可能仍然想设置 numBins 来控制点数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spark:回归模型阈值和精度 的相关文章

随机推荐

  • 使用分号和大括号的 C# 命名空间声明有什么区别?

    我注意到 C 中命名空间声明的两种不同方法 namespace FirstProgram and namespace FirstProgram 我正在寻找有关 C 中两种类型的命名空间声明的主要区别和用途的信息 示例 带有分号 namesp
  • Ajax 将文件从浏览器上传到 FTP 服务器

    是否可以使用ajax将文件从浏览器上传到FTP服务器 不可以 浏览器不提供允许从 JavaScript 写入 FTP 的 API 你可以将文件发布到 HTTP 端点然后使用服务器端代码将其推送到您的 FTP 服务器
  • 测量 Angular 中 svg 元素的尺寸

    我正在尝试使用 SVG 在 Angular 中创建一个类似仪表的组件来绘制形状 我想将文本放在矩形内居中 文本将根据仪表的值而变化 因此 我想调整字体大小以使该值适合矩形 或者 我可以调整数字格式 例如 如果字符串太长 则使用科学记数法 使
  • 使用 svndumpfilter 包含多个文件夹

    我在服务器中创建了一个名为 allProjects 的存储库 以下是 allProjects 结构 所有项目 Projects projectA projectB projectC projectD projectE 现在我正在尝试创建另一
  • 当 ASP.NET 5 (vNext) 无法重定向绑定时我该怎么办?

    我刚刚接触 MVC 6 我安装了 VS 2015 并使用默认设置ASP NET 5 preview MVC Web Application模板在本地 IIS 下一切运行良好 然后我尝试使用以下命令切换默认 DI 容器StructureMap
  • 如何访问输出阶段的 Mapper/Reducer 计数器?

    我在 Mapper 类中创建了一些计数器 使用 appengine mapreduce Java 库 v 0 5 编写的示例 Override public void map Entity entity getContext increme
  • RewriteCond 文件存在

    这么简单的问题但我和htaccess却一直相处不来 如果文件存在 则提供该文件 如果 URI 只是 并且 index html 存在 则提供 index html 否则提供 app php 这是 htaccess Disable the d
  • 如何在 ASP.NET 表单上设置必需的复选框?

    我对此进行了一些搜索 并且找到了几个部分答案 但是没有任何东西让我感到温暖模糊 这是执行此操作的正确方法 要回答针对此问题最常见的投诉 复选框可以有两种合法状态 选中和未选中 这是一个 我接受条款和条件 复选框 必须选中该复选框才能完成注册
  • 将 LINQ 结果转换为 ObservableCollection

    事实上 它是 LINQ 结果可能与该问题无关 但无论如何我都会提到它 因为这是导致该问题的上下文 我运行 LINQ 查询 结果是 IEnumerable
  • 颤动箭头标签栏?

    How I can make the cursor of tab bar with an arrow like this 您可以使用自定义画家和选项卡指示器来实现您的愿望指示器 import package flutter material
  • 使用 TypeScript 的条件类型

    假设我有这个 type TypeMapping Boolean boolean String string Number number ArrayOfString Array
  • 如何在 Rust 结构中保存迭代器

    我正在尝试这样做 struct RwindIter iter Box
  • 需要帮助,出现错误“TypeError: __init__() 需要 5 个位置参数,但给出了 6 个”

    我刚刚开始上课并理解基本概念 但是我不明白为什么它会给我这个错误 My code import pygame pygame init screen pygame display set mode 400 300 done False whi
  • 使用 AND 运算符进行 Mongoose 文本搜索

    所以我想做的是用 mongoose 到 mongoDb 进行 AND 搜索 但结果来自 OR 搜索 有这方面的设置吗 查询如下所示 exampleModel find text search searchParams score meta
  • React js Web应用程序中的溢出问题

    这是我正在使用的样式表 在移动设备和平板电脑视图中使用此功能时会出现溢出问题 但在桌面视图中则没有任何问题 任何人都可以为此提出解决方案吗 我正在开发一个reactjs web应用程序并托管在firebase中 如果我添加较少数量的技术语言
  • 如何让两个tooltip id独立关闭,并记住cookie?

    我正在尝试使用 jQuery HTML 和 CSS 制作工具提示 每个工具提示的 ID 都不同 而且效果很好 因此我可以根据需要制作任意数量的工具提示并独立设置它们的样式 我不明白的是如何在不影响其他工具提示的情况下关闭工具提示 我使用 R
  • 无限水平滚动UIScrollView

    我有一个 UIScrollView 其内容大小为 1200x480 我上面有一些图像视图 其宽度加起来为 600 当向右滚动时 我只需增加内容大小并设置偏移量 以使一切变得平滑 然后我想添加其他图像 但这并不重要现在 所以基本上 当前在视口
  • 如何在没有 Ajax Toolkit 的情况下显示加载图像直到 gridview 完全加载?

    QUESTION 谁能建议如何在 gridview 完全加载之前显示加载图像 该网格视图将在页面加载时呈现 必须有一个简单的解决方案来检测 gridview 何时加载 加载 以便可以实现加载图像和 gridview 可见性之间的简单切换 请
  • Internet Explorer 8 支持 HTML 5 吗?

    IE8 是否支持 HTML5 它在 IE8 路线图上吗 IE8 beta 2 支持 HTML5 的两个 API 跨文档消息传递 and 非 SQL 存储 IE8 beta 2没有实现HTML5解析算法或新元素 没有
  • Spark:回归模型阈值和精度

    我有逻辑回归模式 我明确地将阈值设置为 0 5 model setThreshold 0 5 我训练模型 然后我想要获得基本统计数据 精确度 召回率等 这就是我评估模型时所做的 val metrics new BinaryClassific