一个机器学习问题的重新定义

任何事物都有两面性。

一些机器学习问题也是如此。并非每个回归问题(你认为的)都需要回归。仔细考虑和审视问题的业务不仅可以帮助开发更好的模型,还可以找到有效的解决方案。

重构或重新定义(reframing)是一种改变机器学习问题输出表示的策略。

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - Three.js虚拟轴心开发包 - 3D模型在线减面 - STL模型在线切割 

1、回归问题重构

例如,我们可以将回归问题转换为分类问题(反之亦然)。

每个机器学习问题都始于范围界定(scoping)。

范围界定涉及从用户的角度思考问题、确定项目范围以及谁将使用它。这可能涉及提出以下问题:

  • 这是一个监督问题还是非监督问题?
  • 我们服务的最终用户是谁?
  • 最终产品对人类生命/财产是否至关重要?
  • 多少错误是可以接受的?

假设,我们想使用线性回归来预测医院每月的运营时间,以便确定医院的人员配备要求。运营时间变量取决于我们数据集的独立变量,例如每月的 X 光检查次数、每月占用的床位天数和/或每月患者的平均住院时间。

因此,这个看似简单的任务看起来是一个回归任务,因为每月的运营时间是一个连续变量。当我们开始构建回归模型时,我们发现这个任务比听起来要难。同一组特征的运营时间会增加,可能是因为一年中某个时期的急性病,或者由于其他一些不一致。我们预测的运营时间可能会有(比如说)10 小时的偏差。但这不会对人员配备要求产生太大影响。

也许我们可以重新构建我们的机器学习目标,以提高性能。

这里的问题是预测运营时间是概率性的。我们可以将目标构建为分类任务,而不是尝试将此变量预测为回归任务。

将实值因变量分解为大小相等的箱/类别:

然后,我们将对这些类别进行one-hot处理,并创建一个多类分类模型,该模型将对离散概率分布进行建模。

当然,我们需要更细粒度的桶。但这只是为了说明目的

分类方法允许模型捕获不同离散范围内的运行时间概率分布,而不必选择分布的平均值。

这在以下情况下非常有用:

  • 变量不呈现典型的钟形曲线(可能是 tweedie 分布)。
  • 当分布为双峰分布(具有两个峰值的分布)时,或者即使分布为正态但方差较大时。
  • 当分布为正态但方差较大时

2、它为什么有效?

我们正在将模型的目标从学习连续值转变为学习离散概率分布;以损失精度为代价,但反过来,我们获得了完整概率密度函数 (PDF) 的表达能力。

这种分类框架的另一个优点是,我们获得了预测值的后验概率分布,这提供了更细微的信息。

3、权衡与替代方案

另一种方法是多任务学习,它使用多个预测头将两个任务(分类和回归)组合成一个模型,但要注意由于数据集的限制而引入标签偏差的风险。

重新构建回归问题是捕捉不确定性的一种非常好的方法。捕捉不确定性的其他方法是进行分位数回归(quantile regression)。

例如,我们可以估计需要预测的条件第 10、20、30、...、90 个百分位数,而不是仅仅预测平均值。分位数回归是线性回归的扩展。另一方面,重新构建可以与更复杂的机器学习模型一起使用。

3.1 预测精度

如上例所示,我们牺牲了精度来获得离散概率分布函数 (PDF) 的表达能力。如果需要更精确,则需要增加分类模型的箱数。

PDF 的锐度表示回归任务的精度。 PDF 越锐利,表示输出分布的标准差越小,而 PDF 越宽,表示标准差越大,因此方差越大。

对于锐利的密度函数,请坚持使用回归模型。

回归的精度由一组固定输入值的概率密度函数的锐度表示

我们可以通过对右侧图中的特征进行分桶处理来获得左侧的相同图。

另外,不要混淆准确度(accuracy)和精确度(precision)的概念:

准确度是测量值与真实值的接近程度。

精确度是(同一项目的)测量值之间的接近程度。

3.2 重构作为限制预测范围的一种方法

很多时候,预测范围是一个实值变量。 仅使用一个神经元的密集层可能会使预测输出超出可接受/可解释的范围。

重构可以在这里起到救援作用。

为了限制预测范围,将倒数第二层的激活函数设为 S 型函数(通常与分类相关),使其在 [0, 1] 范围内,并让最后一层将这些值缩放到所需范围:

MIN_Y = 3
MAX_Y = 20
input_size = 10inputs = keras.layers.Input(shape=(input_size,))
h1 = keras.layers.Dense(20, 'relu')(inputs)
h2 = keras.layers.Dense(1, 'sigmoid')(h1) # a sigmoid layer
output = keras.layers.Lambda(lambda y: (y*(MAX_Y-MIN_Y) + MIN_Y))(h2) # a custom layer for scaling
model = keras.Model(inputs, output)

由于输出是 S 型函数,因此模型实际上永远不会达到范围的最小值或最大值,只是接近它。

3.3 标签偏差

基于神经网络的推荐系统被设计为回归或分类模型,比矩阵分解更具优势,因为它们可以结合矩阵分解中学习到的用户和项目嵌入之外的更多附加特征。

但是,将目标设计为分类问题(观众是否会点击)可能会导致推荐系统优先考虑点击诱饵。

在这种情况下,最好将目标重新定义为回归问题,预测将观看的视频部分,或视频观看时间,甚至预测用户观看至少一半视频片段的可能性。

3.4 多任务学习

我们甚至可以尝试两者,而不是将任务重新设计为回归或分类,这称为多任务学习。

多任务学习是指优化多个损失函数的任何机器学习模型。

神经网络中多任务学习最常见的两个分支是:

  • 硬参数共享——当模型的隐藏层在所有输出任务之间共享时。
  • 软参数共享——当每个标签都有自己的神经网络和自己的参数时,通过某种形式的正则化鼓励不同模型的参数相似。

多任务学习的两种常见实现


原文链接:机器学习问题的重新定义 - BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/841211.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何用ai打一场酣畅淋漓的数学建模比赛? 给考研加加分!

文章目录 数学建模比赛1. 数学建模是什么?2. 数学建模分工合作2.1 第一:组队和分工合作2.2 第二:充分的准备2.3 第三:比赛中写论文过程 3. 数学建模基本过程4. 2023全年数学建模竞赛时间轴5. 数学建模-资料大全6. 数学建模实战 数…

【feature selection】特征选择学习笔记

文章目录 1. 什么是特征选择2. 特征选择与特征提取的区别3. 特征选择的方法3.1 Filtering过滤法3.2 Wrapper包装法3.3 Embedding嵌入法 4. 特征选择示例4.1 方差选择法示例4.2 递归特征消除法示例 1. 什么是特征选择 特征选择是特征工程的内容, 其目标是寻找最优特征子集。剔除…

MTK下载AP

只升级选Firemare Upgrade ,点下载后,关机下插入USB

无人机反制:光电干扰一体设备技术详解

一、光电干扰技术原理 光电干扰技术是一种利用光学和电子技术手段对无人机实施干扰和控制的先进技术。该技术通过向无人机发射特定频率和强度的光信号或电磁信号,干扰无人机的视觉系统、控制系统或通信链路,进而达到反制无人机的目的。光电干扰技术具有…

N进制计数器【01】

N进制计数器 前面介绍过二进制计数器和十进制计数器,但是在很多时候需要到其他进制的计数器,我们把这些任意进制的计数器简称为 N 进制计数器 设计 N 进制计数器的方法有两种: 用时钟触发器和门电路设计(前面常用的方法&#xf…

垃圾回收机制及算法

文章目录 概要对象存活判断引用计数算法可达性分析算法对象是否存活各种引用 垃圾收集算法分代收集理论复制算法标记清除算法标记-整理算法 概要 垃圾收集(Garbage Collection, 下文简称GC),其优缺点如下: 优点&#…

Nature Communications | 柔性半导体器件的大规模集成(柔性半导体器件/柔性电子)

韩国中央大学Sung Kyu Park、 韩国成均馆大学Jong-Woong Kim和Yong-Hoon Kim团队,在《Nature Communications》上发布了一篇题为“Full integration of highly stretchable inorganic transistors and circuits within molecular-tailored elastic substrates on a large scal…

OZONBIGSELL分析产品工具,OZON平台数据分析

在当今的数字化时代,电商平台的竞争日趋激烈,数据成为了企业决策的重要支撑。OZON作为俄罗斯领先的电商平台,其背后蕴含的海量数据对于卖家而言,既是挑战也是机遇。接下来看看OZONBIGSELL这一分析产品工具,以及如何利用…

等保2.0看这一篇就够了

一、等级保护介绍 1.1什么是等级保护 网络安全等级保护是指对国家重要信息、法人和其他组织及公民的专有信息以及信息和存储、传输、处理这些信息的信息系统分等级实行安全保护,对信息系统中使用的信息安全产品实行按等级管理,对信息系统中发生的信息安…

ROS | C++和python实现发布结点和订阅结点

发布者结点: 代码实现: python: C: C和Python发布结点的差异: python: 发布结点pub 大管家rospy调用publisher函数发布话题 (话题,类型,话题长度) C: 先定义一个大管家:NodeHandle 然后大管家发布话题…

C# NetworkStream 流的详解与示例

文章目录 一、NetworkStream类的基本概念1.1 NetworkStream类概述1.2 NetworkStream类属性1.3 NetworkStream类方法 二、NetworkStream的连接方式三、NetworkStream的传输模式四、NetworkStream类示例服务器端代码:客户端代码: 五、总结 在C#中&#xff…

VS Code添加高亮缩进功能

当代码缩进层次较多时,为了视觉上容易识别,一般希望可以多个缩进以不同颜色进行高亮显示, VS Code 中 indent-rainbow 插件可以实现这个功能。

python列表生成式的魅力:轻松创建新列表

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 1. 列表生成式的基本结构 2. 列表生成式的进阶应用 3. 结合其他结构使用列表生成式 1. 列表…

HTML静态网页成品作业(HTML+CSS)——利物浦足球俱乐部介绍网页设计制作(5个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,共有5个页面。 二、作品演示 三、代码目录 四、网站代码 HTML部分代…

校园招新之获取进QQ群但未报名人员

校园的社团、实验室招新一般由是校领导会发一个QQ通知,让各个班的同学们进一个招新群。 群里面会有负责人提示大家报名,但是群成员不总是都会报名,我们需要的就是,找到那些,已经进群,但是没有报名的同学&am…

ELK 日志监控平台(一)- 快速搭建

文章目录 ELK 日志监控平台(一)- 快速搭建1.ELK 简介2.Elasticsearch安装部署3.Logstash安装部署4.Kibana安装部署5.日志收集DEMO5.1.创建SpringBoot应用依赖导入日志配置文件 logback.xml启动类目录结构启动项目 5.2.创建Logstash配置文件5.3.重新启动L…

当HR问你是否单身时,该怎么回答?

知识星球(星球名:芯片制造与封测技术社区,星球号:63559049)里的学员问:我是晶圆厂厂务工程师,最近在面试新工作,但是几乎每家HR都会问我同一个问题:你结婚没有&#xff1…

解密Spring Boot Starter与自动配置:探秘神奇的背后

starter可以理解为Spring Boot中的一站式集成启动器,包含了一系列可以集成到应用中的依赖项,可以快递集成spring组件及其框架,而不需要到处找示例代码。 一、为什么要用starter? 在springboot还没有出来之前,我们使用…

wps使用(解决毕业论文)

目录自动生成 页码自动生成 一部分使用I II III IV 格式,一部分使用1,2,3,4 格式 先设置全部文章为I II III IV 格式,然后再需要的地方再设置1,2,3,4 格式 一键设置中文、英文、数…

2024年全国大学生电工数学建模竞赛B题解析 | 数据处理 代码 论文分享

B 题:大学生平衡膳食食谱的优化设计及评价 1 数据预处理2 问题一2.1 问题1.12.1.1 评价体系的构建2.1.2 指标计算2.1.3 指标计算结果2.1.4 基于层次分析法的膳食营养评价模型2.1.5 评价模型的求解 2.2 问题1.22.2.1 食物与成分间拓扑关系的构建2.2.2 微调模型的建立…