tensorflow学习之tf.truncated_normal和tf.random_noraml的区别
tf版本1.13.1,CPU
最近在tf里新学了一个函数,一查发现和tf.random_normal差不多,于是记录一下。。
1、首先是tf.truncated_normal函数
tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)
shape是张量维度,mean是正态分布是均值,stddev是正态分布的标准差;
它是从截断的正态分布中输出随机值,虽然同样是输出正态分布,但是它生成的值是在距离均值两个标准差范围之内的,也就是说,在tf.truncated_normal中如果x的取值在区间(μ-2σ,μ+2σ)之外则重新进行选择。这样保证了生成的值都在均值附近。
2、接下去是
tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)
参数设置和上一个函数是一样的;而tf.random_normal是没有要求一定在(μ-2σ,μ+2σ)之内的
栗子如下:
r1 = tf.random_normal(shape=[10,10], mean=0, stddev=1)
r2 = tf.truncated_normal(shape=[10,10], mean=0, stddev=1)
with tf.Session() as sess:
print(sess.run(r1))
print('-----------------------------')
print(sess.run(r2)) ###
[[-0.9133466 -0.2193664 0.9871885 0.98474556 0.6795205 0.5485084
-0.5377412 -0.74770564 -1.1065788 -0.6537805 ]
[-0.05684219 -0.40211347 0.29256898 0.05646685 -0.09572198 -0.5329077
0.09256991 0.5098056 -0.56273437 3.0135465 ]
[-0.76685655 0.80393404 1.4993162 -0.97593653 -0.02311829 0.18108685
-0.10103939 -0.1788411 0.70498335 0.7432045 ]
[ 1.0753849 -1.552068 -0.82677794 -1.0526472 0.35524416 1.109456
-0.46477854 -0.94029546 0.4074978 -0.6275004 ]
[ 1.1464692 -0.7329785 1.3993146 -1.3458818 -1.0205774 -1.3928136
0.31929192 -0.19847174 0.24104206 -0.30365643]
[-0.56316936 0.35070175 -1.7900109 0.18886246 0.70969003 0.61488485
1.0273159 0.08935942 0.31060082 0.46601346]
[-2.2100964 -0.5587107 0.23800382 0.58263725 0.44721082 0.17937267
-1.6707375 -0.69823587 -0.624195 0.7153361 ]
[-0.8212442 -0.4100253 -0.29756552 1.6561007 0.22083926 0.97440094
-0.08767799 0.07237837 1.5110539 1.7204924 ]
[ 0.7634979 -0.38169494 -0.07168189 -1.0445783 -0.4177571 -0.06731904
0.13163103 0.73196214 -0.32269892 -1.9275837 ]
[ 0.73937386 -0.08055622 1.209047 -0.41532582 0.11017569 0.7899525
-1.8012363 -0.84279794 1.6240916 0.73638594]]
-----------------------------
[[-0.14283383 1.0008699 1.5809501 0.82382834 -0.6668856 0.59398574
-1.0554414 0.87018394 0.2878338 -0.4894875 ]
[ 1.3494765 -0.13940284 0.38545245 -0.16343059 0.37798592 -1.119075
-0.9302422 -1.1171802 -0.28318515 1.5838846 ]
[ 0.01883612 1.0887331 -0.18458353 -0.48704016 -0.84166986 1.2319418
0.6718625 -0.7222486 0.88431233 -0.31767374]
[-0.3927616 0.42229542 0.29394206 0.636135 -0.9557136 -0.14583842
0.09705613 -1.5379425 0.6139084 0.36891633]
[-1.0034062 -0.7085579 0.05415478 -0.26299214 -1.4239995 0.24866848
-0.08754523 0.9556532 -0.70344573 0.5501471 ]
[-0.36907005 -0.18001153 -1.7696055 -0.8719723 0.00751158 1.4784805
1.2351555 0.5596131 0.9836762 1.3182775 ]
[-0.68398184 -0.74510956 1.5121812 -0.5380244 -0.2752701 0.03485487
1.495663 -1.2325596 0.94225466 -1.386867 ]
[-0.00377628 -0.13128701 0.02556802 1.1236848 1.139232 -0.53410244
0.87148935 1.9706047 1.2066965 0.9876827 ]
[-0.3875238 -0.06041284 0.44305998 1.193 0.6871842 0.2273079
1.6827972 1.1394504 -1.4383765 -0.21280776]
[ 1.5706499 1.6732877 -1.1468259 0.3528784 1.8091112 1.2832314
-0.32502323 0.34072635 1.5236534 0.89802533]]
可见r1里面有一个数是在(-2,2)范围以外的,而r2则全在(-2,2)范围内
tensorflow学习之tf.truncated_normal和tf.random_noraml的区别的更多相关文章
- tensorflow 生成随机数 tf.random_normal 和 tf.random_uniform 和 tf.truncated_normal 和 tf.random_shuffle
____tz_zs tf.random_normal 从正态分布中输出随机值. . <span style="font-size:16px;">random_norma ...
- tf.truncated_normal和tf.random_normal使用方法的区别
1.tf.truncated_normal使用方法 tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=No ...
- TensorFlow函数:tf.truncated_normal
tf.truncated_normal函数 tf.truncated_normal( shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, ...
- TensorFlow学习笔记(三)-- feed_dict 使用
个人理解:就是TF的一种输入语法. 跟C语言的scanf(),C++的 cin>> 意思差不多,只是长相奇怪了点而已. 做完下面几个例子,基本也就适应了. 首先占位符申请空间:使用的时候, ...
- 深度学习原理与框架-Tensorflow卷积神经网络-卷积神经网络mnist分类 1.tf.nn.conv2d(卷积操作) 2.tf.nn.max_pool(最大池化操作) 3.tf.nn.dropout(执行dropout操作) 4.tf.nn.softmax_cross_entropy_with_logits(交叉熵损失) 5.tf.truncated_normal(两个标准差内的正态分布)
1. tf.nn.conv2d(x, w, strides=[1, 1, 1, 1], padding='SAME') # 对数据进行卷积操作 参数说明:x表示输入数据,w表示卷积核, stride ...
- tensorflow生成随机数的操作 tf.random_normal & tf.random_uniform & tf.truncated_normal & tf.random_shuffle
tf.random_normal 从正态分布输出随机值. random_normal(shape,mean=0.0,stddev=1.0,dtype=tf.float32,seed=None,name ...
- 【转载】 TensorFlow学习——tf.GPUOptions和tf.ConfigProto用法解析
原文地址: https://blog.csdn.net/c20081052/article/details/82345454 ------------------------------------- ...
- Tensorflow学习笔记(2):tf.nn.dropout 与 tf.layers.dropout
A quick glance through tensorflow/python/layers/core.py and tensorflow/python/ops/nn_ops.pyreveals t ...
- 深度学习原理与框架-Tensorflow基本操作-变量常用操作 1.tf.random_normal(生成正态分布随机数) 2.tf.random_shuffle(进行洗牌操作) 3. tf.assign(赋值操作) 4.tf.convert_to_tensor(转换为tensor类型) 5.tf.add(相加操作) tf.divide(相乘操作) 6.tf.placeholder(输入数据占位
1. 使用tf.random_normal([2, 3], mean=-1, stddev=4) 创建一个正态分布的随机数 参数说明:[2, 3]表示随机数的维度,mean表示平均值,stddev表示 ...
随机推荐
- Java学习03-进制学习
计算机中是以二进制来进行数据传递的,二进制分为二进制.八进制.十进制.十六进制 而他们之间如何进行转换呢,二进制作为元,其他进制都是经二进制进行换算的,所以无论什么进制之间的转换都是先转换为二进制,再 ...
- 被弃用的php函数以及用来替代的函数
下面列举了部分被弃用的函数: call_user_method()(使用 call_user_func() 替代) call_user_method_array() (使用 call_user_fun ...
- java 基本包
1. import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java ...
- git概述(一)
初始化一个Git仓库,使用git init命令. 添加文件到Git仓库,分两步: 使用命令git add <file>,注意,可反复多次使用,添加多个文件: 使用命令git commit ...
- 原生ajax 请求
什么是ajax AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新. 这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新, ...
- 常用cmd命令总结
1.常用操作 cls #清屏set #查看环境变量cd #切换工作目录 (换盘:直接输入 C: 或 D:)cd.. #返回上级目录exit #关闭cmd窗口 2.有关Python pip instal ...
- java jts
来自:UCMapForOpenGIS https://bbs.csdn.net/topics/380204896?list=992863 对比 其实geotools就是基于jts开发的,而geoser ...
- 今天跟outlook顶上牛了
之前使用的是2007,然后之前弄东西的时候给升到2010了,之前就是把所有的邮件都保存到本地的文件中,我还想使用之前的文件,然后2010就是不好使,后来查了半天发现原来是需要手动创建账户,参考http ...
- Linux安装配置redis 、启动redis、redis设置密码
由于间隔时间较长.机器的环境不同等等原因,所以每次安装redis的时候总是不那么顺利,所以这次我要做个笔记 文章大部分内容源于https://blog.csdn.net/gisredevelopmen ...
- windows下开启远程连接Mysql
使用“Ctrl + R”组合键快速打开cmd窗口,并输入“cmd”命令,打开cmd窗口. 使用“mysql -uroot -proot”命令可以连接到本地的mysql服务. 使用“use mysq ...