顺序回归

重要

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

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

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

创建顺序回归模型

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

注意

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

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

模块概述

本文介绍如何使用 机器学习 Studio (经典 ) 中的序号回归模块创建可用于预测排名值的回归模型。

排名值的一些示例:

  • 以 1 到 5 为比例捕获用户首选品牌的调查响应
  • 竞赛中的完成程序顺序
  • 排名搜索结果中的 URL

有关序号回归的更多信息

当标签或目标列包含数字,但数字表示排名或顺序而不是数值度量时,使用序号回归。

预测序号需要与在连续刻度上预测数字值不同的算法,因为分配给表示排名顺序的数字没有内部小数位。

例如,若要预测学生的测试分数,可以使用标准回归模型,因为学生的测试分数会持续变化,并且可以测量。 但是,若要预测其类排名,必须使用序号回归模型。

有关此算法背后的研究详细信息,请参阅此 (可下载的 PDF) : https://papers.nips.cc/paper/3125-ordinal-regression-by-extended-binary-classification.pdf

如何配置序号回归

此模块将排名问题作为一系列相关分类问题来解决。 因此,该算法使用二进制模型为每个排名创建一系列扩展训练示例,并针对该扩展集进行训练。 此操作的计算成本可能很高。

  1. 将序 号回归模型模块 添加到工作室中的试验 (经典) 。 可以在"回归"类别中的"机器学习 - 初始化"下找到此模块。

  2. 添加支持二元分类的模块,并配置模型。 分类类别中有几个双 模块。

  3. 连接二元分类模型作为序号回归模型模块的输入。

  4. 序号回归模型不需要其他 参数;算法已预先配置了用于解决排名问题的最有效参数。

  5. 连接训练数据集和训练模型模块

  6. 在" 训练模型" 模块中,选择包含排名值的列。

    排名值必须是数值,但它们不需要是整数或正数,只要它们表示序列即可。

    出于处理目的,假定排名的顺序为 1 到 K,其中 1 为最低排名,K 为最高排名。 但是, 即使缩放的 语义相反,训练模型模块也可以正常工作。

    例如,如果在原始调查中,1 是最高分数,5 是最低分,则不会影响模型的处理。

  7. 运行试验。

结果

在训练完成后:

  • 若要进行预测,请将训练的模型以及新数据连接到评分 模型 模块。

  • 若要对标记的数据集执行交叉验证,请将 未训练 的模型连接到 交叉验证模型

示例

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

  • 预测性维护 - 步骤 C:在此示例中,序号回归用于对分类模型输出的值进行排名,前提是该值反映故障分类的严重性。

技术说明

此学习器中使用的顺序回归算法由扩展的二元分类实现,如 Ling Li 和 Hsuan-Tien Lin 在 NIPS 2006 中撰写的《通过扩展的二元分类实现顺序回归》一文中所述。

对输入数据的限制

可以使用任何数值列作为序号回归模型的目标,但在实践中,应该只使用表示某种顺序或排名的数据。

假设排名之间的间隔未知,并且间隔大小对模型并不重要;但是,该模型假定排名顺序遵循数字的自然顺序。

模型本身不会为特定刻度分配任何含义。 换而言之,可以创建一个模型,其中 1 是良好的排名,10 是最差的,在另一个模型中,假设 10 是所需的排名,1 是最差的。

排名算法

X,Y (训练集) 输入向量 x 和标签 y。 标签按顺序表示从 1 到 k 的排名:1,2, ... 、 K.假设对排名排序,以便 1 是最低或最差的排名,K 是最佳或最高排名。

算法的关键在于修改给定的输入特征 X 和标签 Y 以使用扩展示例,然后使用二元分类器来解决序号回归问题。 对二元分类器进行训练,以给出对"排名是否大于 r?"问题的"是/否"答案。

例如,对于训练集的每个事例,都有 K-1 扩展示例,观察到的最大排名为 K。扩展特征的构成方式为:将 K-1 x K-1 标识矩阵的第 i 行追加到所有 i 的输入特征。 如果前 r-1 行的排名为 r,则为标签提供 +1,其余行的排名为 -1。

示例计算

为了说明工作原理,让 x1 成为排名为 3 的训练特征,其中观察到的最大排名为 5。 与此功能对应的扩展示例如下所示:

案例 测试 生成的标签
X11000 排名是否大于 1? 是;因此 +1
X10100 排名是否大于 2? 是;因此 +1
X10010 排名是否大于 3? 否;因此,没有附加功能
X10001 排名是否大于 4? 否;因此,没有附加功能

预期输入

名称 类型 说明
未训练的二元分类模型 ILearner 接口 未训练的二元分类模型

Outputs

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

另请参阅

回归