对tf.reduce_sum tensorflow维度上的操作详解

yipeiwu_com5年前Python基础

tensorflow中有很多在维度上的操作,本例以常用的tf.reduce_sum进行说明。官方给的api

reduce_sum(
 input_tensor,
 axis=None,
 keep_dims=False,
 name=None,
 reduction_indices=None
)

input_tensor:表示输入

axis:表示在那个维度进行sum操作。

keep_dims:表示是否保留原始数据的维度,False相当于执行完后原始数据就会少一个维度。

reduction_indices:为了跟旧版本的兼容,现在已经不使用了。

官方的例子:

# 'x' is [[1, 1, 1]
#   [1, 1, 1]]
tf.reduce_sum(x) ==> 6
tf.reduce_sum(x, 0) ==> [2, 2, 2]
tf.reduce_sum(x, 1) ==> [3, 3]
tf.reduce_sum(x, 1, keep_dims=True) ==> [[3], [3]]
tf.reduce_sum(x, [0, 1]) ==> 6

自己做的例子:

import tensorflow as tf
import numpy as np
x = np.asarray([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])
x_p = tf.placeholder(tf.int32,[2,2,3])
y = tf.reduce_sum(x_p,0) #修改这里
with tf.Session() as sess:
 y = sess.run(y,feed_dict={x_p:x})
 print y
axis= 0:[[ 8 10 12] [14 16 18]] 
1+7 2+8 3+7 …….. 
axis=1: [[ 5 7 9] [17 19 21]] 
1+4 2+5 3 +6 …. 
axis=2: [[ 6 15] [24 33]] 
1+2+3 4+5+6…..

以上这篇对tf.reduce_sum tensorflow维度上的操作详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】

本文实例讲述了Python操作SQLite数据库的方法。分享给大家供大家参考,具体如下: SQLite简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含...

Python中函数参数调用方式分析

本文实例讲述了Python中函数参数调用方式。分享给大家供大家参考,具体如下: Python中函数的参数是很灵活的,下面分四种情况进行说明。 (1) fun(arg1, arg2, .....

python 动态调用函数实例解析

1. 根据字符串名称 动态调用 python文件内的方法eval("function_name")(参数) 2. 根据字符串 动态调用类中的静态方法,getattr(ClassName,...

python opencv minAreaRect 生成最小外接矩形的方法

python opencv minAreaRect 生成最小外接矩形的方法

使用python opencv返回点集cnt的最小外接矩形,所用函数为 cv2.minAreaRect(cnt) ,cnt是点集数组或向量(里面存放的是点的坐标),并且这个点集不定个数。...

python 并发编程 阻塞IO模型原理解析

python 并发编程 阻塞IO模型原理解析

阻塞IO(blocking IO) 在linux中,默认情况下所有的socket都是blocking,一个典型的读操作流程大概是这样: 当用户进程调用了recvfrom这个系统调用,k...