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

如何从现有冻结的pb模型文件创建新的tensorflow hub模块

从现有冻结的pb模型文件创建新的TensorFlow Hub模块可以通过以下步骤实现:

  1. 确保已安装TensorFlow和TensorFlow Hub库,并导入所需的模块:
代码语言:txt
复制
import tensorflow as tf
import tensorflow_hub as hub
  1. 加载冻结的pb模型文件:
代码语言:txt
复制
model_path = 'path/to/frozen_model.pb'
with tf.io.gfile.GFile(model_path, 'rb') as f:
    graph_def = tf.compat.v1.GraphDef()
    graph_def.ParseFromString(f.read())
  1. 创建一个新的TensorFlow图,并将冻结的模型导入其中:
代码语言:txt
复制
tf.compat.v1.reset_default_graph()
tf.import_graph_def(graph_def, name='')
  1. 定义输入和输出节点的名称:
代码语言:txt
复制
input_node = 'input_node_name'
output_node = 'output_node_name'
  1. 创建一个TensorFlow会话并获取输入和输出张量:
代码语言:txt
复制
with tf.compat.v1.Session() as sess:
    input_tensor = sess.graph.get_tensor_by_name(input_node + ':0')
    output_tensor = sess.graph.get_tensor_by_name(output_node + ':0')
  1. 将模型转换为TensorFlow Hub模块:
代码语言:txt
复制
hub_module_path = 'path/to/save/hub_module'
spec = hub.create_module_spec(lambda: tf.compat.v1.saved_model.loader.load(sess, ['serve'], model_path))
module = hub.Module(spec, trainable=True)
module.export(hub_module_path, sess)

完成上述步骤后,您将获得一个新的TensorFlow Hub模块,可以在其他项目中使用。该模块可以通过TensorFlow Hub加载,并在训练过程中进行微调。

注意:以上步骤仅适用于使用TensorFlow 1.x版本的pb模型文件。如果您使用的是TensorFlow 2.x版本或SavedModel格式的模型文件,可以使用tf.saved_model.load()函数加载模型,并根据需要进行转换和导出。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

TensorFlow 2.0中多标签图像分类

如何建立可预测电影类型深度学习模型?看看可以在TensorFlow 2.0中使用一些技术! ?...现在可以通过转换现有的Keras模型创建估算器。 ? TensorFlow 2.0现在可用 数据集(来自其海报电影体裁) 该数据集托管在Kaggle上,并包含来自IMDB网站电影海报。...使用TF.Hub迁移学习 可以在称为迁移学习过程中使用经过预先训练模型,而不是从头开始构建和训练模型。...使用TF.Hub,重新训练预训练模型顶层以识别数据集中类变得很容易。TensorFlow Hub还可以分发没有顶层分类层模型。这些可以用来轻松地进行转移学习。...这是用于构成模型TF.Hub模块。 总结 多标签分类:当一个观察可能标签数目大于一个时,应该依靠多重逻辑回归来解决许多独立二元分类问题。使用神经网络优势在于,可以在同一模型中同时解决许多问题。

6.8K71

如何将自己开发模型转换为TensorFlow Lite可用模型

TensorFlow for Poets 2:谷歌TFLite教程,重新训练识别花卉模型。 这些示例和教程更侧重于使用预先训练模型或重新训练现有模型。但是用户自己模型呢?...在TensorFlow格式之间转换: github文档中,对GraphDef(.pb)、FrozenGraphDef(带有冻结变量.pb)、SavedModel(.pb - 用于推断服务器端通用格式...这是我创建一张图表,展示了如何从一个转换到另一个,一步一步解释这中间涉及到东西。 ? MNIST训练脚本中,我们得到文本可读形式(.pbtxt)Graph Def、检查点和保存图形。...TensorFlow格式 - 理解每种工具和操作如何生成不同文件格式。如果能自动获取SavedGraph并将其转换(缩减中间一堆步骤)会很棒,但我们还没有做到。...附录 使用Tensorboard 我创建了一个修改版本import_pb_to_tensorboard.py,以支持导入图形定义(.pb)、图形定义文本(.pbtxt)和保存模型(.pb文件类型。

3K41
  • 如何将训练好Python模型给JavaScript使用?

    前言从前面的Tensorflow环境搭建到目标检测模型迁移学习,已经完成了一个简答扑克牌检测器,不管是图片还是视频都能从画面中识别出有扑克目标,并标识出扑克点数。...但是,我想在想让他放在浏览器上可能实际使用,那么要如何Tensorflow模型转换成web格式呢?接下来将从实践角度详细介绍一下部署方法!...GraphDef模型(通过Python API创建,可以先理解为Python模型) 转换成Tensorflow.js可读取模型格式(json格式), 用于在浏览器上对指定数据进行推算。...converter安装为了不影响前面目标检测训练环境,这里我用conda创建了一个Python虚拟环境,Python版本3.6.8。...2.3. input_pathsaved model, session bundle 或 frozen model完整路径,或TensorFlow Hub模块路径。

    16410

    使用Tensorflow进行实时移动视频对象检测

    为减少障碍,Google发布了Tensorflow对象检测API和Tensorflow Hub等开源工具,使人们能够利用那些已经广泛使用预先训练模型(例如Faster R-CNN,R-FCN和SSD...本文旨在展示如何通过以下步骤使用TensorFlow对象检测API训练实时视频对象检测器并将其快速嵌入到自己移动应用中: 搭建开发环境 准备图像和元数据 模型配置和训练 将训练后模型转换为TensorFlow...TensorFlow Lite一起使用兼容操作TensorFlow冻结图。...tflite_graph.pbtxt/tmp/tflite 之后,将使用TensorFlow Lite优化转换器TOCOTensorflow冻结图源文件(tflite_graph.pb)中获取优化模型...下一步是什么 到目前为止,已经完成了使用实时视频对象检测自定义模型创建iOS应用过程,这也是通过利用一些现有的预训练模型来快速构建思想原型良好起点。

    2.1K00

    谷歌 TensorFlow 物理检测 API,目前最好物体识别方案?

    API 提供了五种不同模式来在识别速度与准确率中进行协调,详情见下表: ? 使用 API 我决定使用最轻量化模块(ssd_mobilenet)。...主要步骤如下: 下载冻结模型(.pb——protobuf)并将其导入内存 使用內建代码来导入标签,分类,可视化效果工具等等 打开一个会话并在一个图像上运行模型 这是一个相对来说较为简单步骤。...API 介绍里也提供了关于如何进行相关步骤指导。 此模型在样本图像上表现不错(详见下图): ? 运行视频 接下来,用视频来测试此 API。此操作通过 Python moviepy 库来实现。...但是由于使用是一个加载到内存冻结模型,所以这些都可以在没有显卡计算机上完成。 结果很惊人!只需要一小段代码,就可以准确识别并标记视屏中的人物。 在有些情况下它功能还有待提升。...下一步 关于此 API 以后想法 使用更精确但抽象模型来看看结果会如何; 优化识别速度,使其可以在移动设备上使用; Google 还提供使用这些模型进行转移学习能力,即加载冻结模型,并添加具有不同图像类别的另一个输出图层

    1.5K20

    【学术】实践教程:使用神经网络对犬种进行分类

    结果TF记录文件位于data/stanford.tfrecords中。setup.sh脚本还下载并提取谷歌初始模型,将其表示为冻结TensorFlow图。...冻结意味着所有变量都被常量替换,并嵌入到图形本身中,这样就不需要携带检查点文件和图形,以便将模型加载到TensorFlow会话中并开始使用它。...冻结模型 一旦模型被训练,它优化参数就存储在./checkpoints dir检查点文件中。...一旦绑定完成,脚本将在文件系统图形中序列化复合模型。在这一点上,图形还没有被冻结,因为在训练过程中计算模型参数仍然处于检查点文件中。...使用TensorFlow freeze_graph函数冻结在前一步中生成图形。它从检查点文件中提取模型参数并将它们注入到图形变量中。图形变量转换为常数。生成文件将到名为模型.

    2.1K51

    SavedModel格式TensorFlow模型转为frozen graph

    但是,由于训练模型时使用是2.X版本tensorflow库(且用是keras框架),所以训练模型后保存是SavedModel格式神经网络模型文件——就是包含3个.pb格式文件,以及assets...接下来,我们初始模型中获取其签名。...最后,就可以通过tf.io.write_graph()函数,将冻结图写入指定目录中,输出文件名为frozen_graph.pb,as_text = False表示以二进制格式保存这个模型(如果不加这个参数...代码末尾,还有一段注释部分——如果取消注释,将以文本格式保存冻结图,也就是.pbtxt文件。因为我们只要.pb文件就够了,所以就不需要这段代码了。   ...执行上述代码,在结果文件夹中,我们将看到1个.pb格式神经网络模型结果文件,如下图所示。

    13710

    安卓手机如何玩转动作手势检测?有TensorFlow就够了,附实用教程

    引入这样交互看起来是非常有发展前景,并且为用户体验增添了一个层面。接下来,本文将介绍该如何使用机器学习和Android上Tensorflow库实现这一目标。...这些文件可以足够大: session.pb 47732 表格和训练数据可以被冻结,并转化成适合在移动设备上运行单个文件。...1130835 这是TensorBoard中模型tensorflow / python / tools / import_pb_to_tensorboard.py文件复制到notebook目录并启动...首先,将“frozen_optimized_quant.pb文件放入应用程序“assets”目录中 (即 “app/src/main/assets” ),并将其加载到代码中(如:Activity开始...:///android_asset/frozen_optimized_quant.pb”); 注意如何选定模型文件 最后,看一下如何进行识别: float[] data = new float[128

    3K81

    Tensorflow + OpenCV4 安全帽检测模型训练与推理

    模型训练 基于faster_rcnn_inception_v2_coco对象检测模型实现迁移学习,首先需要配置迁移学习config文件,对应配置文件可以: research\object_detection...训练过程中可以通过tensorboard查看训练结果: 模型导出 完成了40000 step训练之后,就可以看到对应检查点文件,借助tensorflow object detection API框架提供模型导出脚本...,可以把检查点文件导出为冻结图格式PB文件。...相关命令行参数如下: 得到pb文件之后,使用OpenCV4.x中tf_text_graph_faster_rcnn.py脚本,转换生成graph.pbtxt配置文件。...最终得到: - frozen_inference_graph.pb - frozen_inference_graph.pbtxt 如何导出PB模型到OpenCV DNN支持看这里: 干货 | tensorflow

    2.5K20

    跨越重重“障碍”,我 PyTorch 转换为了 TensorFlow Lite

    简 介 我最近不得不将深度学习模型(MobileNetV2 变体) PyTorch 转换为 TensorFlow Lite。这是一个漫长而复杂旅程。需要跨越很多障碍才能成功。...我发现自己 StackOverflow 帖子和 GitHub 问题中搜集了一些信息。我目标是分享我经验,以帮助其他像我一样“迷失”的人。 免责声明:本文并非关于如何正确进行转换指南。...新创建 ONNX 模型在我示例输入上进行了测试,得到平均误差为 1.39e-06。...然而,最终测试平均误差为 6.29e-07,所以我决定继续。 此时最大问题是——它导出了什么?这个.pb文件又是什么? 我在网上搜索一番后,才意识到这是tf.Graph一个实例。...原来,TensorFlowv1是支持冻结图进行转换!我决定在剩下代码中使用v1API。 在运行转换函数时,出现了一个奇怪问 p 题,它与protobuf库有关。

    1.6K20

    ensorFlow 智能移动项目:6~10

    ,并保存了检查点文件,我们将冻结这些文件以生成在移动设备上使用模型文件。...文件创建一个素材文件夹,然后复制两个 GAN 模型文件和一个测试模糊图像。...稍后,您将看到如何使用 Keras 模型文件生成 TensorFlow 检查点文件,然后将其冻结为可在移动设备上运行模型文件。 model.png文件包含深度神经网络架构详细视图。...测试模型 例如,要让模型版本 4 与版本 1 竞争,请首先通过运行mkdir -p run_archive/connect4/run0001/models创建目录路径,然后将run/models文件...只需创建一个名称为 AlphaZero Android Studio 应用,将alphazero19.pb模型文件复制到新创建素材资源文件夹,然后将 compile 'org.tensorflow

    1.8K20

    tensorflow:AToolDeveloperGuideToTFModelFIles

    这篇指南通过试着去解释一些 如何处理 保存着模型数据文件细节,使得开发者们做一些格式装换工具更加简单。...Protocol Buffers 所有的Tensorflow文件格式都是基于Protocol Buffers。所以了解它们是如何工作是非常有价值。...如果看到一个独立 用于表示模型(model)Tensorflow文件,那么它很可能是 由protobuf code 保存序列化GraphDef对象。...protobuf code 用来硬盘上 保存和加载GraphDef对象。加载对象代码看起来像是这样: #这行代码创建了一个空 GraphDef 对象。...希望这个纲要能让你更好地了解TensorFlow模型文件中正在发生事情,如果你需要对它们进行操作的话,将会对你有所帮助。

    1.4K50

    赛尔笔记 | 自然语言处理中迁移学习(下)

    2018) Adapters 通常使用剩余连接与现有层并行层相连 每层之间都放置时效果最佳(底层效果较小) 不同操作(卷积,自我注意)是可能 特别适合 Transformer 等模块化架构 (Houlsby...在现有层之间添加特定于任务模块 只有 adapters 被训练 改变预训练权重 fine-tuning 采用预训练权重作为下游模型参数初始化 整个预训练体系结构在适应阶段进行训练 4.2.2.../bert/ 我们使用通常Tensorflow工作流:创建包含核心模型和添加/修改元素模型图 加载检查点时要注意变量分配 ?...HuggingFace模型现在也可以通过PyTorch Hub访问 ?...,例如语义 更加多样化自我监督目标 计算机视觉中获得灵感 语言中自我监督主要基于词共现(Ando and Zhang, 2005) 不同层次意义上监督 论述、文件、句子等 使用其他信号,例如元数据

    1.2K00

    使用TensorFlow Lite在Android手机上实现图像分类

    版本为:Tensorflow 1.14.0 转换模型 手机上执行预测,首先需要一个训练好模型,这个模型不能是TensorFlow原来格式模型TensorFlow Lite使用模型格式是另一种格式模型...下面就介绍如何使用这个格式模型。...不过要注意是我们下载模型已经是冻结过来,所以不用再执行这个操作。但如果是其他模型,要先冻结图,然后再执行之后操作。 ....1、创建完成之后,在app目录下build.gradle配置文件加上以下配置信息: 在dependencies下加上包引用,第一个是图片加载框架Glide,第二个就是我们这个项目的核心TensorFlow...xml目录,然后创建一个file_paths.xml文件,在这个文件中加上以下代码,这个是我们拍照之后图片存放位置: <?

    3.7K41

    使用OpenCV加载TensorFlow2模型

    使用OpenCV加载模型 OpenCV在3.0版本时引入了一个dnn模块,实现了一些基本神经网络模型layer。在最新4.5版本中,dnn模块使用函数 readNet 实现模型加载。...不过根据官方解释,OpenCV不支持TensorFlow所推荐模型保存格式 saved_model 。所以在加载模型之前,模型需要首先被冻结。...冻结网络 在之前文章“TensorFlow如何冻结网络模型”中介绍过了冻结网络具体含义以及原理。但是在TensorFlow2中网络冻结似乎被弃用了,文中提到冻结脚本也无法使用。...', 'wb') as f: f.write(graph_def.SerializeToString()) 冻结TensorFlow2模型示例代码,作者:Dmitry Kurtaev 在这段代码中...注意TensorFlow版本为2.3.1。OpenCV版本4.5.0。 接下来我们来谈谈如何提issue。

    1.7K20

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

    TensorFlow Hub 是一个库,其中代码可用并且可以用于计算机视觉应用。 该代码是 TensorFlow Hub 中提取,但图像是在本地插入,而不是云端。...准备三个文件,如下所示: 模型冻结推理图:这是一个带有.pb扩展名文件,是通过使用自定义图像训练模型(R-CNN,SSD 或 R-FCN)而生成。...与 OpenVINO 相似,TensorFlow Lite 具有内置预训练深度学习模块。 或者,可以将现有模型转换为 TensorFlow Lite 格式以进行设备上推理。...TensorFlow 对象检测 API – tflite_convert 在以下代码中,我们定义了冻结模型.pb文件和相应tflite文件位置。...在本节中,我们将回顾模型输出组成部分,并学习如何冻结模型冻结模型涉及以某种格式保存 TensorFlow 图和权重,以后可用于推断。

    5.7K20

    TensorFlow-Slim图像分类库

    您还将找到包含整数标签到类名称映射$ DATA_DIR/labels.txt文件。 您可以使用相同脚本创建mnist和cifar10数据集。...创建TF-Slim数据集描述 一旦TFRecord文件被成功创建,您可以很容易定义一个Slim数据集(这个数据集意思是读取TFRecord之后生成网络可用数据),它存储指向数据文件指针,以及各种其他数据...在下表中列出了每个模型,都有对应TensorFlow模型文件,Checkpiont,以及top1和top5精度(在imagenet测试集上)。...该标志阻碍某些变量加载。 当使用与训练模型不同数量类对分类任务进行Fine-tune时,模型将具有与预训练模型不同最终“logits”层。...需要记住是,只有第一次进行Fine-tune时,才会预训练模型checkpoint中加载权值,一旦模型开始训练了,checkpoint将被保存在${TRAIN_DIR}路径下,如果此时训练停止并再次开始

    2.4K60
    领券