Py学习  »  机器学习算法

从 MAX 网站中获取模型,一秒开始你的深度学习应用

AI研习社 • 5 年前 • 427 次点击  

本文为 AI 研习社编译的技术博客,原标题 Ready-to-Use Deep-Learning Models,作者为 Patrick Titzler。

翻译 | 老周     整理 | MY    


您是否想过对图像进行分类、识别图像中的人脸或位置、处理自然语言或文本,或者根据应用程序中的时间序列数据创建推荐? 通过深度学习(使用深度神经网络的机器学习),你可以做到这一点,甚至超出你期望。

工作中的目标识别。照片来源于 Unsplash 网站(Alexis Chloe 提供)https://unsplash.com/photos/dD75iU5UAU4 

为了将深度学习应用到您的数据(文本、图像、视频、音频等)中,您需要一个预先训练好的模型、一个运行时环境、数据清洗,特征转换,以及后期逻辑处理转换模型,以便得到期望的结果。

让我们简单地看一看如果您要使用深度学习模型通常需要完成的步骤:

  • 获得一个适合你需要的训练有素的深度学习模式。深度学习模型往往(非常)庞大和(非常)复杂,有些模型甚至还没有被很好地理解。训练这些模型通常需要时间和资源,需要大量的数据和大量的机器学习专业知识,以及诸如 TensorFlow、Caffe、PyTorch 或 Keras 等框架的知识。

  • ETL 过程:实现预处理输入的包装器代码,调用框架以生成模型输出并将输出转换为适合应用程序的格式。

预训练的模型+包装器= 深度学习应用使用前提准备

为了让您和我这样的开发人员简化这个过程,我们设置了模型资产交换 Model Asset Exchange(MAX)(https://developer.ibm.com/code/exchanges/models/)。 IBM Code Model Asset Exchange (MAX) 是一站式交流平台,开发人员可在此查找和使用免费的开源深度学习模型,它提供使得经过良好测试的机器学习与深度学习模型供大家免费使用。

如果您在本地计算机上安装了 Docker(或者可以将 docker 容器部署到云端),您将在不到五分钟的时间内运行基本的即用型深度学习服务。

注意:模型资产存储库还包括一个用于部署到 Kubernetes 的启动器配置文件。


  入门

从 MAX 网站中选择所需的模型,克隆引用的 GitHub 存储库(它包含您需要的所有内容),构建并运行 Docker 映像。

注意:Docker 镜像也在 Docker Hub 上发布。

例如,如果您想用标题注释图像,描述可视化的内容,请选择图像标记模型(https://github.com/IBM/MAX-Image-Caption-Generator)并在终端窗口中运行以下命令:

容器运行后,您可以使用公开的 REST API 来探索 Swagger 规范(https://swagger.io/)或使用该模型。

Docker 容器提供了从 Model Asset Exchange 探索和使用深度学习模型所需的所有功能。

在您的 web 浏览器中打开下面这个链接:http://localhost:5000 ,来访问 Swagger 规范并查看可用的 API 端点。请注意,API 端口号因型号而异; 例如 一些 Docker 镜像可能会暴露训练的端口号,而有些则不会。

注意:服务隐藏了很多复杂性。对于初学者来说,您不必精通用于在模型上操作的框架。您也不必将输入转换为框架理解的内容,或者将模型输出转换为应用程序友好的格式。


  初步使用 API 

测试驱动服务的最快方法是通过生成的 Swagger UI。提供请求的输入(在此示例中为图像的位置)并发送预测请求:

使用 Swagger UI 运行一个快速测试。注意本例中的低概率;生成的图像标题可能不能准确地反映图像内容

或者,使用命令行通过 http 协议调用 API 开发环境发送请求,提供所需的输入:.

如果请求被成功处理,则返回一个特定模型的 JSON,应用程序可以根据需要使用该响应。


  如何使用 API

要使用该服务,请调用所需的 REST API,按格式提供必须的输入。对于某些模型,我们创建了一个示例 Web 应用程序,例如用于图像标题模型的 Python 应用程序(https://github.com/IBM/MAX-Image-Caption-Generator-Web-App/)。要确定您感兴趣的模型是否存在示例应用程序,请参阅 GitHub 中的模型资产的 README 文件。

使用其内容描述注释图像。


  终言:

请记住,您的数据是独一无二的,如果他们接受训练的数据与您的数据非常不同,模型可能会产生意外结果。俗话说:一双鞋的尺寸并不适合所有人。您有时可能必须使用自己的数据训练模型以达到可接受的准确度。

模型提供。请参阅每个模型的 README 以了解其起源、培训数据集、许可条款等详细信息。

欢迎您定制 docker 映像以满足您的需求。有许多方法可以增强它们。我们的目标是提供一个你可以建立的基础镜像。因此,如果您想使用 API 令牌限制访问,或者需要不同的输出格式,请按照你的要求修改它并使用。

如果运行 docker 镜像不适合当前的应用场景,请继续保持关注。正如 Maureen McElaney 在她的博客文章中所述,我们已经开始研究在您的常用浏览器中提供这些模型的其他方法。

对 MAX 好奇嘛?想知道 MAX 是否满足你的需求了吗?点这里(https://developer.ibm.com/code/exchanges/models/)看一看吧 


原文链接:https://medium.com/ibm-watson-data-lab/ready-to-use-deep-learning-models-f234be9ccfc3


点击文末【阅读原文】即可观看更多精彩内容:

实例+代码,你还怕不会构建深度学习的代码搜索库吗

深度学习优化入门:Momentum、RMSProp 和 Adam

使用 Scikit-learn 理解随机森林

斯坦福CS231n李飞飞计算机视觉经典课程(中英双语字幕+作业讲解+实战分享)


等你来译:

剖析深度学习框架

7月最好的机器学习GitHub存储库和Reddit线程

如何基于 Keras, Python,以及深度学习进行多 GPU 训练

现代游戏理论和多代理式强化学习系统



今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/l6Cxd2h5q3
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/23288
 
427 次点击