Azure Machine Learning – 批处理执行部分工作

我一直在参考这个库示例,但我似乎无法让批处理执行在一个作业中返回多个评分结果。

一切都正常工作,即可以部署预测Web API并请求单个评分。但每当我发送一个批处理执行作业(使用示例C#代码)时,如果请求超过一个,例如:

ID1,ID21,23,15,1

Azure ML 只会返回第一个请求1,2的预测评分,而不会返回其他行的评分。

我不确定我哪里做错了,但我应该期望得到所有三个请求的结果。任何帮助将不胜感激!


回答:

看起来你选择了一个不幸的例子:零售预测Web服务中的自定义脚本明确地丢弃了除第一个ID对之外的所有内容。要看到这一点,尝试加载“零售预测:第6步中的6A”实验,并查看“创建完整时间序列。添加未来时间戳”模块中的代码。你会发现以下内容:

all.time <- data.frame(ID1 = data$ID1[1], ID2 = data$ID2[1], time = all.time)data <- join(all.time, data, by = c("ID1", "ID2", "time"), type = "left")maml.mapOutputPort("data");

左连接语句将忽略任何data$ID1 != data$ID1[1]和data$ID2 != data$ID2[1]的行。这就是为什么你只保留了第一个ID对的原因。

看起来在单个作业中对多个ID对进行批量预测并不是自定义脚本作者为他们的Web服务设想的用例。如果你精通R语言并且特别对这个用例感兴趣,你可以修改这个实验中的脚本以支持同时处理多个时间序列。否则,你可能需要尝试另一个示例实验。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注