TensorFlow 生成 常量、序列和随机值
生成常量
tf.constant()这种形式比较常见,除了这一种生成常量的方式之外,像Numpy一样,TensorFlow也提供了生成集中特殊的常量的函数:
tf.zeros(shape, dtype=tf.float32, name=None)
三个参数的意思显而易见,返回指定形状的全零张量
tf.zeros_like(tensor, dtype=None, name=None, optimizer=True) 与函数的名字一致,传入一个张量,最后返回一个张量,与传入的张量拥有一样的形状和数据类型,也可以自己传入dtype指定数据类型
tf.ones() 和tf.ones_like()与之前的函数对应一致
tf.fill(shape, value, name=None) 返回填满指定输入的数值的张量,例如:
tf.fill([2,3],9)
返回的张量就是:
[[9 9 9] [9 9 9]]
生成序列
tf.linspace(start, stop, num, name=None)
函数名称与Numpy中序列的函数一样,只是参数部分进行了简化,前两个参数分别指定了开始和结束的值,num指定了要生成的数量,最后则是名称,例如:
a = tf.linspace(1.0, 10.0, 10, name='lin1')
输出:
[ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]
tf.range(start, limit, delta, dtype=None, name=None)
例如:
a = tf.range(1, 5, 1)
输出:
[1 2 3 4]
随机张量
随机值在TensorFlow中很重要,很多情况下的初始值往往会随机值,常用的随机值生成函数如下:
生成均匀分布的随机张量
# 调用格式 random_uniform( shape, minval=0, maxval=None, # 最大值以及最小值 dtype=tf.float32, seed=None, # 指定种子 name=None )
# 例如 a = tf.random_uniform([2,3], minval=1.0, maxval=5.0, dtype=tf.float32)
# 输出 [[4.458698 4.091486 4.3704953] [3.893827 2.7951822 2.2381153]]
生成服从正态分布的随机张量
# 调用格式 random_normal( shape, mean=0.0, # 均值 stddev=1.0, # 标准差 dtype=tf.float32, seed=None, name=None )
a = tf.random_normal([2,3], mean=3.0, stddev=1.0, dtype=tf.float32)
[[3.65199 1.879906 2.1775374] [1.6041888 1.503772 2.704612 ]]
生成服从截断正态分布的随机张量
# 调用格式 tf.truncated_normal( shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None ) [[4.477414 2.9767075 2.377511 ] [2.7083392 4.2639837 2.497882 ]]
这个函数与正态分布的函数使用时一样的,只是增加了 “截断” 也就是限制每个元素的取值,如果其平均值大于 2 个标准差的值将被丢弃并重新选择 。
以上这篇基于TensorFlow常量、序列以及随机值生成实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?