Scikit-learn:在 GridSearchCV 中评分

2023-11-22

看起来GridSearchCVscikit-learn 收集其(内部)交叉验证折叠的分数,然后对所有折叠的分数进行平均。我想知道这背后的理由。乍一看,收集其交叉验证折叠的预测,然后将所选的评分指标应用于所有折叠的预测似乎更灵活。

我偶然发现这个的原因是我使用GridSearchCV在不平衡的数据集上cv=LeaveOneOut() and scoring='balanced_accuracy'(scikit-learn v0.20.dev0)。对每个遗漏的样本应用平衡准确性(或召回率)等评分指标是没有意义的。相反,我想首先收集所有预测,然后将我的评分指标应用于所有预测。或者这是否涉及推理错误?

Update:我通过创建一个基于的自定义网格搜索类解决了这个问题GridSearchCV不同之处在于,首先从所有内部折叠收集预测,然后应用一次评分指标。


GridSearchCV使用评分来决定在模型中设置哪些内部超参数。

如果您想估计“最佳”超参数的性能,则需要执行额外的交叉验证步骤。

See http://scikit-learn.org/stable/auto_examples/model_selection/plot_nested_cross_validation_iris.html

编辑以更接近回答实际问题: 对我来说,如果你想使用,收集每次折叠的预测然后对它们进行评分似乎是合理的LeaveOneOut and balanced_accuracy。我想你需要制作自己的网格搜索器才能做到这一点。你可以使用model_selection.ParameterGrid and model_selection.KFold为了那个原因。

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

Scikit-learn:在 GridSearchCV 中评分 的相关文章

  • 具有多个输入的kerasvalidation_data

    我尝试使用validation data方法 但是有问题 model fit X macd train X rsi train X ema train Y train sample weight sample weight validati
  • 如何向 C# XmlDocument 添加新的根元素?

    我有一个不受我控制的 XmlDocument 其结构如下
  • 使用非负约束进行优化

    考虑以下功能 import numpy as np import scipy optimize as opt import math Periodic indexation def pl list i return list i len l
  • Mysql:多个表还是一张大表?

    这个问题已经被问过 但我还没有找到 1 个语音答案 最好这样做 1 张大桌子 其中 用户 ID 属性 1 属性 2 属性 3 属性 4 或 4 个小桌子 其中 用户 ID 属性 1 用户 ID 属性 2 用户 ID 属性 3 用户 ID 属
  • HTML5 - Canvas - 大图像优化

    我需要建立一个HTML5 canvas其中包含非常大的图像 可能高达 10 15MB 我的第一个想法是将图像分成几个块 这些块将在画布上水平移动时加载 对这个想法有什么想法吗 这是一件好事吗 也许我错过了一些已经实现的优化功能 你说得对 这
  • 分类报告 - 精度和 F 分数定义不明确

    我从 sklearn metrics 导入了classification report 当我输入我的np arrays作为参数我收到以下错误 usr local lib python3 6 dist packages sklearn met
  • Pytorch TypeError:eq() 收到无效的参数组合

    num samples 10 def predict x sampled models guide None None for in range num samples yhats model x data for model in sam
  • 测试 xmm/ymm 寄存器是否为零的更快方法?

    It s fortunate that PTEST does not affect the carry flag but only sets the rather awkward ZF also affects both CF and ZF
  • 如何获取 sklearn.metrics.classification_report 的输出作为字典?

    我一直在尝试以字典的形式获得分类报告 所以根据 scikit learn 0 20 文档 我这样做 from sklearn import metrics rep metrics classification report y true y
  • Haar级联正例图像大小调整

    我正在迈出第一步 为自定义对象识别创建 haar 级联 我花了时间获取大量数据并编写了一些预处理脚本以将视频转换为帧 我的下一步是裁剪感兴趣的对象 以创建一些积极的训练示例 我有几个问题 我确实在网上寻找答案 我有点困惑 我读到我应该致力于
  • 字符串文字会被编译器优化吗?

    C 编译器或 NET CLR 是否对字符串文字 常量进行了任何巧妙的内存优化 我可以发誓我听说过 字符串内化 的概念 因此在程序中的任何两位代码中 文字 这是一个字符串 实际上会指代同一个对象 大概是安全的 对于字符串来说是这样的 不可变
  • 如何加速我的 Perl 程序?

    这确实是两个问题 但它们非常相似 为了简单起见 我想我应该把它们放在一起 Firstly 给定一个已建立的 Perl 项目 除了简单的代码优化之外 还有哪些不错的方法可以加速它 Secondly 用Perl从头开始编写程序时 有哪些好的方法
  • 单词预测算法

    我确信有一篇关于此问题的帖子 但我找不到提出这个确切问题的帖子 考虑以下 我们有字典可供使用 我们收到了许多单词段落 我希望能够根据此输入预测句子中的下一个单词 假设我们有几个句子 例如 你好 我的名字是汤姆 他的名字是杰瑞 他去了没有水的
  • 在基本 Tensorflow 2.0 中运行简单回归

    我正在学习 Tensorflow 2 0 我认为在 Tensorflow 中实现最基本的简单线性回归是一个好主意 不幸的是 我遇到了几个问题 我想知道这里是否有人可以提供帮助 考虑以下设置 import tensorflow as tf 2
  • 使用 scikit-learn 从 GridSearchCV 获取进度更新

    我目前正在 Python 中实现支持向量回归 其中我通过 GridSearchCV 估计参数 C 和 gamma 我最初从大约 400 个 C 和 gamma 的组合中进行搜索 这是一个非常详尽的搜索 现在已经在我的计算机上运行了一个多小时
  • 为什么我应该使用内联代码? [复制]

    这个问题在这里已经有答案了 我是一名 C C 开发人员 这里有几个始终困扰我的问题 常规 代码和内联代码之间有很大区别吗 主要区别是什么 内联代码只是宏的一种 形式 吗 选择内联代码时必须进行什么样的权衡 Thanks 表现 正如之前的答案
  • float() 参数必须是字符串或数字,而不是“时间戳”

    我无法使 scilearn 与日期时间系列一起工作 找到了这篇文章 但对我没有帮助 Pandas 类型错误 float 参数必须是字符串或数字 https stackoverflow com questions 41256626 panda
  • 如何将体积补丁存储到 HDF5 中?

    我有一个尺寸的体积数据256x128x256 由于内存有限 我无法将整个数据直接输入到 CAFFE 因此 我会随机选择n sample补丁50x50x50从体积数据中提取并将其存储到 HDF5 中 我成功地从原始数据及其标签中随机提取了补丁
  • 将 javascript 合并到一个文件中

    最近阅读了雅虎的网络优化技巧并使用 YSlow 我在我的一个网站上实现了他们的一些想法http www gwynfryncottages com http www gwynfryncottages com你可以在这里看到该文件http ww
  • Matplotlib Scatter - ValueError:RGBA 序列的长度应为 3 或 4

    我正在尝试为我的功能绘制图表 但不断收到此错误 ValueError RGBA sequence should have length 3 or 4 每当我只有 6 种形状时 代码就可以完美运行 但现在我将其增加到 10 种 它就不起作用了

随机推荐

  • 单击“下一步”按钮后,如何将 ListView 中的列表项显示限制为 10 和下 10 个

    我有一个包含 100 个项目的列表视图 我想显示前 10 个项目 单击 下一步 按钮时 我必须显示下一个 10 个项目 即从 11 到 20 我有获取前 10 个项目的代码 public int getCount return 10 但如何
  • 从文本中提取位置的方法?

    从自由文本中提取位置的推荐方法是什么 我能想到的是使用正则表达式规则 例如 单词 在位置 但还有比这更好的方法吗 我还可以考虑建立一个包含国家和城市名称的查找哈希表 然后将文本中提取的每个标记与哈希表的标记进行比较 有人知道更好的方法吗 编
  • 错误:require.paths 被删除。使用node_modules文件夹或NODE_PATH环境变量代替

    我刚刚新安装了 Node js 现在我尝试运行一个简单的脚本 但收到以下错误消息 Error require paths is removed Use node modules folders or the NODE PATH enviro
  • UI- 路由器 -- 在每次路由更改时运行函数 -- 状态名称位于哪里?

    使用 Angularjs 和 UI Router 尝试在每次状态更改时运行一个函数 rootScope on stateChangeStart function toState if toState login UsersService r
  • 如何取消操作表

    我使用此代码在 uiactionsheet 中显示 uipicker 但是当我单击关闭按钮时 我想从视图中删除操作表 那么删除 actionSheet 表单视图的代码应该是什么 BOOL textFieldShouldBeginEditin
  • JavaScript 初学者:在 JavaScript 中使用 JSON 和对象

    我有一些 JSON 返回到浏览器 就像这个 产品 Title School Bag Image images school bag jpg 我希望这些数据成为 产品 对象 这样我就可以使用原型方法 例如toHTMLImage 返回产品的 H
  • 金字塔和 .ini 配置

    每个 Pyramid 应用程序都有一个关联的 ini 文件 其中包含其设置 例如 默认值可能如下所示 app main use egg MyProject pyramid reload templates true pyramid debu
  • java中数组循环左移n个位置

    我正在尝试仅使用单个一维数组将数组循环左移 n 个位置 我可以在两个数组中完成它 但我还没有弄清楚如何使用一个数组来完成它 请提出您的建议 实际上有一个聪明的算法可以做到这一点 我们将使用A来表示数组 N表示数组大小 以及n表示要移动的位置
  • ERROR 1048 (23000) 列不能为 NULL,但我正在插入有效数据

    Stack Overflow 上有大量这样的帖子 但是从大约 20 个帖子来看 它们要么是在与 MySQL 接口时遇到编码错误 我不想这样做 要么只是想要空值 但其表定义不正确 我在 MySQL 5 6 19 中看到一个错误 其中有一列不允
  • 对指向 const 对象的非常量指针的非常量引用

    简而言之 我有一个简单的指针 int a 现在 我想改变这个指针的值 我想在一个函数中执行此操作 函数确保它不会更改指针指向的对象 但会更改指针本身 这就是为什么我希望这个函数采用这样的参数 非常量引用 因为指针的值将被更改 到指向常量对象
  • Linux 上的 PostgreSQL“initdb”(数据库初始化)

    我正在努力在 Linux 系统 CentOS RedHat Fedora 上工作的 PostgreSQL 9 x 中创建数据库集群 单个数据库 我已经安装了正确的 PostgreSQL 软件包 服务器和客户端 但是 我无法创建数据库并获取某
  • 如何将 SSH 身份文件密钥对添加到 JKS 密钥库

    我正在构建的 Java 应用程序的任务之一是连接到远程 SFTP 服务器 为了做到这一点 我拥有远程计算机的证书和本地身份 id rsa and id rsa pub in the ssh文件夹 这工作正常 我想将证书和身份放在受密码保护的
  • django-tastypie:通过关系发布到具有ManytoMany字段的资源

    我正在为一个项目开发 API 并且通过 OrderProducts 建立订单 产品关系 如下所示 在 models py 中 class Product models Model class Order models Model produ
  • Unity解决循环依赖

    在学习Unity的同时 DI框架中C 我遇到了一种情况 其中一个类有一个 setter 注入ClassB class ClassA IClassA Dependency public IClassB ClassB get return cl
  • 在受保护的路由reactjs中传递props

    我在我的reactjs应用程序中使用受保护的路由 我想知道如何在受保护的路由中传递道具 或者是否有更优雅的方法来解决我的问题 我觉得需要在受保护的路由中传递 props 的原因是注销按钮位于受保护的组件内 我需要与包含用户尝试注销的所有路由
  • 仅带有图标的滑动 TabLayout

    下列的this例如 我能够创建一个仅包含图标的 SlidingTabLayout 但我想将它们居中 我需要创建自定义视图还是有其他解决方案 任何帮助 将不胜感激 最后我想通了 这是我的代码示例 为每个选项卡创建一个可绘制对象 在我的例子中我
  • 为什么我不能在node.js(browserify)的require()函数中使用变量作为参数?

    我尝试过类似的东西 var path right here var module require path 但它无法再以这种方式找到模块 同时 var module require right here 奇迹般有效 想要加载带有生成的字符串
  • 将 Visual C 与 MinGW 静态库链接

    如何将 Visual C 2010 控制台应用程序与由以下人员创建的 STATIC 库链接MinGW a格式 它与 Visual C 2010 兼容吗 谢谢 它不兼容 但是 如果您从库中提取所有目标文件 使用ar VC 链接器能够处理这些
  • 从 FileChannel 读取 GZIP 文件 (Java NIO)

    我需要读取 解压给定 FileChannel 的 gz 文件 我尝试过使用 GZIPInputStream 提取 GZIP 档案 但这不需要 FileChannel 我无权访问从中获取 FileChannel 的原始 FileInputSt
  • Scikit-learn:在 GridSearchCV 中评分

    看起来GridSearchCVscikit learn 收集其 内部 交叉验证折叠的分数 然后对所有折叠的分数进行平均 我想知道这背后的理由 乍一看 收集其交叉验证折叠的预测 然后将所选的评分指标应用于所有折叠的预测似乎更灵活 我偶然发现这