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抓取网页时字符集转换问题处理方案分享
Jun 19 Python
python在windows和linux下获得本机本地ip地址方法小结
Mar 20 Python
详解Django框架中用context来解析模板的方法
Jul 20 Python
Python中内建函数的简单用法说明
May 05 Python
python使用matplotlib绘制热图
Nov 07 Python
numpy linalg模块的具体使用方法
May 26 Python
python多继承(钻石继承)问题和解决方法简单示例
Oct 21 Python
Python实现图像去噪方式(中值去噪和均值去噪)
Dec 18 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
Feb 27 Python
简单介绍一下pyinstaller打包以及安全性的实现
Jun 02 Python
解决使用Pandas 读取超过65536行的Excel文件问题
Nov 10 Python
BeautifulSoup中find和find_all的使用详解
Dec 07 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
WordPress中Gravatar头像缓存到本地及相关优化的技巧
2015/12/19 PHP
线路分流自动跳转代码;希望对大家有用!
2006/12/02 Javascript
JSON 入门指南 想了解json的朋友可以看下
2009/08/26 Javascript
jquery的ajax从纯真网(cz88.net)获取IP地址对应地区名
2009/12/02 Javascript
IE的有条件注释判定IE版本详解(附实例代码)
2012/01/04 Javascript
删除select中所有option选项jquery代码
2013/08/12 Javascript
JavaScript sub方法入门实例(把字符串显示为下标)
2014/10/17 Javascript
常见的jQuery选择器汇总
2014/11/24 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
Bootstrap模仿起筷首页效果
2016/05/09 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
angular.js+node.js实现下载图片处理详解
2017/03/31 Javascript
vue删除html内容的标签样式实例
2018/09/13 Javascript
关于vue项目中搜索节流的实现代码
2019/09/17 Javascript
vue 解决异步数据更新问题
2019/10/29 Javascript
[01:18:45]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第三场2月1日
2021/03/11 DOTA
浅析Python中return和finally共同挖的坑
2017/08/18 Python
Python编写Windows Service服务程序
2018/01/04 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
python实现zabbix发送短信脚本
2018/09/17 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
Python 实现自动导入缺失的库
2019/10/29 Python
python对象转字典的两种实现方式示例
2019/11/07 Python
numpy ndarray 取出满足特定条件的某些行实例
2019/12/05 Python
CSS3 @keyframes简单动画实现
2018/02/24 HTML / CSS
HTML5 MiranaVideo播放器 (代码开源)
2010/06/11 HTML / CSS
标签和贴纸印刷:Lightning Labels
2018/03/22 全球购物
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
英国信箱在线鲜花速递公司:Bloom & Wild
2019/03/10 全球购物
2014年师德师风学习材料
2014/05/16 职场文书
义诊活动通知
2015/04/24 职场文书
2015年结对帮扶工作总结
2015/05/04 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书
新手入门Mysql--概念
2021/06/18 MySQL
《吸血鬼:避世 血猎》官宣4.27发售 系列首款大逃杀
2022/04/03 其他游戏