本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
适用于 Apache MXNet 的模型服务器 (MMS)
适用于 Apache MXNet 的模型服务器 (MMS)
在 MMS 上处理图像分类模型
本教程介绍如何利用 MMS 处理图像分类模型。该模型通过 MMS Model Zoo
在 MMS 上处理示例图像分类模型
-
连接到带 Conda 的深度学习 AMI 的 Amazon Elastic Compute Cloud (Amazon EC2) 实例。
-
激活 MXNet 环境:
-
对于使用 CUDA 9.0 和 MKL-DNN 的 Python 3 上的 MXNet 和 Keras 2,运行以下命令:
$
source activate mxnet_p36 -
对于使用 CUDA 9.0 和 MKL-DNN 的 Python 2 上的 MXNet 和 Keras 2,运行以下命令:
$
source activate mxnet_p27
-
-
使用以下命令运行 MMS。添加
> /dev/null
将在您运行其他测试时生成无提示日志输出。$
mxnet-model-server --start > /dev/nullMMS 现在正在您的主机上运行并且正在侦听推理请求。
-
接下来,使用 curl 命令管理 MMS 的管理终端节点,并告知它您希望它处理的模型。
$
curl -X POST "http://localhost:8081/models?url=https%3A%2F%2Fs3.amazonaws.com%2Fmodel-server%2Fmodels%2Fsqueezenet_v1.1%2Fsqueezenet_v1.1.model" -
MMS 需要知道您要使用的工作线程的数量。对于此测试,您可以尝试 3。
$
curl -v -X PUT "http://localhost:8081/models/squeezenet_v1.1?min_worker=3" -
下载一个小猫图像并将其发送到 MMS 预测终端节点:
$
curl -O https://s3.amazonaws.com/model-server/inputs/kitten.jpg$
curl -X POST http://127.0.0.1:8080/predictions/squeezenet_v1.1 -T kitten.jpg该预测终端节点将返回一个 JSON 格式的预测 (类似于下面的前 5 个预测),其中,图像具有 94% 的可能性为埃及猫,然后有 5.5% 的可能性为猞猁或山猫:
{ "prediction": [ [{ "class": "n02124075 Egyptian cat", "probability": 0.940 }, { "class": "n02127052 lynx, catamount", "probability": 0.055 }, { "class": "n02123045 tabby, tabby cat", "probability": 0.002 }, { "class": "n02123159 tiger cat", "probability": 0.0003 }, { "class": "n02123394 Persian cat", "probability": 0.0002 } ] ] }
-
测试更多映像,或者如果您已完成测试,请停止服务器:
$
mxnet-model-server --stop
本教程重点介绍基本模型处理。MMS 还支持将 Elastic Inference 与模型服务一起使用。有关更多信息,请参阅模型服务与 Amazon Elastic Inference
当你准备好进一步了解其他彩信功能时,请参阅上的彩信文档
其他示例
MMS 具有可在您的 DLAMI 上运行的各种示例。您可以在 MMS 项目存储库
更多信息
要了解更多彩信文档,包括如何使用 Docker 设置彩信,或者如何利用最新的彩信功能,请将彩信项目页面加上星标。