开源技术 * IBM 微讲堂:Kubeflow 系列(观看回放 | 下载讲义) 了解详情

概述

场景分类器(Scene Classifier)可识别 Places2 数据集的 Places365-Standard 子集中的 365 种不同类别的场景及位置。此模型基于 Places365-CNN 模型,由一个采用 ResNet 架构的预先训练的深度卷积网络组成,这个模型已根据 ImageNet-2012 数据集进行了训练。之后,又根据 Places365-Standard 数据集进行了微调。此模型的输入是 224×224 图像,而输出是预计类别概率的列表。使用的具体模型变体是 PyTorch Places365 ResNet18 模型

模型元数据

领域 应用 行业 框架 训练数据 输入数据格式
视觉 图像分类 普通 Pytorch Places365 Image (RGB/HWC)

参考资料

许可

组件 许可 链接
模型 GitHub 代码库 Apache 2.0 许可
模型权重 CC BY 许可 Places365-CNN 模型许可
模型代码(第三方) MIT Places365-CNN 许可
测试资产 CC0 样本 README 文件

此模型的可用部署选项

可以使用以下机制来部署此模型:

  • 通过 Dockerhub 进行部署:

    docker run -it -p 5000:5000 codait/max-scene-classifier
    
  • 在 Red Hat OpenShift 上部署:

    遵循本教程中有关 OpenShift Web 控制台或 OpenShift Container Platform CLI 的操作说明,并指定 codait/max-scene-classifier 作为镜像名称。

  • 在 Kubernetes 上部署:

    kubectl apply -f https://raw.githubusercontent.com/IBM/MAX-Scene-Classifier/master/max-scene-classifier.yaml
    

    可以在此处找到有关如何将此 MAX 模型部署到 IBM Cloud 上的生产环境的更详细的教程。

  • 本地:遵循 GitHub 上的模型 README 文件中的操作说明

用法示例

您可以测试或使用此模型

使用 cURL 测试模型

在部署模型后,可以在命令行中测试该模型。例如,如果在本地运行:

curl -F "image=@samples/aquarium.jpg" -XPOST http://localhost:5000/model/predict

您应该会看到与下面类似的 JSON 响应:

{
  "status": "ok",
  "predictions": [
    {
      "label_id": "9",
      "label": "aquarium",
      "probability": 0.97350615262985
    },
    {
      "label_id": "342",
      "label": "underwater\/ocean_deep",
      "probability": 0.0062678409740329
    }
  ]
}

在 Node-RED 流程中测试模型

遵循 node-red-contrib-model-asset-exchange 模型设置的操作说明,并导入 scene-classifier 入门级流程。

在无服务器应用程序中测试模型

通过遵循在 IBM Cloud Functions 中利用深度学习教程中的操作说明,可以在无服务器应用程序中使用此模型。

资源与贡献

如果您有兴趣为 Model Asset Exchange 项目做出贡献或有任何疑问,遵循此处的操作说明。

本文翻译自:Scene Classifier(2018-09-21)