Python tensorflow函数tf.get_variable有什么用
Admin 2022-09-16 群英技术资讯 1237 次浏览
本篇内容介绍了“Python tensorflow函数tf.get_variable有什么用”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!该函数共有十一个参数,常用的有:
名称 name
变量规格 shape
变量类型 dtype
变量初始化方式 initializer
所属于的集合 collections
def get_variable(name,
shape=None,
dtype=None,
initializer=None,
regularizer=None,
trainable=True,
collections=None,
caching_device=None,
partitioner=None,
validate_shape=True,
use_resource=None,
custom_getter=None):
该函数的作用是创建新的tensorflow变量
常见的initializer有:
常量初始化器 tf.constant_initializer
正太分布初始化器 tf.random_normal_initializer
截断正态分布初始化器 tf.truncated_normal_initializer
均匀分布初始化器 tf.random_uniform_initializer
该例子将分别讲述常见的几种initializer的使用方法
import tensorflow as tf;
import numpy as np;
#常量初始化器
v1_cons = tf.get_variable('v1_cons', shape=[1,4], initializer=tf.constant_initializer())
v2_cons = tf.get_variable('v2_cons', shape=[1,4], initializer=tf.constant_initializer(9))
#正太分布初始化器
v1_nor = tf.get_variable('v1_nor', shape=[1,4], initializer=tf.random_normal_initializer())
v2_nor = tf.get_variable('v2_nor', shape=[1,4], initializer=tf.random_normal_initializer(mean=0, stddev=5, seed=0))#均值、方差、种子值
#截断正态分布初始化器
v1_trun = tf.get_variable('v1_trun', shape=[1,4], initializer=tf.truncated_normal_initializer())
v2_trun = tf.get_variable('v2_trun', shape=[1,4], initializer=tf.truncated_normal_initializer(mean=0, stddev=5, seed=0))#均值、方差、种子值
#均匀分布初始化器
v1_uni = tf.get_variable('v1_uni', shape=[1,4], initializer=tf.random_uniform_initializer())
v2_uni = tf.get_variable('v2_uni', shape=[1,4], initializer=tf.random_uniform_initializer(maxval=-1., minval=1., seed=0))#最大值、最小值、种子值
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print("常量初始化器v1_cons:",sess.run(v1_cons))
print("常量初始化器v2_cons:",sess.run(v2_cons))
print("正太分布初始化器v1_nor:",sess.run(v1_nor))
print("正太分布初始化器v2_nor:",sess.run(v2_nor))
print("截断正态分布初始化器v1_trun:",sess.run(v1_trun))
print("截断正态分布初始化器v2_trun:",sess.run(v2_trun))
print("均匀分布初始化器v1_uni:",sess.run(v1_uni))
print("均匀分布初始化器v2_uni:",sess.run(v2_uni))
其输出为:
常量初始化器v1_cons: [[0. 0. 0. 0.]] 常量初始化器v2_cons: [[9. 9. 9. 9.]] 正太分布初始化器v1_nor: [[-0.7286455 -0.03095582 1.6400269 -0.90134907]] 正太分布初始化器v2_nor: [[-1.9957879 10.522196 0.8553612 2.7325907]] 截断正态分布初始化器v1_trun: [[-0.52284956 -0.77045 1.9507815 0.96106136]] 截断正态分布初始化器v2_trun: [[-1.9957879 0.8553612 2.7325907 2.1127698]] 均匀分布初始化器v1_uni: [[0.5369104 0.05912018 0.1587832 0.2859378 ]] 均匀分布初始化器v2_uni: [[ 0.79827476 -0.9403336 -0.69752836 0.9034374 ]]
到此,关于“Python tensorflow函数tf.get_variable有什么用”的学习就结束了,希望能够解决大家的疑惑,另外大家动手实践也很重要,对大家加深理解和学习很有帮助。如果想要学习更多的相关知识,欢迎关注群英网络资讯站,小编每天都会给大家分享实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
装饰器接收一个功能,添加一些功能并返回。 在本文中,您将学习如何创建装饰器,以及为什么要使用装饰器。Python有一个有趣的功能,称为装饰器,以便为现有代码添加功能。
人类在进行学习时,往往不总是零开始,学习物理你会有数学基础、学习英语你会有中文基础等等。于是对于机器而言,神经网络的学习亦可不再从零开始,于是出现了Transfer Learning,就是把一个领域已训练好的网络用于初始化另一个领域的任务,例如会下棋的神经网络可以用于打德州扑克。
这篇文章主要给大家介绍了关于Python自定义模块创建与使用的相关资料,文中还给大家分享了python打包用户自定义模块的方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
在求公约数的时候,一般分析会当成数阶,数论中的最常用的欧几里得算法就和斐波那契数列有关。斐波那契数列是什么呢?是如何实现的呢?阶乘又是怎么求的呢?别急,跟着小编的脚步来看看吧。
在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异主要体现在以下几个方面:1 python3中print是一个内置函
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008