tf.truncated_normal与tf.random_normal的详细用法


Posted in Python onMarch 05, 2018

本文介绍了tf.truncated_normal与tf.random_normal的详细用法,分享给大家,具体如下:

tf.truncated_normal

tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)

从截断的正态分布中输出随机值。

生成的值服从具有指定平均值和标准偏差的正态分布,如果生成的值大于平均值2个标准偏差的值则丢弃重新选择。

在正态分布的曲线中,横轴区间(μ-σ,μ+σ)内的面积为68.268949%。

横轴区间(μ-2σ,μ+2σ)内的面积为95.449974%。

横轴区间(μ-3σ,μ+3σ)内的面积为99.730020%。

X落在(μ-3σ,μ+3σ)以外的概率小于千分之三,在实际问题中常认为相应的事件是不会发生的,基本上可以把区间(μ-3σ,μ+3σ)看作是随机变量X实际可能的取值区间,这称之为正态分布的“3σ”原则。

在tf.truncated_normal中如果x的取值在区间(μ-2σ,μ+2σ)之外则重新进行选择。这样保证了生成的值都在均值附近。

参数:

shape: 一维的张量,也是输出的张量。
mean: 正态分布的均值。
stddev: 正态分布的标准差。
dtype: 输出的类型。
seed: 一个整数,当设置之后,每次生成的随机数都一样。
name: 操作的名字。

import tensorflow as tf; 
import numpy as np; 
import matplotlib.pyplot as plt; 
 
c = tf.truncated_normal(shape=[10,10], mean=0, stddev=1) 
 
with tf.Session() as sess: 
  print sess.run(c)

输出:

[[ 1.95758033 -0.68666345 -1.83860338 0.78213859 -1.08119416 -1.44530308
0.38035342 0.57904619 -0.57145643 -1.22899497]
[-0.75853795 0.48202974 1.03464043 1.19210851 -0.15739718 0.8506189
1.18259966 -0.99061841 -0.51968449 1.38996458]
[ 1.05636907 -0.02668529 0.64182931 0.4110294 -0.4978295 -0.64912242
1.27779591 -0.01533993 0.47417602 -1.28639436]
[-1.65927458 -0.364887 -0.45535028 0.078814 -0.30295736 1.91779387
-0.66928798 -0.14847915 0.91875714 0.61889237]
[-0.01308221 -0.38468206 1.34700036 0.64531708 1.15899456 1.09932268
1.22457981 -1.1610316 0.59036094 -1.97302651]
[-0.24886213 0.82857937 0.09046989 0.39251322 0.21155456 -0.27749416
0.18883201 0.08812679 -0.32917103 0.20547724]
[ 0.05388507 0.45474565 0.23398806 1.32670367 -0.01957406 0.52013856
-1.13907862 -1.71957874 0.75772947 -1.01719368]
[ 0.27155915 0.05900437 0.81448066 -0.37997526 -0.62020499 -0.88820189
1.53407145 -0.01600445 -0.4236775 -1.68852305]
[ 0.78942037 -1.32458341 -0.91667277 -0.00963761 0.76824385 -0.5405798
-0.73307443 -1.19854116 -0.66179073 0.26329204]
[ 0.59473759 -0.37507254 -1.21623695 -1.30528259 1.18013096 -1.32077384
-0.59241474 -0.28063133 0.12341146 0.48480138]]

tf.random_normal

tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)

从正态分布中输出随机值。

参数:

  1. shape: 一维的张量,也是输出的张量。
  2. mean: 正态分布的均值。
  3. stddev: 正态分布的标准差。
  4. dtype: 输出的类型。
  5. seed: 一个整数,当设置之后,每次生成的随机数都一样。
  6. name: 操作的名字。

代码

a = tf.Variable(tf.random_normal([2,2],seed=1))
b = tf.Variable(tf.truncated_normal([2,2],seed=2))
init = tf.global_variables_initializer()
with tf.Session() as sess:
  sess.run(init)
  print(sess.run(a))
  print(sess.run(b))

输出:

[[-0.81131822  1.48459876]
 [ 0.06532937 -2.44270396]]
[[-0.85811085 -0.19662298]
 [ 0.13895047 -1.22127688]]

指定seed之后,a的值不变,b的值也不变。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python设计模式之单例模式实例
Apr 26 Python
在Python中用has_key()方法查找键是否存在的教程
May 21 Python
详解python的数字类型变量与其方法
Nov 20 Python
python中reduce()函数的使用方法示例
Sep 29 Python
python导出chrome书签到markdown文件的实例代码
Dec 27 Python
pycharm 在windows上编辑代码用linux执行配置的方法
Oct 27 Python
通过pykafka接收Kafka消息队列的方法
Dec 27 Python
基于Python检测动态物体颜色过程解析
Dec 04 Python
在TensorFlow中实现矩阵维度扩展
May 22 Python
Python + opencv对拍照得到的图片进行背景去除的实现方法
Nov 18 Python
Python解析微信dat文件的方法
Nov 30 Python
pandas求平均数和中位数的方法实例
Aug 04 Python
用tensorflow搭建CNN的方法
Mar 05 #Python
利用TensorFlow训练简单的二分类神经网络模型的方法
Mar 05 #Python
python使用Pycharm创建一个Django项目
Mar 05 #Python
python爬虫基本知识
Mar 05 #Python
用tensorflow构建线性回归模型的示例代码
Mar 05 #Python
详解python实现线程安全的单例模式
Mar 05 #Python
分析python动态规划的递归、非递归实现
Mar 04 #Python
You might like
PHP学习之PHP表达式
2006/10/09 PHP
php实现mysql数据库分表分段备份
2015/06/18 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
PHP 无限级分类
2017/05/04 PHP
PHP并发查询MySQL的实例代码
2017/08/09 PHP
Thinkphp页面跳转设置跳转等待时间的操作
2019/10/16 PHP
javascript 面向对象编程基础 多态
2009/08/21 Javascript
js转义字符介绍
2013/11/05 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
js动态切换图片的方法
2015/01/20 Javascript
分享一些常用的jQuery动画事件和动画函数
2015/11/27 Javascript
jQuery实现验证年龄简单思路
2016/02/24 Javascript
Vue.js每天必学之方法与事件处理器
2016/09/06 Javascript
JavaScript实现左右下拉框动态增删示例
2017/03/09 Javascript
Angular 作用域scope的具体使用
2017/12/11 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
2018/08/14 Javascript
ES6之Proxy的get方法详解
2019/10/11 Javascript
JS立即执行的匿名函数用法分析
2019/11/04 Javascript
js实现踩五彩块游戏
2020/02/08 Javascript
Python标准库之随机数 (math包、random包)介绍
2014/11/25 Python
windows下python之mysqldb模块安装方法
2017/09/07 Python
Tensorflow实现AlexNet卷积神经网络及运算时间评测
2018/05/24 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
python 设置xlabel,ylabel 坐标轴字体大小,字体类型
2019/07/23 Python
python实现猜拳小游戏
2020/04/05 Python
python文字转语音实现过程解析
2019/11/12 Python
python requests模拟登陆github的实现方法
2019/12/26 Python
解决pycharm修改代码后第一次运行不生效的问题
2021/02/06 Python
贪睡宠物用品:Snoozer Pet Products
2020/02/04 全球购物
怎样写好自荐信和推荐信
2013/12/26 职场文书
连锁酒店店长职责范本
2014/02/13 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
入股合作协议书
2014/10/12 职场文书
2014年学习部工作总结
2014/11/12 职场文书
2016大学自主招生推荐信范文
2015/03/23 职场文书
Python 绘制多因子柱状图
2022/05/11 Python