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中循环后使用list.append()数据被覆盖问题的解决
Jul 01 Python
Python中的枚举类型示例介绍
Jan 09 Python
Python3实现取图片中特定的像素替换指定的颜色示例
Jan 24 Python
python面试题小结附答案实例代码
Apr 11 Python
PyTorch基本数据类型(一)
May 22 Python
关于pytorch中网络loss传播和参数更新的理解
Aug 20 Python
浅析pandas 数据结构中的DataFrame
Oct 12 Python
Python简易计算器制作方法代码详解
Oct 31 Python
Keras使用tensorboard显示训练过程的实例
Feb 15 Python
基于Python快速处理PDF表格数据
Jun 03 Python
python使用布隆过滤器的实现示例
Aug 20 Python
PyQt5爬取12306车票信息程序的实现
May 14 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
用cookies来跟踪识别用户
2006/10/09 PHP
基于mysql的论坛(2)
2006/10/09 PHP
模仿OSO的论坛(一)
2006/10/09 PHP
PHP Zip压缩 在线对文件进行压缩的函数
2010/05/26 PHP
PHPCMS的使用小结
2010/09/20 PHP
PHP之生成GIF动画的实现方法
2013/06/07 PHP
PHP文件大小格式化函数合集
2014/03/10 PHP
注意!PHP 7中不要做的10件事
2016/09/18 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
PHP模型Model类封装数据库操作示例
2019/03/14 PHP
Alliance vs Liquid BO3 第二场2.13
2021/03/10 DOTA
jscript之Read an Excel Spreadsheet
2007/06/13 Javascript
JS分页效果示例
2013/10/11 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
2013/12/05 Javascript
写出高效jquery代码的19条指南
2014/03/19 Javascript
node.js中的fs.rmdirSync方法使用说明
2014/12/16 Javascript
项目中常用的JS方法整理
2015/01/30 Javascript
jquery实现两个图片渐变切换效果的方法
2015/06/25 Javascript
JS图片左右无缝隙滚动的实现(兼容IE,Firefox 遵循W3C标准)
2016/09/23 Javascript
原生JS实现在线问卷调查投票特效
2017/01/03 Javascript
AngularJS2中一种button切换效果的实现方法(二)
2017/03/27 Javascript
JavaScript中undefined和null的区别
2017/05/03 Javascript
vue.js 实现点击展开收起动画效果
2018/07/07 Javascript
Bootstrap FileInput实现图片上传功能
2021/01/28 Javascript
Python函数的周期性执行实现方法
2016/08/13 Python
Django Admin 实现外键过滤的方法
2017/09/29 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
实例详解Python装饰器与闭包
2019/07/29 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
检讨书1000字
2014/10/11 职场文书
王亚平太空授课观后感
2015/06/12 职场文书
创业计划书之餐饮
2019/09/02 职场文书
创业计划书之酒吧
2019/12/02 职场文书
python 如何获取页面所有a标签下href的值
2021/05/06 Python
Java后台生成图片的完整步骤
2021/08/04 Java/Android