如何使用 Watson Studio 和机器学习部署 scikit learn python 模型?
How can I deploy a scikit learn python model with Watson Studio and Machine Learning?
假设我已经有一个 scikit-learn 模型,我想将其保存到我的 Watson Machine Learning 并使用 python 客户端进行部署。
python 客户端文档:http://wml-api-pyclient.mybluemix.net
我喜欢:
clf = svm.SVC(kernel='rbf')
clf.fit(train_data, train_labels)
# Evaluate your model.
predicted = clf.predict(test_data)
我想做的是将此模型部署为可通过 REST API 访问的 Web 服务。
我在此处阅读了 Watson 机器学习文档:https://dataplatform.cloud.ibm.com/docs/content/analyze-data/wml-ai.html?audience=wdp&context=analytics
但是我在部署模型时遇到了问题。
对于 scikit 学习模型,Watson Machine Learning 需要一个 pipeline
对象,而不仅仅是一个拟合模型对象。这样您也可以将数据转换和预处理逻辑部署到同一端点。例如,尝试将您的代码更改为:
scaler = preprocessing.StandardScaler()
clf = svm.SVC(kernel='rbf')
pipeline = Pipeline([('scaler', scaler), ('svc', clf)])
model = pipeline.fit(train_data, train_labels)
然后您将能够按照此处的文档部署模型:http://wml-api-pyclient.mybluemix.net/#deployments
从 Watson Studio 中的笔记本,您可以
from watson_machine_learning_client import WatsonMachineLearningAPIClient
wml_credentials = {
"url": "https://ibm-watson-ml.mybluemix.net",
"username": "*****",
"password": "*****",
"instance_id": "*****"
}
client = WatsonMachineLearningAPIClient(wml_credentials)
然后使用客户端部署模型先将模型保存到存储库。
您可以在本教程笔记本中了解如何完成所有这些操作:https://dataplatform.cloud.ibm.com/exchange/public/entry/view/168e65a9e8d2e6174a4e2e2765aa4df1
来自社区
您也可以将其部署为 python 函数。您需要的是将所有功能包装到一个可部署的函数中 (learn python closure)。
您使用凭据的方式与此方法相同。
- 第 1 步:定义函数
- 第 2 步:将函数存储在存储库中
之后可以通过两种方式进行部署和访问
- 使用 Python 客户端
- 使用 REST API
这个
里面已经详细解释过了
假设我已经有一个 scikit-learn 模型,我想将其保存到我的 Watson Machine Learning 并使用 python 客户端进行部署。
python 客户端文档:http://wml-api-pyclient.mybluemix.net
我喜欢:
clf = svm.SVC(kernel='rbf')
clf.fit(train_data, train_labels)
# Evaluate your model.
predicted = clf.predict(test_data)
我想做的是将此模型部署为可通过 REST API 访问的 Web 服务。
我在此处阅读了 Watson 机器学习文档:https://dataplatform.cloud.ibm.com/docs/content/analyze-data/wml-ai.html?audience=wdp&context=analytics
但是我在部署模型时遇到了问题。
对于 scikit 学习模型,Watson Machine Learning 需要一个 pipeline
对象,而不仅仅是一个拟合模型对象。这样您也可以将数据转换和预处理逻辑部署到同一端点。例如,尝试将您的代码更改为:
scaler = preprocessing.StandardScaler()
clf = svm.SVC(kernel='rbf')
pipeline = Pipeline([('scaler', scaler), ('svc', clf)])
model = pipeline.fit(train_data, train_labels)
然后您将能够按照此处的文档部署模型:http://wml-api-pyclient.mybluemix.net/#deployments
从 Watson Studio 中的笔记本,您可以
from watson_machine_learning_client import WatsonMachineLearningAPIClient
wml_credentials = {
"url": "https://ibm-watson-ml.mybluemix.net",
"username": "*****",
"password": "*****",
"instance_id": "*****"
}
client = WatsonMachineLearningAPIClient(wml_credentials)
然后使用客户端部署模型先将模型保存到存储库。
您可以在本教程笔记本中了解如何完成所有这些操作:https://dataplatform.cloud.ibm.com/exchange/public/entry/view/168e65a9e8d2e6174a4e2e2765aa4df1 来自社区
您也可以将其部署为 python 函数。您需要的是将所有功能包装到一个可部署的函数中 (learn python closure)。
您使用凭据的方式与此方法相同。
- 第 1 步:定义函数
- 第 2 步:将函数存储在存储库中
之后可以通过两种方式进行部署和访问
- 使用 Python 客户端
- 使用 REST API
这个