首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

GCP 上的人工智能实用指南:第三、四部分

必须使用变量保存第一个元图,以便构建 SavedModel。 以下元图及其图说明易于保存。 当必须保存属性并将其写入或复制到磁盘时,可以在插入元语法定义时提供属性。...如果将多个元图定义连接到同名资产,则仅保留第一个版本。 每个 SavedModel 元图必须用反映元图功能和特定于案例的用户标签的标签标注。...SavedModel 中的定义元图的标记集与 Loader API 中的标记集完全匹配,是加载程序加载的图元。 如果没有定义元图与列出的标签匹配,将返回错误。...例如,需要 GPU 服务的加载程序可以通过在tensorflow::LoadSavedModel(...)中指定标签来仅加载带有tags=serve(GPU)标注的元图。...在构建模式的后续迭代时,请将其存储在云存储桶中的单独目录中。 如果您部署带有自定义代码或自定义预测例程的 Science Learning 管道,则还必须上传包含自定义代码的源交付包。

6.9K10

《Scikit-Learn、Keras与TensorFlow机器学习实用指南(第二版)》第19章 规模化训练和部署TensorFlow模型

包含一个或多个元图。...元图是计算图加上了函数签名定义(包括输入、输出名,类型和形状)。每个元图可以用一组标签做标识。例如,可以用一个元图包含所有的计算图,包括训练运算(例如,这个元图的标签是"train")。...但是,当你将tf.keras模型传给函数tf.saved_model.save(),默认存储的是一个简化的SavedModel:保存一个元图,标签是"serve",包含两个签名定义,一个初始化函数(__...填写模型细节说明(见图19-5),点击创建。 ? 图19-5 在Google Cloud AI Platform创建新模型 AI Platform有了模型,需要创建模型版本。...图19-6 在Google Cloud AI Platform上创建一个新模型版本 恭喜,这样就将第一个模型部署在云上了。

6.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    TensorFlow 2.0 的新增功能:第三、四部分

    这意味着,最终,在 TensorFlow 中创建的任何模型,无论其创建方式如何,都将转换为统一的计算图。 这样就可以使用一个统一的格式保存和加载所有模型。...您可能还记得,模型接受任何维数的张量,并返回包含原始元素平方的相同形状的张量。 首先让我们看一下模型中存在的元图数量。...contains the following tag-sets: serve 如前所述,使用标记集来标识元图。...在这里,我们可以看到只有一个名为serve的标签集。 我们可能还想看一下构成该元图的组成函数。...可以使用套件中demo文件夹中包含的 Google Cloud 语音转文本 API 和 AIY API 在语音工具包上创建自定义语音用户界面。

    2.4K20

    GCP 上的人工智能实用指南:第一、二部分

    图像中可以包含一个或多个对象,并且需要以样本为基础定义和验证各个输出标签以确保准确率。 我们需要建立一个数据集来训练图像分类模型。...在 Cloud Storage 上选择一个 CSV 文件:一个逗号分隔的文件,其中包含 Google Cloud Storage 上图像的路径列表及其标签(如果在创建数据集时可用)。...使用 Cloud Machine Learning Engine 的异步批量预测 为了使用上一节中训练和导出的模型来提供在线预测,我们必须在 AI 平台中创建模型资源,并在其中创建版本资源。...如果愿意,可以使用未部署的 SavedModel Cloud 存储路径,称为 Model URI。 模型 URI:您要从中接收投影的模型名称和版本。 如果未指定版本,则使用模型的默认版本。...包含此选项以允许您指定要与 AI Platform 模型一起使用的运行时版本。 对于已部署的模型版本,应始终忽略此值,以告知服务使用在部署模型版本时指定的相同版本。

    17.2K10

    在几分钟内构建强大的可用于生产的深度学习视觉模型

    考虑到将在本文中关注的问题-图像分类,将为模型提供一些特定的访问模式。在最终用户或客户端上,将有一个需要标记或分类的输入图像。...这将在定义明确的目录层次结构中创建一个protobuf文件,并且还将包含如下所示的版本号。 ? TensorFlow Serving允许我们选择在进行推理请求时要使用的模型版本或“可服务”版本。...对于这两种方法,通常创建带有必要内容和标头的有效负载消息,并将其发送到服务器。服务器又应返回包含预测的消息。将使用该requests模块进行HTTP请求。...如有必要,请随时在本文结尾处查看有关CNN的简要说明。测试本文的平台是带有NVIDIA Tesla T4 的Google Cloud Platform深度学习VM,这使得在云上进行实验变得非常容易!...看起来TF Serving能够正确地服务于模型推断请求!请注意,在将请求发送到服务器之前,必须预处理图像并创建适当的有效负载。

    1.3K30

    TensorFlow 2.0 正式版现已发布

    /install TensorFlow 2.0 由社区推动,社区的声音让我们了解到开发者需求的是一个灵活、强大且易于使用的平台,并且支持部署到任何平台上。...为了能够在不同运行时环境(如云、Web、浏览器、Node.js、移动端以及嵌入式系统)中运行模型,我们使用了标准化的文件结构 SavedModel 。...让开发者在TensorFlow 中运行模型的同时,可以通过 TensorFlow Serving 部署模型,通过 TensorFlow Lite 部署至移动或嵌入式系统中,并且在浏览器或 Node.js...“Tensorflow 2.0 包含了许多出色的 GPU 加速功能,我们迫不及待地想看到社区开发者们使用这些先进的工具创建出的令人惊叹的 AI 应用程序。”...还有很多值得介绍的功能,为了帮助大家快速了解这些新功能,我们为 TensorFlow 2.0 中的所有新功能创建了便捷指南。

    1.2K40

    官宣!TensorFlow 2.0 正式发布

    /install TensorFlow 2.0 由社区推动,社区的声音让我们了解到开发者需求的是一个灵活、强大且易于使用的平台,并且支持部署到任何平台上。...为了能够在不同运行时环境(如云、Web、浏览器、Node.js、移动端以及嵌入式系统)中运行模型,我们使用了标准化的文件结构 SavedModel 。...让开发者在TensorFlow 中运行模型的同时,可以通过 TensorFlow Serving 部署模型,通过 TensorFlow Lite 部署至移动或嵌入式系统中,并且在浏览器或 Node.js...“Tensorflow 2.0 包含了许多出色的 GPU 加速功能,我们迫不及待地想看到社区开发者们使用这些先进的工具创建出的令人惊叹的 AI 应用程序。”...还有很多值得介绍的功能,为了帮助大家快速了解这些新功能,我们为 TensorFlow 2.0 中的所有新功能创建了便捷指南。

    95220

    谷歌教你学 AI-第四讲部署预测模型

    通过从训练的模型转换为部署的、自动扩展的预测服务,我们可以用更多时间来处理数据。 进行预测:最后一步 我们收集了数据,最终完成了一个合适的模型并验证了它的性能。...在接受提供预测服务的挑战时,我们希望部署一个专门为服务而构建的模型。特别是一个快速、轻量级的模型,而且是静态的,因为我们不希望在提供服务时出现更新。...当创建新的模型版本时,Cloud machine learning engine将从云存储中读取。 在创建bucket时,一定要选择区域存储类,以确保计算和存储在同一区域。...创建新的模型 在云机器学习UI中,我们可以创建一个新的模型,这实际上是对所有发布版本的封装。版本保存了单个导出模型,而模型抽象帮助将进入的流量导入选择的适当版本。...创建新版本 接下来,我们将创建一个版本,通过为这个特定的模型版本命名,并将其指向存有导出文件的云存储目录。 就这样,我们创建了模型! 整个过程只需要将服务指向导出模型,并给它命名。

    1.2K60

    Tensorflow SavedModel模型的保存与加载

    当然这也不是说checkpoints模型格式做不到,只是在跨语言时比较麻烦。另外如果使用Tensorflow Serving server来部署模型,必须选择SavedModel格式。...要保存该模型,我们还需要对代码作一点小小的改动。 添加命名 在输入和输出Ops中添加名称,这样我们在加载时可以方便的按名称引用操作。...这里说说tag的用途吧。 一个模型可以包含不同的MetaGraphDef,什么时候需要多个MetaGraphDef呢?也许你想保存图形的CPU版本和GPU版本,或者你想区分训练和发布版本。...在simple_save方法中,系统会给一个默认的tag: “serve”,也可以用tag_constants.SERVING这个常量。...调用load函数后,不仅加载了计算图,还加载了训练中习得的变量值,有了这两者,我们就可以调用其进行推断新给的测试数据。 小结 将过程捋顺了之后,你会发觉保存和加载SavedModel其实很简单。

    5.5K30

    如何将训练好的Python模型给JavaScript使用?

    前言从前面的Tensorflow环境搭建到目标检测模型迁移学习,已经完成了一个简答的扑克牌检测器,不管是从图片还是视频都能从画面中识别出有扑克的目标,并标识出扑克点数。...(通过Python API创建的,可以先理解为Python模型) 转换成Tensorflow.js可读取的模型格式(json格式), 用于在浏览器上对指定数据进行推算。...converter安装为了不影响前面目标检测训练环境,这里我用conda创建了一个新的Python虚拟环境,Python版本3.6.8。...--output_format输出模型的格式, 分别有tfjs_graph_model (tensorflow.js图模型,保存后的web模型没有了再训练能力,适合SavedModel输入格式转换),tfjs_layers_model.../web_model浏览器端部署3.1. 创建一个前端项目,将web_model放入其中。 3.2.编写代码 (略)3.3. 运行结果

    17610

    精通 TensorFlow 2.x 计算机视觉:第三、四部分

    然后,我们在特征映射内获取k x k核(在此图像中,k = 3),并将其在图像上滑动以创建k^2(C+1)得分图。 如果得分图包含一个对象,则我们投票yes,否则,我们投票no。...此免费访问权限应涵盖此处列出的练习。 请按照以下步骤在 Google Cloud Console 中创建虚拟机(VM)实例。...将剩余的 30% 的文件复制到test文件夹中。 将train和test文件夹都上传到data下的 Google 云端硬盘。 创建一个标题为val的验证文件夹,并将所有类中的一些图像插入其中。...准备三个文件,如下所示: 模型的冻结推理图:这是一个带有.pb扩展名的文件,是通过使用自定义图像训练模型(R-CNN,SSD 或 R-FCN)而生成的。...Cloud Factory 数据标签服务。 有关详细信息,请转到这里。 数据标记服务的成本可能会很高。 自动或半自动标注 在本节中,我们将讨论一个完全免费的自动标注工具,该工具应减少人工标记的程度。

    5.8K20

    当微信小程序遇上TensorFlow:接收base64编码图像数据

    如何查看tensorflow SavedModel格式模型的信息 如何合并两个TensorFlow模型 问题 截至到目前为止,我们实现了一个简单的微信小程序,使用开源的Simple TensorFlow...修改模型,增加输入层 其实在上一篇文章《如何合并两个TensorFlow模型》中我们已经讲到了如何连接两个模型,这里再稍微重复一下,首先是编写一个base64解码、png解码、图像缩放的模型: base64...利用tf.import_graph_def方法,我们可以导入图到现有图中,注意第二个import_graph_def,其input是第一个graph_def的输出,通过这样的操作,就将两个计算图连接起来.../models/inception_v3/2/目录下,原来的./models/inception_v3/1/也不用删除,这样两个版本的模型可以同时提供服务,方便从V1模型平滑过渡到V2版本模型。...我们修改一下原来的test_client.py代码,增加一个model_version参数,这样就可以决定与哪个版本的模型进行通信: with open(file_name, "rb") as image_file

    1K50

    如何合并两个TensorFlow模型

    在《Tensorflow SavedModel模型的保存与加载》中,我们谈到了Tensorflow模型如何保存为SavedModel格式,以及如何加载之。...在《如何查看tensorflow SavedModel格式模型的信息》中,我们演示了如何查看模型的signature和计算图结构。...在本文中,我们将探讨如何合并两个模型,简单的说,就是将第一个模型的输出,作为第二个模型的输入,串联起来形成一个新模型。 背景 为什么需要合并两个模型?...更普遍的情况是,我们使用的是别人训练好的模型,比如图像识别中普遍使用的Mobilenet、InceptionV3等等,都是Google、微软这样的公司,耗费大量的资源训练出来的,我们没有那个条件重新训练...在本文,我们将给出第三种方案:编写一个Tensorflow模型,接收base64的图像数据,输出二进制向量,然后将第一个模型的输出作为第二个模型的输入,串接起来,保存为一个新的模型,最后部署新的模型。

    2.9K40

    文末福利|一文上手TensorFlow2.0(一)

    在TensorFlow1.x版本中,当我们使用TensorFlow低级API进行编程时,我们首先需要定义好计算图,然后创建TensorFlow会话(session)来执行计算图。...会话 在1.x版本中,会话(session)是客户端程序与TensorFlow系统进行交互的接口,我们定义好的计算图必须在会话中执行。...每个运算操作都可以有自己的属性,但是所有的属性都必须被预先设置,或者能够在创建计算图时根据上下文推断出来。...模型的参数是保存在变量中的,在模型的训练过程中,参数在不断地更新。变量的值可以修改,但是维度不可以变。) tf.constant(常量,常量定义时必须初始化值,且定义后其值和维度不可再改变。)...使用SavedModel存储模型 在TensorFlow中有两种模型存储的格式,一个是检查点(checkpoints),另一个是SavedModel,前者依赖于创建模型的源代码,而后者则与创建模型的源代码无关

    1.3K31

    kubeflow系列(三):模型即服务,关于tensorflow serving的使用

    kubeflow 中采用了 tensorflow serving 作为官方的tensorflow模型接口, TensorFlow Serving是GOOGLE开源的一个服务系统,适用于部署机器学习模型,...拓扑结构(Topology): 这是一个描述模型结构的文件(例如它使用的了哪些操作)。它包含对存储在外部的模型权重的引用。 权重(Weights): 这些是以有效格式存储给定模型权重的二进制文件。...它们通常存储在与拓扑结构相同的文件夹中。...MetaGraphDefs和SignatureDefs,MetaGraphDefs就是我们常见的meta graph,其中包含了四种主要的信息: MetaInfoDef: 存放了一些元信息,例如版本和其他用户信息.../模型名称>/版本号>/save_model.pb, 版本号必须为数字。

    1.8K20

    TensorFlow工程师分享了TensorFlow Serving最近的创新进展

    自2016年2月开源TensorFlow Serving发布以来,我们已经做出了一些重大的改进。在此之前,谷歌内部的TensorFlow用户必须从零开始创建自己的服务系统。...机器学习(ML)服务系统需要支持模型版本控制(对带有回滚(rollback)选项的模型更新)和多个模型(通过A/B测试进行试验),同时确保并发模型(concurrent model)在低延迟的硬件加速器...几个月后,我们创建了最初的端到端工作系统,然后就是上文提到的在2016年2月发布了我们的开源版本。...标准化的模型格式:我们将SavedModel添加到TensorFlow 1.0中,为社群提供了一种可以跨训练和服务工作的标准的模型格式。...TensorFlow Serving目前正在为1100多个项目,包括Google的Cloud ML Prediction,每秒处理数千万次的推论。我们的核心服务代码可以通过我们的开源获得。

    1.5K30

    如何用TF Serving部署TensorFlow模型

    实际上,该组件监控文件系统,当发现一个新的模型版本,就为该模型创建一个Loader。...SavedModel对象有一些不错的特性。 首先,一个SavedModel对象中可存储一个或更多的meta-graph,换句话说,这个特性允许我们为不同的任务订制不同的计算图。...这三个计算图共享同一组变量—— 意味着内存使用效率更高。 不久以前,在移动设备上部署TF模型,需要为模型指定输入输出张量的名称。这个需求逼着程序员在整张计算图中寻找相应的张量。...也就是说不同版本的模型将保存在export_path_base目录之下各版本对应的目录中。 例如在生产环境下已部署了一个基线版本的模型,现在需要升级至一个新版本。...新版本的模型提高了准确率,需要及时向客户提供该版本。 为了导出同一个计算图的不同版本,需将FLAGS.model_version 设置为一个更大的整数。

    3K20

    TensorFlow 2.0入门

    TensorFlow 2.0中的所有新增内容及其教程均可在YouTube频道及其改版网站上找到。但是今天在本教程中,将介绍在TF 2.0中构建和部署图像分类器的端到端管道。...首先将3D输出展平(或展开)为1D,然后在顶部添加一个或多个Dense图层。数据集有5个类,从下载的数据集的元数据中获取该值。因此添加了一个带有5个输出和softmax激活的最终Dense层。...在较小程度上,这也是因为训练指标报告了一个纪元的平均值,而验证指标是在纪元之后进行评估的,因此验证指标会看到已经训练稍长一些的模型。...下载预先训练的模型 将从Google开发的InceptionV3模型中创建一个基础模型,并在ImageNet数据集上进行预训练,这是一个包含1.4M图像和1000类Web图像的大型数据集。...这将在定义良好的目录层次结构中创建protobuf文件,并包含版本号。TensorFlow Serving允许在制作推理请求时选择想要使用的模型版本或“可服务”版本。

    1.8K30

    动态 | TensorFlow 2.0 新特性来啦,部分模型、库和 API 已经可以使用

    在 TensorFlow 2.0 中,这些组件将被打包成一个综合性平台,支持从训练到部署的机器学习工作流。让我们用一张简化的概念图来看看 TensorFlow2.0 的新架构,如下所示: ?...下面是一个工作流示例(在接下来的几个月里,我们将努力更新下面链接的指南): 使用 tf.data 加载数据。使用 tf.data 创建的输入管道读取训练数据。...使用 tf.keras 构建、训练和验证您的模型,或者使用 Premade Estimators 来验证您的模型。...强大的研究实验 TensorFlow 2.0 包含了许多功能,可以在不牺牲速度或性能的情况下定义和训练最先进的模型: Keras 功能 API 和 Model Subclassing API:允许创建复杂的拓扑结构...此外,SavedModel 和 GraphDef 将向后兼容。用 1.x 版本保存的 SavedModel 格式的模型将继续在 2.x 版本中加载和执行。

    1.1K40
    领券