TensorFlow:tf.reduce_mean(input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=None)
转载:https://www.cnblogs.com/yuzhuwei/p/6986171.html 1.概述
在深度学习里研究的物体的关系,都是比较复杂的。比如一个图片32X32大小的,它的像素信息就有1024个点,如果考虑RGB三种颜色,就是1024X3了。对于目前还没有办法构造140亿个神经元的计算机来说,只能干一件事情,就是简化,化繁为简。为了简化,就需要使用算法来进行,在数学上最简单的处理,就是求平均值。这个道理非常简单,如果10个数,只要把它们相加,再除以10即可。对于0维数字,可以这样来计算,如果对于N维的张量,就不是这么简单的计算了。就拿二维的矩阵来说,它可以横着算,还可以是竖着算,还可以全部加到一起,再除以总数。可见对于N维的张量来说,有更多的可能,那么就得抽像一个数轴出来。数轴在初中的代数就学习了,可见数轴在高等数学里也会使用到的,N维张量,就是N个数轴的表示,如果沿着不同的数轴进行计算,就会产生不同的作用。其实平均值也可以算是降维思想的一种。
在TF里,就提供了这样一个算法来计算张量的平均值:
2.tf.reduce_mean
tf.reduce_mean(input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=None)
沿着张量不同的数轴进行计算平均值。
input_tensor: 被计算的张量,确保为数字类型。
axis: 方向数轴,如果没有指明,默认是所有数轴都减小为1。
keep_dims: 如果定义true, 则保留维数,但数量个数为0.
name: 操作过程的名称。
reduction_indices: 为了旧函数兼容的数轴。
返回值:
降低维数的平均值。
3.代码实现
import tensorflow as tf
#创建张量
x = tf.Variable([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]]);
#显示
init = tf.global_variables_initializer();
with tf.Session() as sess:
sess.run(init);
#tf.reduce_mean(input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=None)
y = tf.reduce_mean(x);
y01 = tf.reduce_mean(x, axis=0, keep_dims=False);
y02 = tf.reduce_mean(x, axis=0, keep_dims=True);
y1 = tf.reduce_mean(x, axis=1); print("x = ", x.eval());
print("tf.reduce_mean(x) = ", y.eval());
print("tf.reduce_mean(x, axis=0, keep_dims=False) = ", y01.eval());
print("tf.reduce_mean(x, axis=0, keep_dims=True) = ", y02.eval())
print("tf.reduce_mean(x, axis=1) = ", y1.eval());
执行结果:
('x = ', array([[ 1., 2., 3.],
[ 4., 5., 6.],
[ 7., 8., 9.]], dtype=float32))
('tf.reduce_mean(x) = ', 5.0)
('tf.reduce_mean(x, axis=0, keep_dims=False) = ', array([ 4., 5., 6.], dtype=float32))
('tf.reduce_mean(x, axis=0, keep_dims=True) = ', array([[ 4., 5., 6.]], dtype=float32))
('tf.reduce_mean(x, axis=1) = ', array([ 2., 5., 8.], dtype=float32))
总结:
tf.reduce_mean(x)表示计算全局平均值;
tf.reduce_mean(x, axis=0)表示计算y轴平均值;
tf.reduce_mean(x, axis=1)表示计算x轴平均值;
TensorFlow:tf.reduce_mean(input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=None)的更多相关文章
- tensorflow中 tf.reduce_mean函数
tf.reduce_mean 函数用于计算张量tensor沿着指定的数轴(tensor的某一维度)上的的平均值,主要用作降维或者计算tensor(图像)的平均值. reduce_mean(input_ ...
- 1、求loss:tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits, labels, name=None))
1.求loss: tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits, labels, name=None)) 第一个参数log ...
- 【tensorflow基础】tensorflow中 tf.reduce_mean函数
参考 1. tensorflow中 tf.reduce_mean函数: 完
- TensorFlow:tf.train.Saver()模型保存与恢复
1.保存 将训练好的模型参数保存起来,以便以后进行验证或测试.tf里面提供模型保存的是tf.train.Saver()模块. 模型保存,先要创建一个Saver对象:如 saver=tf.train.S ...
- TensorFlow:tf.nn.max_pool实现池化操作
tf.nn.max_pool(value, ksize, strides, padding, name=None) 参数是四个,和卷积很类似: 第一个参数value:需要池化的输入,一般池化层接在卷积 ...
- tf.reduce_mean
tf.reduce_mean reduce_mean( input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=N ...
- TensorFlow函数:tf.reduce_sum
tf.reduce_sum 函数 reduce_sum ( input_tensor , axis = None , keep_dims = False , name = None , reducti ...
- tf.reduce_mean函数用法及有趣区别
sess=tf.Session() a=np.array([1,2,3,5.]) # 此代码保留为浮点数 a1=np.array([1,2,3,5]) # 此代码保留为整数 c=tf.reduce_m ...
- tensorflow笔记3:CRF函数:tf.contrib.crf.crf_log_likelihood()
在分析训练代码的时候,遇到了,tf.contrib.crf.crf_log_likelihood,这个函数,于是想简单理解下: 函数的目的:使用crf 来计算损失,里面用到的优化方法是:最大似然估计 ...
随机推荐
- php类库安装xml
问题 报错:Call to undefined function dom_import_simplexml() yum install php-dom service restart httpd 参考 ...
- Kafka vs RocketMQ—— Topic数量对单机性能的影响
引言 上一期我们对比了三类消息产品(Kafka.RabbitMQ.RocketMQ)单纯发送小消息的性能,受到了程序猿们的广泛关注,其中大家对这种单纯的发送场景感到并不过瘾,因为没有任何一个网站的业务 ...
- 关于centos安装后一些命令找不到
刚才遇到那么尴尬的一个情况,输入啥命令都没找到.连ifconfig都不放过. 后分析极可能是以下两种缘故: 1.缺少安装包 [root@Tzhost-170802-FCF0 /]# yum searc ...
- CSS超过指定的宽度加省略号
/*table-layout:fixed 会使表格均等分*/ #TreeView1 table { width:290px; table-layout: fixed; } #TreeView1 td: ...
- StreamingContext.getOrCreate
/** */ object AppRealTime { def main(args: Array[String]): Unit = { ) { println("please input a ...
- linux使用指导-debian/archlinux/LFS
debian系统参考配置手册:https://www.debian.org/doc/manuals/debian-reference/index.en.html ArchLinux系统参考配置手册:s ...
- 【随记】Q号解除限制一波三折
平日里养了一批QQ号码,前段时间部分号码出问题了,在一个不可能是我登录的时间登录了,而且还异常操作了.结果,被QQ安全中心关进了小黑屋,让我发送手机短信去领回来.这是事情的背景,不细述了. 这个事情的 ...
- hadoop3.0.0测验
下载地址: hadoop: http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-3.0.0/ 准备工作: 1.master节点与其他节点需要建 ...
- Navi.Soft31.开发工具(含下载地址)
1系统简介 1.1功能简述 在软件开发过程中,我们需要经常对字符串.文件.数据库操作.有时需要浏览Json格式串,有时需要浏览Xml格式串,有时需要读取txt或excel文件,有时需要对数据库访问.本 ...
- Caused by:java.lang.IllegalStateException at android.media.MediaPlayer._setDataSource(Native Method)
使用Mediaplayer播放本地音频,在第二次调用mediaplayer.setDataSource()时报错如下: Caused by: java.lang.IllegalStateExcepti ...