泊松回归

重要

对机器学习工作室(经典)的支持将于 2024 年 8 月 31 日结束。 建议在该日期之前转换到 Azure 机器学习

从 2021 年 12 月 1 日开始,你将无法创建新的机器学习工作室(经典)资源。 在 2024 年 8 月 31 日之前,可继续使用现有的机器学习工作室(经典)资源。

ML 工作室(经典)文档即将停用,将来可能不会更新。

创建假定数据具有泊松分布的回归模型

类别:机器学习/初始化模型/回归

注意

适用于:机器学习 Studio (经典) 应用

可在 Azure 机器学习设计器中获取类似的拖放模块。

模块概述

本文介绍如何使用 机器学习 Studio (经典) 中的"平衡子回归"模块创建一个平衡回归模型。

平衡回归适用于用于预测数值(通常为计数)的回归模型。 因此,仅在要预测的值满足以下条件时,才应使用此模块创建回归模型:

  • 响应变量呈泊松分布

  • 计数不能为负值。 如果你尝试对负标签使用此方法,则它将彻底失败。

  • 泊松分布是一种离散分布。因此,对非整数使用此方法是没有意义的。

提示

如果你的目标不是计数,泊松回归可能并不是适当的方法。 尝试此类别中的其他模块之一。 有关选择回归方法的帮助,请参阅机器学习算法备忘单

设置回归方法后,必须使用包含要预测的值示例的数据集来训练模型。 然后,可以使用训练后的模型进行预测。

有关泊松回归的详细信息

泊松回归是一种特殊的回归分析,通常用于模型计数。 例如,泊松回归可用于以下方案:

  • 为航班关联的寒冷天气次数建模

  • 估计事件期间的紧急服务呼叫次数

  • 预测促销后的客户查询数

  • 创建列联表

由于响应变量呈泊松分布,因此与最小二乘回归等相比,该模型对数据及其概率分布做出了不同的假设。 因此,对泊松模型的解释应不同于其他回归模型。

如何配置泊松回归

  1. 工作室和经典工作室 中,将" (回归"模块) 。

    可以在"回归"类别中的"机器学习 - 初始化"下找到此模块。

  2. 添加包含正确类型的训练数据的数据集。

    我们建议你先使用规范化数据来规范输入数据集,然后将其用于训练回归量。

  3. "平衡回归"模块的"属性"窗格中,通过设置"创建训练器模式"选项来指定模型的训练方式。

    • 单个参数:如果知道自己想要如何配置模型,请提供一组特定的值作为参数。

    • 参数范围。 如果不确定最佳参数,则使用优化模型超参数模块执行 参数 扫描。 训练程序遍历指定的多个值,以找到最佳配置。

  4. 优化容错:键入一个值,用于定义优化期间的容许区间。 值越小,拟合就会越慢,但准确性越高。

  5. L1 正则化权重和 L2 正则化权重 :键入要用于 L1 和 L2 正则化的值。 “正则化”将约束添加到有关独立于训练数据的模型各个方面的算法。 正则化通常也用来避免过度拟合。

    • L1 正则化很有用,如果目标是能够尽可能为稀疏的模型。

      L1 正则化是通过减去从学员尝试最大程度减少丢失表达式的权重向量的 L1 权重。 L1 范数是 L0 范数的适当近似值,即数目的非零坐标进度的近似值。

    • L2 正则化可防止权重向量中的任何单个坐标在数量级上增长过多。 如果目标是获得整体权重较小的模型,则 L2 正则化很有用。

    在此模块中,你可以应用 L1 和 L2 正则化的组合。 通过组合 L1 和 L2 正则化,可以对参数值的大小施加惩罚。 学员尝试最大程度减少产生负面影响降至最低丢失的一种折中。

    有关 L1 和 L2 正则化的详细讨论,请参阅机器学习的 L1 和 L2 正则化

  6. L-BFGS 的内存大小:指定要为模型拟合和优化保留的内存量。

    L-BFGS 是基于 Broyden-Fletcher-Goldfarb-Shanno (BFGS) 算法的一种特定优化方法。 该方法使用有限的内存 (L) 来计算下一步的方向。

    通过更改此参数,可以影响为下一步的计算而存储的先前位置数和梯度数。

  7. 将训练数据集和未训练的模型连接到其中一个训练模块:

    • 如果将“创建训练程序模式”设置为“单个参数”,请使用训练模型模块。

    • 如果将“创建训练程序模式”设置为“参数范围”,请使用优化模型超参数模块 。

    警告

    • 如果将参数范围传递给训练模型模块,则它只使用参数范围列表中的第一个值。

    • 如果将一组参数值传递给优化模型超参数模块,则当它期望每个参数有一系列设置时,它会忽略这些值,并为学习器使用默认值。

    • 如果选择“参数范围”选项并为任何参数输入单个值,则整个整理过程中都会使用你指定的单个值,即使其他参数的值发生一系列更改。

  8. 运行试验以训练模型。

示例

有关在机器学习中如何使用平衡回归的示例,请参阅Azure AI 库。

  • 示例 6:训练、测试、评估回归:自动导入数据集:此实验比较了两种算法的结果: 平衡回归决策林回归

  • 预防性维护:一个扩展演练,使用 "平衡回归 "来评估决策林模型预测的故障的严重性。

技术说明

假设标签具有"长子分布",则使用"长子回归"对计数数据建模。 例如,可以使用它来预测特定一天呼叫客户支持中心的数量。

对于此算法,假定未知函数(表示 Y)具有一个散点分布。 以如下方式定义长子分布:

假设实例 x = (x0, ..., xd-1) ,则对于每个 k=0,1, ...,模块计算实例值 k 的概率。

鉴于一组训练示例,该算法尝试通过尝试最大化参数的对数可能性来查找 θ0、...、θD-1 的最佳值。 参数 θ0,...,θD-1 的可能性是使用这些参数从分布中采样训练数据的概率。

日志概率可以视为 logp (y =)

预测函数将输出该参数化散点分布的预期值,具体而言:fw,b (x) = E[Y|x] = ewTx+b

有关详细信息,请参阅维基百科中的 "平衡回归" 条目。

模块参数

名称 范围 类型 默认 说明
优化容差 >=double.Epsilon Float 0.0000001 指定优化收敛的容差值。 值越小,拟合就会越慢,但准确性越高。
L1 正则化权重 >=0.0 Float 1.0 指定 L1 正则化权重。 使用非零值来避免过度拟合模型。
L2 正正化权重 >=0.0 Float 1.0 指定 L2 正序列化权重。 使用非零值来避免过度拟合模型。
L-BFGS 的内存大小 >=1 Integer 20 指示用于 L-BFGS 优化器的内存量(以 MB 为单位)。 内存越少,训练速度就越快,但训练的准确性越低。
随机数种子 any Integer 键入一个值以设置模型使用的随机数生成器种子。 保留空白表示使用默认值。
允许未知的分类级别 any 布尔 指示是否应为每个分类列创建附加的级别。 测试数据集中不可用于训练数据集的任何级别将映射到此附加级别。

Outputs

名称 类型 说明
未训练的模型 ILearner 接口 未训练的回归模型

另请参阅

回归
A-Z 模块列表