【问题标题】:Azure ML's web service asking for label?Azure ML 的 Web 服务要求标签?
【发布时间】:2016-10-13 18:16:02
【问题描述】:

我在 Azure ML 中构建了一个线性回归算法。在“评分模型”模块上,我实际上可以看到预测和其他功能。但是,当我将此项目部署为 Web 服务时,该服务需要数据的实际标签(例如,我试图预测房屋的价格,它要求我提供房屋的价格来进行预测),这对我没有任何意义......我做错了什么?在“火车模型”模块上,我将标签列设置为 HousePrice,这就是我要预测的...

这是我的模型:

我尝试将该字段留空,但预测返回 null...

【问题讨论】:

  • 您在训练模型中正确指定了“标签列”吗?请重新检查。检查您是否已将“Web 服务输入”模块附加到正确的位置。

标签: azure-machine-learning-studio


【解决方案1】:

输入架构(所需输入的名称/类型)基于图表中您附加“Web 服务输入”模块的位置。要获得所需的架构,您需要在实验中找到(或在必要时创建)一个位置,其中数据具有您想要的列名称/类型。

考虑这个简单的示例实验,它预测名为“收入”的字段是高于还是低于 5 万美元/年:

当我们点击“设置网络服务”时,会自动生成下图:

由于输入数据集和“Web 服务输入”模块连接到同一个端口,因此 Web 服务架构将完美匹配输入数据集的架构。这很不幸,因为输入数据集包含一个名为“income”的列,这是我们的 Web 服务应该预测的——这相当于您遇到的问题。

为了解决这个问题,我们需要在实验图中创建一个位置,从输入数据集中删除不需要的“收入”字段,并在此处附加“Web 服务输入”模块:

通过这种安排,Web 服务只请求对模型进行评分实际需要的特征。我相信您可以使用类似的方法来创建预测实验,使用您自己工作所需的任何输入模式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多