tensorflow 保存变量,
代码:
#!usr/bin/env python
# coding:utf-8
"""
这个代码的作用是 通过 tensorflow 来计算
y = 0.3x + 0.1 的线性方程
通过随机数,, 然后传递值到 训练模型中开始计算
并在 运行结束后, 将变量保存起来, 在下次运行的时候直接读取.
"""
import tensorflow as tf
import numpy as np
import os
# 建立方程组:
# 使用 np 获取一个 1---1000 的随机数
x_data = np.float32(np.random.rand(1, 100))
# 设置 方程组
y_data = 0.1 * x_data + 0.300
# 建立 模型
# 初始化 wieght 范围为-1 --> 1
Weight = tf.Variable(tf.random_uniform([1], -1.0, 1.0), name='Weight')
# 设置 b 初始化为 tf.zeros(1) 在初始化的时候会被置为0 , 然后为了保证 b 不为0 , 设置+0.1
b = tf.Variable(tf.zeros(1), name='b') + 0.1
x = tf.placeholder('float')
y_ = tf.mul(x, Weight) + b
# 梯度下降法, 来降低 weight 和b 值在修改中的改变
loss = tf.reduce_mean(tf.square(y_ - y_data))
train = tf.train.GradientDescentOptimizer(0.1).minimize(loss)
init = tf.global_variables_initializer()
sess = tf.Session()
saver = tf.train.Saver({"Weight": Weight})
# 还原保存数据 或者 初始化 变量
sess.run(init)
if os.path.exists("save_path"):
saver.restore(sess, "save_path/test.ckpt")
for i in range(1000):
# 如果直接 用 x_data 传入 y_ = tf.mul(x_data,Weight) 的话, 这里的 feed_dict 是不用赋值的.
sess.run(train, feed_dict={x: x_data})
if i % 100 == 0:
print(sess.run(Weight), sess.run(b))
print(sess.run(Weight), sess.run(b))
# 结束后, 保存变量.
if not os.path.exists("save_path"):
os.mkdir("save_path")
saver.save(sess, "save_path/test.ckpt")
sess.close()
基于之前的代码之上添加了 变量的保存和 恢复:
saver = tf.train.Saver({"Weight": Weight})
# 还原保存数据 或者 初始化 变量
sess.run(init)
if os.path.exists("save_path"):
saver.restore(sess, "save_path/test.ckpt")
for i in range(1000):
# 如果直接 用 x_data 传入 y_ = tf.mul(x_data,Weight) 的话, 这里的 feed_dict 是不用赋值的.
sess.run(train, feed_dict={x: x_data})
if i % 100 == 0:
print(sess.run(Weight), sess.run(b))
print(sess.run(Weight), sess.run(b))
# 结束后, 保存变量.
if not os.path.exists("save_path"):
os.mkdir("save_path")
saver.save(sess, "save_path/test.ckpt")
sess.close()
我暂时不知道怎么去 单独的恢复 一个变量, 只能是先在 恢复当个参数之前 加上 初始化全部参数了 ,
这个是生成出来的文件夹. 需要用到 python 的 os 库.

tensorflow 保存变量,的更多相关文章
- 转载:tensorflow保存训练后的模型
训练完一个模型后,为了以后重复使用,通常我们需要对模型的结果进行保存.如果用Tensorflow去实现神经网络,所要保存的就是神经网络中的各项权重值.建议可以使用Saver类保存和加载模型的结果. 1 ...
- 131、TensorFlow保存模型
# tf.train.Saver类提供了保存和恢复模型的方法 # tf.train.Saver的构造函数 提供了save和恢复的参数选项 # Saver对象提供了方法来运行这些计算节点,制定了写和读的 ...
- TensorFlow保存、加载模型参数 | 原理描述及踩坑经验总结
写在前面 我之前使用的LSTM计算单元是根据其前向传播的计算公式手动实现的,这两天想要和TensorFlow自带的tf.nn.rnn_cell.BasicLSTMCell()比较一下,看看哪个训练速度 ...
- Tensorflow保存神经网络参数有妙招:Saver和Restore
摘要:这篇文章将讲解TensorFlow如何保存变量和神经网络参数,通过Saver保存神经网络,再通过Restore调用训练好的神经网络. 本文分享自华为云社区<[Python人工智能] 十一. ...
- TF:Tensorflow定义变量+常量,实现输出计数功能—Jason niu
#TF:Tensorflow定义变量+常量,实现输出计数功能 import tensorflow as tf state = tf.Variable(0, name='Parameter_name_c ...
- MATLAB 不能保存变量问题及解决办法
在使用matlab保存结构体.元胞数组等等的变量时,matlab总是提示 警告: 未保存变量 'session'.对于大于 2GB 的变量,请使用 MAT 文件版本 7.3 或更高版本. 问题如下: ...
- JSP显示错误信息中四个范围来保存变量
JSP中提供了四个范围来保存变量,分别是page,request,session,以及application 其中page范围只在当前页面有效,离开当前页面就失效了,这个肯定不行 request范围在 ...
- useRef获取DOM元素和保存变量(十)
useRef在工作中虽然用的不多,但是也不能缺少.它有两个主要的作用: 用useRef获取React JSX中的DOM元素,获取后你就可以控制DOM的任何东西了.但是一般不建议这样来作,React界面 ...
- Tensorflow模型变量保存
Tensorflow:模型变量保存 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献Tensorflow实战Google深度学习框架 实验平台: Tensorflow1.4.0 pyt ...
随机推荐
- spring mvc 和mybatis整合 的异常处理
1.自定义异常信息类 通过构造函数来实现异常信息的接收 public class CustomException extends Exception { //异常信息 private String m ...
- win7 64位Apache http server+PHP配置
一.下载PHP 1.首先下载apache http server(我本来是想在官网下载,但是找半天也没找到,于是就在网上下了一个老版本的)我是在这个网址下载的:http://download.csdn ...
- 防止apche列出目录以及下载文件
1.修改httpd.conf,将override none改为override all 2.在需要设置权限的目录上传.htaccess文件,.htaccess文件内容如下: <FilesMatc ...
- “typedef int (init_fnc_t) (void);“的含义
在读uboot的lib_arm/board.c中的start_armboot ()函数遇到了"init_fnc_t **init_fnc_ptr;”一句话,后来查看init_fnt_t数据类 ...
- Excel Skill (1) -- 判断时如何去掉框里的空格
使用命令 TRIM 说明: Purpose. Remove extra spaces from text. Text with extra spaces removed. =TRIM (text) t ...
- Steam游戏黑屏与游戏直接安装方法
黑屏原因主要是360禁止了反作弊进程,解决方法: Steam游戏目录: Steam\steamapps\common\*** 例如黎明杀机,备份时候可直接备份该目录下 Dead by Daylight ...
- 降维(二)----Laplacian Eigenmaps
降维(二)----Laplacian Eigenmaps 降维系列: 降维(一)----说说主成分分析(PCA)的源头 降维(二)----Laplacian Eigenmaps ----------- ...
- apache asp.net
http://www.apache.org/dist/httpd/ http://server.it168.com/server/2005-10-11/20051011027201.shtml htt ...
- 配置.NET程序中最大HTTP并发连接数(默认为2)
方式一:代码 ServicePointManager.DefaultConnectionLimit = 方式二:配置 <system.net> <connectionManageme ...
- SPRING IN ACTION 第4版笔记-第一章-005-Bean的生命周期
一. 1. As you can see, a bean factory performs several setup steps before a bean is ready touse. Let’ ...