多个checkpoint 的参数进行平均

2023-10-27

source_model 路径下 存在 以下几个checkpoint
model_checkpoint_path: "model.ckpt-457157707"
all_model_checkpoint_paths: "model.ckpt-456023526" ,all_model_checkpoint_paths: "model.ckpt-456332667" ,all_model_checkpoint_paths: "model.ckpt-456332668",all_model_checkpoint_paths: "model.ckpt-456832684" ,all_model_checkpoint_paths: "model.ckpt-457157707"

现在将这些ckpt的参数进行平均 合并成一个model.ckpt-457157708 

import tensorflow as tf
import numpy as np

# 获取所有的checkpoint文件
ckpt_files = ["model.ckpt-456023526", "model.ckpt-456332667", "model.ckpt-456332668", "model.ckpt-456832684", "model.ckpt-457157707"]
ckpt_files = [os.path.join("source_model", ckpt_file) for ckpt_file in ckpt_files]

# 用于存储所有模型的参数
all_model_vars = {}

for ckpt_file in ckpt_files:
    reader = tf.train.NewCheckpointReader(ckpt_file)
    model_vars = reader.get_variable_to_shape_map()
    for var in model_vars:
        if var not in all_model_vars:
            all_model_vars[var] = []
        all_model_vars[var].append(reader.get_tensor(var))

# 计算每个参数的平均值
average_vars = {var: np.mean(values, axis=0) for var, values in all_model_vars.items()}

# 创建一个新的checkpoint文件,并将平均后的参数保存到新的.data文件中
with tf.Session() as sess:
    for var_name, var_value in average_vars.items():
        var = tf.get_variable(var_name, initializer=var_value)
        sess.run(var.initializer)

    saver = tf.train.Saver()
    saver.save(sess, "source_model/model.ckpt-457157708")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多个checkpoint 的参数进行平均 的相关文章

随机推荐

  • 【SDL实践指南】安全培训介绍

    转载自 SDL实践指南 安全培训介绍 腾讯云开发者社区 腾讯云https cloud tencent com developer article 2235019 文章前言 安全并不仅仅是安全团队的本职工作 也是企业的每个研发人员 产品经理
  • windows通过注册表修改3389端口号

    span style color FF0000 windows通过注册表修改3389端口号 步骤如下 span 1 开始 rarr 运行 输入regedit 打开注册表 进入这个路径HKEY LOCAL MACHINE SYSTEM Cur
  • 【波浪动态特效】基于jquery实现页面底部波浪动画效果(附完整源码下载)

    文章目录 写在前面 涉及知识点 实现效果 1 搭建页面 1 1 创建两个片区 1 2 创建波浪区域 1 3 静态页面源码 2 JS实现波浪效果 2 1 动画原理 2 2 动画源码 3 源码分享 3 1 百度网盘 3 2 123云盘 3 3
  • 图像识别(一) 之 灰度共生矩阵(GLDM)

    一 灰度共生矩阵 灰度共生矩阵被定义为从灰度为i的像素点出发 离开某个固定位置 相隔距离为d 方位为 的点上灰度值为的概率 1 计算方法 如上图 GLCM i j 的值呢就是I中像素为i 像素为j的有有多少和相邻的成对点 图上的 相邻 指的
  • 在VUE3中使用Pinia

    一 安装使用Pinia 安装下载 npm install pinia main js引入 import createPinia from pinia app use createPinia 根目录新建store index js中写入 im
  • ubuntu20.04 安装Anaconda3+CUDA+cudnn+Pytorch

    ubuntu20 04 安装Anaconda3 CUDA cudnn Pytorch Ubuntu GPU驱动 CUDA版本 CuDNN 版本 都要相互关联 版本不对应的话 就会出错 版本确认顺序 CUDA版本 gt CuDNN版本 gt
  • 反射、泛型详解

    反射 Class文件所包含的内容都有其对应的方法可以获得 创建Class对象的3种方式 方式一 类 class Class personClass Person class 方式二 对象 getClass Person person new
  • 《算法学习》C语言中“ const * “与“ * const “区别总结

    一 简介 最近重新学习了C语言中的指针 本文总结一下C语言中使用 的心得 二 总结 const 表示指针变量是constant 恒定的 不允许通过访问指针地址的方式改变指针所指地址的的值 const 表示该指针是恒定的 即该指针不能再指向别
  • 修改外向交货单:BAPI_OUTB_DELIVERY_CHANGE/SD_DELIVERY_UPDATE_PICKING_SAP刘梦_新浪博客

    TABLES LIKP PARAMETERS P DEL LIKE LIKP VBELN DEFAULT 8000002260 DATA STR HEADER DATA LIKE BAPIOBDLVHDRCHG STR HEADER CON
  • POJ-1240(分治,递归降解)

    题目 http poj org problem id 1240 题目的意思即 给定一棵m元树的前序和后序遍历 问你一共有多少颗m元树有这样的性质 乍一看好像没什么头绪 由于题目中也提到了由中序和后序求前序 想到是不是同样能用分治法 我们知道
  • 在阿里云服务器上部署Jekyll博客

    Step 0 首先买一台服务器 并且装好环境 我都是在阿里云上面买 而且我只是想挂一个个人网站 所以只需要最便宜的轻量应用服务器就好 半年只需要72块钱 我现在想来 之前也应该买香港的服务器 因为更加便宜 大陆的要60块一月 而且不需要给服
  • 初识ASO

    大概了解了一下ASO 在此记录一下 ASO 应用商店优化 的简称 ASO App Search Optimization 重点在于关键词搜索排名优化 覆盖热词 搜索下载激活 优化评论 关键词覆盖数量优化 就是指用户搜索更多关键词都能找到该款
  • VS Code(Visual Studio Code)环境下C++开发的配置方法

    一 Visual Studio Code的下载 去官网下载 下载地址 https code visualstudio com Download 我在windows系统下使用 直接点击Windows那个图标下载就好 安装时可以自己选择一下安装
  • layui源码详细分析之树形菜单

    前言 今天分析的是layui框架内置模块tree js 该模块的功能是构建树形菜单 具体的形式 layui官网该模块的具体形式 如下 自实现树形菜单 使用html css js实现了树形菜单 具体的实现思路如下 html中定义包含树形菜单的
  • C++选择结构学案

    学习目标 熟练掌握 C 中的关系 逻辑运算符 熟知关系 逻辑运算符和数学运算符的优先级 学会正确使用选择表达式 知识着陆 1 关系运算符 使用关系运算符需要注意的问题 1 等于 与 赋值 的区别 2 实型数据 浮点数 的关系运算 3 运算符
  • 锚点的作用及用法

    锚点的作用及用法 HTML中的a标签大家都非常熟悉 它是超链接标签 通过a标签能够跳转到href中指定的页面及指定的位置 a标签可以做到单页面跳转或多页面跳转 锚点能够跳转到当前页面中指定的位置 也能够跳转到指定的其他页面或其他页面中指定的
  • anaconda怎么运行python程序_PyCharm运行Python程序

    介绍如何使用 PyCharm 创建 Python 项目 以及如何编写并运行 Python 程序 PyCharm创建Python项目 PyCharm 中 往往是通过项目来管理 Python 源代码文件的 虽然对于第一个 Python 程序来说
  • java中的String类型的对象为什么可以自动转换成Object类型的?而Object却要强制转换成String类型的

    java中的String类型的对象为什么可以自动转换成Object类型的 而Object却要强制转换成String类型的 5 比如 String a hello Object b a 这样可以直接用 而 Object a hello Str
  • vue鼠标点击指定区域创建dom元素与编辑删除元素的思路

    vue鼠标点击指定区域创建dom元素与编辑删除元素的思路 话不多说有思路直接干 一 鼠标点击页面灰色背景创建红色元素 二 点击已经创建的红色元素则是编辑或者删除 根据点击元素的类名来判断是属于创建元素还是编辑或者删除元素 e target
  • 多个checkpoint 的参数进行平均

    source model 路径下 存在 以下几个checkpoint model checkpoint path model ckpt 457157707 all model checkpoint paths model ckpt 4560