gpt4 book ai didi

python - 为什么通过 Web 服务 API 调用 Azure ML 分类模型不返回概率分数?

转载 作者:行者123 更新时间:2023-12-03 04:01:49 29 4
gpt4 key购买 nike

我是 Azure 的新手,也是一位代码量非常低的新晋数据科学家(这似乎对我不利)。无论如何!几天前,我在 ML Studio 中使用 Azure AutoML 训练了一个模型,并将最成功的模型注册为带有端点的 Web 服务。现在,当我使用以下 Python 代码调用该模型时,它仅返回预测,而不返回概率分数。 AutoML 已将“Stackensemble”部署为分类问题的最佳模型。我有很多用 Python 编写的代码,并且更喜欢一种能够轻松适合我的代码的方法,而不是非常不同的方法。注意:HTTP 和 get/post 请求不是我的强项,因此任何简单易懂的解释对我来说都是非常有益的。谢谢!

我用来调用api的代码

resp = requests.post(scoring_uri, input_testdata_with_2obs, headers=headers)
打印(resp.text)

我得到了什么(仅预测):

"{\"结果\": [\"损失\",\"损失\"]}"

我还在其他帖子和 Azure 文档中在线找到了以下代码,但我不知道如何将其与已部署的模型(训练后)一起使用。我用来调用 API 的 Python 代码中需要将以下代码放在哪里?

best_run,fitted_model = automl_run.get_output()
class_prob = Fitted_model.predict_proba(X_test)

最佳答案

此链接应该有帮助:https://learn.microsoft.com/en-us/azure/machine-learning/data-science-virtual-machine/how-to-track-experiments

from azureml.core import Webservice
import json

# if you called your service differently then change the name below
service = Webservice(ws, name="diabetes-service")

input_payload = json.dumps({
'data': X_test[0:2].tolist(),
'method': 'predict' # If you have a classification model, you can get probabilities by changing this to 'predict_proba'.
})

output = service.run(input_payload)

print(output)

第 3 步展示了如何将 'method' : 'predict_proba' 添加到 'data' 下方的 JSON 文件中,以便通过 API 实现 Predict_proba

关于python - 为什么通过 Web 服务 API 调用 Azure ML 分类模型不返回概率分数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62034224/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com