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

概述

图像说明生成器根据固定词汇表生成描述 COCO 数据集中图像内容的说明。该模型包含一个编码器模型(使用在 ImageNet-2012 数据上训练的 Inception-v3 架构的深层卷积网络)和一个解码器模型(根据来自图像编码器模型的编码进行训练的 LSTM 网络)。该模型的输入是图像,输出则是描述图像内容的语句。

该模型基于显示讲述图像说明生成器模型。

模型元数据

领域 应用 行业 框架 训练数据 输入数据格式
视觉 图像说明生成 通用 TensorFlow COCO 图像

参考资料

许可

组件 许可 链接
此代码仓库 Apache 2.0 许可
模型权重 MIT 预先训练的显示讲述模型
模型代码(第三方) Apache 2.0 im2txt
测试资产 各种各样 资产 README

可用于部署此模型的选项

可使用以下方法部署此模型:

  • 从 Dockerhub 部署:

    docker run -it -p 5000:5000 codait/max-image-caption-generator
    
  • 在 Red Hat OpenShift 上部署:

    遵照本教程中有关 OpenShift Web 控制台或 OpenShift Container Platform CLI 的操作说明,并将 codait/max-image-caption-generator 指定为图像名称。

  • 在 Kubernetes 上部署:

    kubectl apply -f https://raw.githubusercontent.com/IBM/MAX-Image-Caption-Generator/master/max-image-caption-generator.yaml
    

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

  • 本地部署:遵照 GitHub 上的模型 README 中的说明进行操作

用法示例

您可以通过以下方式测试或使用此模型

使用 cURL 测试该模型

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

curl -F "image=@assets/surfing.jpg" -X POST http://127.0.0.1:5000/model/predict
{
  "status": "ok",
  "predictions": [
    {
      "index": "0",
      "caption": "a man riding a wave on top of a surfboard .",
      "probability": 0.038827644239537
    },
    {
      "index": "1",
      "caption": "a person riding a surf board on a wave",
      "probability": 0.017933410519265
    },
    {
      "index": "2",
      "caption": "a man riding a wave on a surfboard in the ocean .",
      "probability": 0.0056628732021868
    }
  ]
}

在 Node-RED 流中测试该模型

完成 node-red-contrib-model-asset-exchange 模块设置操作说明,并导入 image-caption-generator 开始流程。

在 CodePen 中测试该模型

了解在 CodePen 中如何将图像发送到该模型以及如何呈现结果。

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

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

链接

资源和贡献

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

本文翻译自:Image Caption Generator(2018-09-21)