tensorflow2.x加载预训练模型

tensorflow2.x学习笔记六:训练模型的三种方式 模型的训练主要有内置fit方法、内置tran_on_batch方法、自定义训练循环。 注:fit_generator方法在tf.keras中不推荐使用,其功能已经被fit包含。 一、内置fit方法 该方法功能非常强大, 支持对numpy array, tf.data.Dataset以及Python generator数据进行训练。并且可以通过设置回调函数实现对训练过程的复杂控制逻辑。 tf.keras.backend.clear_session() def create_model(): 阅读详情

tensorflow的预训练模型网址为:https://hub.tensorflow.google.cn

已经下载好的预训练模型:bert_zh_L-12_H-768_A-12的v4版本(链接:https://pan.baidu.com/s/1Ld_mvXf8Es4lwCaW1PgKsQ 
提取码:3xba)和bert_zh_preprocess的v3版本(链接:https://pan.baidu.com/s/1jseOQKlVj88-Hpak2PXsCw 
提取码:s9eq)

模型离线加载:

import tensorflow_hub as hub
# A dependency of the preprocessing for BERT inputs
#模型预处理时内部使用到了对应的模块,所以必须导入
import tensorflow_text as text

preprocessor = hub.KerasLayer(
    "data/bert_preprocess_module/3")
encoder = hub.KerasLayer(
    "data/bert_zh_encoder_L-12_H-768_A-12/4",
    trainable=False)
text_input = tf.keras.layers.Input(shape=(), dtype=tf.string)
# 模型线上地址:https://hub.tensorflow.google.cn/tensorflow/bert_zh_preprocess/3
#无参数,主要用来对输入的字符串文本进行分词处理
encoder_inputs = preprocessor(text_input)
# https://hub.tensorflow.google.cn/tensorflow/bert_zh_L-12_H-768_A-12/4

outputs = encoder(encoder_inputs)
pooled_output = outputs["pooled_output"]  # [batch_size, 768].
sequence_output = outputs["sequence_output"]  # [batch_size, seq_length, 768].

embedding_model = tf.keras.Model(text_input, pooled_output)
while True:
    mysentence = input()
    sentences = tf.constant([mysentence])
    print(embedding_model(sentences))

基于预训练模型创建新模型:

import tensorflow as tf
import tensorflow_hub as hub
import tensorflow_text as text


class Mybert(tf.keras.models.Model):
    def __init__(self):
        super(Mybert, self).__init__()
        self.preprocessor = hub.KerasLayer(
            "data/bert_preprocess_module/3")
        self.encoder = hub.KerasLayer(
            "data/bert_zh_encoder_L-12_H-768_A-12/4",
            trainable=False)

    def call(self, inputs):
        # ***************word token embedding begin***************
        inputs = tf.convert_to_tensor(inputs)
        encoder_inputs = self.preprocessor(inputs)
        # https://hub.tensorflow.google.cn/tensorflow/bert_zh_L-12_H-768_A-12/4

        outputs = self.encoder(encoder_inputs)

        return outputs["pooled_output"]

if __name__ == '__main__':
    mybert = Mybert()
    while True:
        mysentence = input()
        sentences = tf.constant([mysentence])
        print(mybert(sentences))

TF2 BERT中文预训练模型 官网发布的tensorflow2.0版本以后可使用的BERT中文预训练模型文件,适合无法的伙伴使用tf2 进行fine tuning 立即下载

相关推荐

Tensorflow2.0 Bert模型.rar

tensorflow2.o Bert模型 NER

【TensorFlow】如何通过手动方式下载TensorFlow官方的ImageNet预训练模型

在使用TensorFlow进行网络的搭建时,可以使用下面的语句来获取一些网络的模型 (其中:include_top表示是否包括顶层网络,顶层即处理输出的几个层;weights表示模型加载的权重,可以选择None不加载、imagenet加载网络在ImageNet上训练的权重、或者指定本地权重的路径) base_model = tf.keras.applications.MobileNetV2(input_shape=IMG_SHAPE,

qq_41340996的博客 4198

bert.zip_BERT_Bert开源工具_NLP_essential83k

bert是目前为止在NLP领域表现最好的一款开源工具,拥有不同规模的预训练模型,当你想要完成某项下游任务时,仅仅需要对bert 提供的预训练模型进行微调即可,大大简化了自己完成部分的架构负责度,而且表现良好。如果想要下载任务相关的模型,请在github上搜索。

TensorFlow2 关于设置变量是否trainable的难懂点

复杂模型的建立,可以是Model类型里面嵌套Model类型的Layer type,比如: 这就会导致层次结构很深。当想要设置深层的权重是否可训练的时候,不要以为把最内层的layer.trainable=True即可了,这还是不够的,要把这一个layer从属的外层layer或者外层model(layer)也设置为 layer.trainable=True,因为TensorFlow2 的层次结构的trainable状态是独立的,外层的状态不会因为你对内层的状态改变而自动调整,要手动从外到内逐层设置,才是正确的

qq_43309133的博客 1317

UVC协议在STM32H7上的移植实战案例

手把手带你把UVC协议移植到STM32H7平台,重点解决USB高速枚举、视频流控制与YUV数据打包等关键问题。基于HAL库实现符合UVC 1.5规范的即插即用摄像头功能,让嵌入式设备轻松变身标准UVC视频源。

weixin_42437253的博客 397

汇丰外包Java岗面试复盘:Zoom面1.5小时,从英语、粤语到现场敲代码的极限挑战

本文详细记录了汇丰银行外包Java岗位的面试全过程,包括多语言切换(英语、粤语)的技术沟通挑战和现场编码测试的实战经验。从高并发编程到JVM调优,面试不仅考察技术深度,更注重实战问题解决能力。文章分享了应对跨国银行技术面试的实用策略,帮助Java开发者在跨文化环境中提升竞争力。

weixin_42524824的博客 363

终极解决方案:DeepFace中VGG-Face模型的TensorFlow兼容性难题完美解决指南

DeepFace是一个轻量级的Python人脸识别和面部属性分析库,支持年龄、性别、情感和种族识别等功能。然而,许多用户在使用VGG-Face模型时遇到了TensorFlow兼容性问题,导致模型无法正常运行。本文将详细介绍如何解决这些兼容性问题,让你轻松使用VGG-Face模型进行面部识别。 ## 为什么会出现TensorFlow兼容性问题? VGG-Face模型是DeepFace库中常用的人

gitblog_00126的博客 507

加速度积分得到速度的Omega算法

在工程中,有时候很难直接测量机械设备部件的速度或位移,特别是在运动着的设备上。即使在一般的场景下可以布置速度传感器,但是有时候需要同时监测速度和加速度,为了节约成本,往往通过将加速度信号直接进行积分得到速度信号。 将加速度信号积分得到速度信号有两种方法,一是直接在时域进行积分,这往往会产生趋势项,积分的结果需要进行去趋势处理。二是在频域进行积分,典型的频域积分算法是omega算法,这里做一下简单的介绍: 如果我们已经获得了加速度信号x''(t) , 其傅里叶变...

D344896224的博客 1万+

tf1.x到tf2.x转换的各种API问题以及各种报错问题(持续总结)

AttributeError: ‘module’ object has no attribute ‘FixedLenFeature’ 在tf2.x中已经变为tf.io.FixedLenFeature

xhsun的博客 2391

大数据之VIP(Virtual IP,虚拟IP)负载均衡

VIP(Virtual IP,虚拟IP)负载均衡是一种在计算机网络中常用的技术,用于将网络请求流量均匀地分散到多个服务器上,以提高系统的可扩展性、可靠性和性能。

赵玉的专栏 4123

Webug4.0 打靶笔记

一、Webug 的安装 (1)基本信息 WeBug 名称定义为”我们的漏洞”靶场环境 ,基础环境是基于 PHP/mysql 制作搭建而成,中级环境与高级环境分别都是由互联网漏洞事件而收集的漏洞存在的操作环境。部分漏洞是基于Windows操作系统的漏洞所以将WeBug的web环境都装在了一个纯净版的Windows 2003的虚拟机中。在 webug3.0 发布后的四百多天 226安全团队终于在大年初二发布了 webug 的 4.0 版本。 (2)虚拟机的安装 最新超详细VMware虚拟机下载与安装_隐

m0_60716947的博客 6127

ResNet实战:tensorflow2.X版本,ResNet50图像分类任务(大数据集)

ResNet实战:tensorflow2.X版本,ResNet50图像分类任务(大数据集) 摘要 本例提取了猫狗大战数据集中的部分数据做数据集,演示tensorflow2.X版本如何使用Keras实现图像分类,分类的模型使用ResNet50。本文实现的算法有一下几个特点: 1、自定义了图片加载方式,更加灵活高效,不用将图片一次性加载到内存中,节省内存,适合大规模数据集。 2、加载模型的预训练权重,训练时间更短。 3、数据增强选用albumentations。 训练 第一步 导入需要的数据包,设置全局参数 i

AI浩 2719

微信删除的聊天记录怎么恢复(2024年最新攻略合集)

随着微信对我们生活中方方面面的渗透,微信已然从一款简单的社交软件过渡成为现时代的一种生活方式,而微信中的聊天记录就是我们和朋友之间历程的最好证明。对此,今天我们来聊聊微信删除的聊天记录怎么恢复的问题。

m0_70960708的博客 944

InceptionV3实战:tensorflow2.X版本,InceptionV3图像分类任务(大数据集)

InceptionV3实战:tensorflow2.X版本,InceptionV3图像分类任务(大数据集) 摘要 本例提取了猫狗大战数据集中的部分数据做数据集,演示tensorflow2.X版本如何使用Keras实现图像分类,分类的模型使用InceptionV3。本文实现的算法有一下几个特点: 1、自定义了图片加载方式,更加灵活高效,不用将图片一次性加载到内存中,节省内存,适合大规模数据集。 2、加载模型的预训练权重,训练时间更短。 3、数据增强选用albumentations。 关于InceptionV3

AI浩 1717

【单智能体】AI 数据分析智能体案例讲解(附完整源码)

本案例将引导您构建一个基于 AI 的数据分析智能体,让用户能够通过自然语言查询来分析 CSV 和 Excel 文件中的数据,无需掌握 SQL 知识。该智能体使用 Agno Agent 框架集成 OpenAI GPT-4o 模型,并利用 DuckDB 提供高效的数据处理能力。

rengang66的博客 238

苹果生态最佳搭档:Mac mini + OpenClaw + iPhone 远程控制

本文详细介绍如何通过iPhone远程控制Mac mini上的OpenClaw应用,打造高效苹果生态工作流。内容包括:1) 苹果生态整合优势,包括AirDrop、Handoff等功能对比;2) Mac mini配置步骤,涵盖SSH/VNC设置、网络优化及Docker部署OpenClaw;3) iPhone端SSH/VNC客户端选择与Tailscale内网穿透配置;4) 详细SSH密钥设置与连接测试方法。通过这套方案,用户可实现跨设备无缝控制OpenClaw应用,提升远程工作效率。(149字)

一键难忘的博客 792

最全MobileNet实战:tensorflow2(5)

MobileNetV3 是由 google 团队在 2019 年提出的,是mobilenet系列的第三个版本,其参数是由NAS(network architecture search)搜索获取的,在ImageNet 分类任务中和V2相比正确率上升了 3.2%,计算延时还降低了 20%。上表为具体的参数设置,其中bneck是网络的基本结构。batch_size =16, batchsize,根据硬件的情况和数据集的大小设置,太小了loss浮动太大,太大了收敛不好,根据经验来,一般设置为2的次方。

2401_84183726的博客 1149

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

TensorFlow 2.0 计算机视觉秘籍(一)

2019 年 TensorFlow 2.x 的发布是深度学习和人工智能领域最盛大且最受期待的事件之一,因为它带来了对这个流行且相关框架的久违改进,主要集中在简化和易用性上。Keras 被作为官方 TensorFlow 高级 API,支持在急切执行和基于图执行之间来回切换(得益于),以及通过创建复杂数据管道,这些只是 TensorFlow 2.x 带来的一些重要新功能。在本书中,你将发现大量实用的示例,帮助你在计算机视觉领域的深度学习应用中,利用这些进步。我们将涵盖广泛的应用,从图像分类到更具挑战性的任务,如

龙哥盟 858

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

TensorFlow2.x目标检测API测试代码演示

TensorFlow2.x Object Detection API 的安装与配置可参考如下的两篇文章: TensorFlow2.x GPU版安装与CUDA版本选择指南 TensorFlow2.x目标检测API安装配置步骤详细教程 安装配置完成后,可以使用代码测试了。 一、在Model Zoo下载需要测试的模型,这里选择的SSD MobileNet V2 FPNLite 320x320 https://github.com/tensorflow/models/blob/master/researc

Color Space的博客 1998

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

GPT从入门到精通 之 GPT-2 模型进阶

在之前的文章中,我们已经介绍了如何在 Tensorflow2.x 环境中使用 GPT 模型进行文本生成。本篇文章中,我们将进一步讨论 GPT-2 模型的进阶应用,包括如何使用预训练模型和微调模型来提高模型的质量和效果。GPT-2 模型是 GPT 模型的升级版,它利用了更多的数据和更强的计算能力进行训练,进而取得了更好的效果。GPT-2 模型使用了 transformer 模型架构,该架构由多个 transformer 模型组成。

Debug_Snail的专栏 2685

MobileNet实战:tensorflow2.X版本,MobileNetV1图像分类任务(大数据集)

摘要 本例提取了植物幼苗数据集中的部分数据做数据集,数据集共有12种类别,今天我和大家一起实现tensorflow2.X版本图像分类任务,分类的模型使用MobileNetV1。本文实现的算法有一下几个特点: 1、自定义了图片加载方式,更加灵活高效,不用将图片一次性加载到内存中,节省内存,适合大规模数据集。 2、加载模型的预训练权重,训练时间更短。 3、数据增强选用albumentations。 关于MobileNetV1更详细的讲解,可以参考下面的文章: https://blog.csdn.net/hhhh

AI浩 1219

tensorflow2.x的模型输入从NHWC格式转换为NCHW格式

tensorflow2.x的模型输入默认格式是NHWC格式,但是某些应用场景下需要在模型中将NHWC输入格式转换为输入NCHW格式,操作代码如下 import tensorflow as tf model_path = "./xxx.h5" output_path = "./yyy.h5" model.load_model(model_path) new_model = tf.keras.models.Sequential([Input((3, 128, 128)), tf.keras.layers

BIT_Legend的博客 1784

【TensorFlow 2.x迁移学习实战指南】:掌握Keras高效模型复用的7大核心技巧

掌握TensorFlow 2.x Keras模型迁移学习核心技巧,快速实现图像分类与特征提取。涵盖预训练模型调用、冻结层设置、微调策略等高效复用方法,适用于小数据集训练与性能优化场景。提升模型开发效率,值得收藏。

VarLens的博客 903

迁移学习性能翻倍的秘密:TensorFlow 2.x + Keras调优全链路解析

掌握TensorFlow 2.x Keras模型迁移学习调优全链路,显著提升模型性能。详解图像分类场景中预训练模型微调、数据增强与学习率调度等关键策略,实现精度与速度双优化。方法系统实用,性能翻倍可期,值得收藏。

AlgoPerch的博客 623

【吴恩达深度学习目标检测作业】Tensorflow2.x 下 yolo.h5 文件的问题

吴恩达深度学习作业,使用YOLO算法完成车辆检测时 yolo.h5 文件的问题。

qq_44577070的博客 3824

【深度学习工程师必看】:基于TensorFlow 2.x的Keras迁移学习全流程精讲

掌握高效模型构建之道,详解TensorFlow 2.x Keras模型迁移学习全流程,涵盖图像分类、预训练模型微调等应用场景。利用少量数据快速训练,提升模型性能与开发效率。方法实用,步骤清晰,深度学习工程师进阶利器,值得收藏。

simcode的专栏 833
上一篇: python hasattr
下一篇: Anaconda 部署
会发paper的学渣
博客等级 码龄15年 171粉丝 207原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会发paper的学渣

您的鼓励和将是我前进的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值