tensorflow编程: Math
Arithmetic Operators
tf.add、tf.subtract、tf.multiply、tf.scalar_mul、tf.div、tf.divide、tf.truediv、tf.floordiv、tf.realdiv、tf.truncatediv、tf.floor_div、tf.truncatemod、tf.floormod、tf.mod、tf.cross
# coding=utf-8import tensorflow as tfx = tf.constant([[10, 20]], dtype=tf.float32)
y = tf.constant([[3, 4]], dtype=tf.float32)with tf.Session() as sess:# 对应元素 相加print '\ntf.add(x, y) : ', sess.run(tf.add(x, y))# 对应元素 相减print '\ntf.subtract(x, y) : ', sess.run(tf.subtract(x, y))# 对应元素 相乘print '\ntf.multiply(x, y) : ', sess.run(tf.multiply(x, y))# 所有元素 等比例放大print '\ntf.scalar_mul(9.0, x) : ', sess.run(tf.scalar_mul(9.0, x))# 对应元素 相除print '\ntf.div(x, y) : ', sess.run(tf.div(x, y))# 对应元素 相除print '\ntf.divide(x, y) : ', sess.run(tf.divide(x, y))# 对应元素 相除print '\ntf.truediv(x, y) : ', sess.run(tf.truediv(x, y))# 对应元素 地板除print '\ntf.floordiv(x, y) : ', sess.run(tf.floordiv(x, y))# 对应元素 截断除 取余print '\ntf.truncatemod(x, y) : ', sess.run(tf.truncatemod(x, y))# 对应元素 地板除 取余print '\ntf.floormod(x, y) : ', sess.run(tf.floormod(x, y))# 对应元素 相除 取余print '\ntf.mod(x, y) : ', sess.run(tf.mod(x, y))# 两组 3元素向量的tensor 交叉乘print '\ntf.cross([[10, 20, 30]], [[1, 2, 3]]) : ', sess.run(tf.cross([[10, 20, 30]], [[1, 2, 1]]))
tf.add(x, y) : [[ 13. 24.]]tf.subtract(x, y) : [[ 7. 16.]]tf.multiply(x, y) : [[ 30. 80.]]tf.scalar_mul(9.0, x) : [[ 90. 180.]]tf.div(x, y) : [[ 3.33333325 5. ]]tf.divide(x, y) : [[ 3.33333325 5. ]]tf.truediv(x, y) : [[ 3.33333325 5. ]]tf.floordiv(x, y) : [[ 3. 5.]]tf.truncatemod(x, y) : [[ 1. 0.]]tf.floormod(x, y) : [[ 1. 0.]]tf.mod(x, y) : [[ 1. 0.]]tf.cross([[10, 20, 30]], [[1, 2, 3]]) : [[-40 20 0]]
Basic Math Functions
tf.add_n、tf.abs、tf.negative、tf.sign、tf.reciprocal、tf.square、tf.round、tf.sqrt、tf.rsqrt、tf.pow、tf.exp、tf.expm1、tf.log、tf.log1p、tf.ceil、tf.floor、tf.maximum、tf.minimum、tf.cos、tf.sin、tf.lbeta、tf.tan、tf.acos、tf.asin、tf.atan、tf.cosh、tf.sinh、tf.asinh、tf.acosh、tf.atanh、tf.lgamma、tf.digamma、tf.erf、tf.erfc、tf.squared_difference、tf.rint
# coding=utf-8import tensorflow as tfx = tf.constant([[-1.5, 0, 2]], dtype=tf.float32)
y = tf.constant([[2, 0, 1]], dtype=tf.float32)with tf.Session() as sess:# 对应元素 相加print '\ntf.add_n([x, y]) : ', sess.run(tf.add_n([x, y]))# 求 绝对值print '\ntf.abs(x) : ', sess.run(tf.abs(x))# 求 相反数print '\ntf.negative(x) : ', sess.run(tf.negative(x))# 求 符号print '\ntf.sign(x) : ', sess.run(tf.sign(x))# 求 倒数print '\ntf.reciprocal(x) : ', sess.run(tf.reciprocal(x))# 求 平方print '\ntf.square(x) : ', sess.run(tf.square(x))# 求 各元素各自距离最近的整数;若在中间,则取偶数值print '\ntf.round(x) : ', sess.run(tf.round(x))# 求 平方根print '\ntf.sqrt(x) : ', sess.run(tf.sqrt(x))# 求 平方根的倒数print '\ntf.rsqrt(x) : ', sess.run(tf.rsqrt(x))# 求 x各元素的y各元素次方print '\ntf.pow(x) : ', sess.run(tf.pow(x, y))# 求 自然数指数,即e^xprint '\ntf.exp(x) : ', sess.run(tf.exp(x))# 求 自然指数减1,即e^x-1print '\ntf.expm1(x) : ', sess.run(tf.expm1(x))# 求 自然对数print '\ntf.log(x) : ', sess.run(tf.log(x))# 求 加1后的自然对数print '\ntf.log1p(x) : ', sess.run(tf.log1p(x))# 求 天花板整数print '\ntf.ceil(x) : ', sess.run(tf.ceil(x))# 求 地板整数print '\ntf.floor(x) : ', sess.run(tf.floor(x))# 求 各对应位置 上的 最大值print '\ntf.maximum(x) : ', sess.run(tf.maximum(x, y))# 求 各对应位置 上的 最小值print '\ntf.minimum(x) : ', sess.run(tf.minimum(x, y))# 求 cos(x)print '\ntf.cos(x) : ', sess.run(tf.cos(x))# 求 sin(x)print '\ntf.sin(x) : ', sess.run(tf.sin(x))# 求 ln(|Beta(x)|), 并以最末尺度进行归纳。print '\ntf.lbeta(x) : ', sess.run(tf.lbeta(x))# 求 tan(x)print '\ntf.tan(x) : ', sess.run(tf.tan(x))# 求 acos(x)print '\ntf.acos(x) : ', sess.run(tf.acos(x))# 求 asin(x)print '\ntf.asin(x) : ', sess.run(tf.asin(x))# 求 atan(x)print '\ntf.atan(x) : ', sess.run(tf.atan(x))# 求 cosh(x)print '\ntf.cosh(x) : ', sess.run(tf.cosh(x))# 求 sinh(x)print '\ntf.sinh(x) : ', sess.run(tf.sinh(x))# 求 asinh(x)print '\ntf.asinh(x) : ', sess.run(tf.asinh(x))# 求 acosh(x)print '\ntf.acosh(x) : ', sess.run(tf.acosh(x))# 求 atanh(x)print '\ntf.atanh(x) : ', sess.run(tf.atanh(x))# 求 ln(gamma(x))print '\ntf.lgamma(x) : ', sess.run(tf.lgamma(x))# 求 lgamma的导数,即gamma‘/gammaprint '\ntf.digamma(x) : ', sess.run(tf.digamma(x))# 求 高斯误差print '\ntf.erf(x) : ', sess.run(tf.erf(x))# 求 高斯互补误差print '\ntf.erfc(x) : ', sess.run(tf.erfc(x))# 求 (x-y)(x-y)print '\ntf.squared_difference(x) : ', sess.run(tf.squared_difference(x, y))# 求 离x最近的整数,若为中间值,取偶数值。print '\ntf.rint(x) : ', sess.run(tf.rint(x))
tf.add_n([x, y]) : [[ 0.5 0. 3. ]]tf.abs(x) : [[ 1.5 0. 2. ]]tf.negative(x) : [[ 1.5 -0. -2. ]]tf.sign(x) : [[-1. 0. 1.]]tf.reciprocal(x) : [[-0.66666669 inf 0.5 ]]tf.square(x) : [[ 2.25 0. 4. ]]tf.round(x) : [[-2. 0. 2.]]tf.sqrt(x) : [[ nan 0. 1.41421354]]tf.rsqrt(x) : [[ nan inf 0.70710677]]tf.pow(x) : [[ 2.25 1. 2. ]]tf.exp(x) : [[ 0.22313017 1. 7.38905621]]tf.expm1(x) : [[-0.77686983 0. 6.38905621]]tf.log(x) : [[ nan -inf 0.69314718]]tf.log1p(x) : [[ nan 0. 1.09861231]]tf.ceil(x) : [[-1. 0. 2.]]tf.floor(x) : [[-2. 0. 2.]]tf.maximum(x) : [[ 2. 0. 2.]]tf.minimum(x) : [[-1.5 0. 1. ]]tf.cos(x) : [[ 0.0707372 1. -0.41614684]]tf.sin(x) : [[-0.997495 0. 0.90929741]]tf.lbeta(x) : [ inf]tf.tan(x) : [[-14.1014204 0. -2.18503976]]tf.acos(x) : [[ nan 1.57079637 nan]]tf.asin(x) : [[ nan 0. nan]]tf.atan(x) : [[-0.98279375 0. 1.10714877]]tf.cosh(x) : [[ 2.3524096 1. 3.76219583]]tf.sinh(x) : [[-2.12927938 0. 3.62686038]]tf.asinh(x) : [[-1.19476318 0. 1.44363546]]tf.acosh(x) : [[ nan nan 1.31695795]]tf.atanh(x) : [[ nan 0. nan]]tf.lgamma(x) : [[ 0.86004704 inf 0. ]]tf.digamma(x) : [[ 0.70315683 inf 0.42278421]]tf.erf(x) : [[-0.96610516 0. 0.99532229]]tf.erfc(x) : [[ 1.9661051 1. 0.00467773]]tf.squared_difference(x) : [[ 12.25 0. 1. ]]tf.rint(x) : [[-2. 0. 2.]]
Matrix Math Functions
tf.diag、tf.diag_part、tf.trace、tf.transpose(a, perm=None)、tf.eye、tf.matrix_diag、tf.matrix_diag_part、tf.matrix_band_part、tf.matrix_set_diag、tf.matrix_transpose、tf.matmul、tf.norm、tf.matrix_determinant、tf.matrix_inverse、tf.cholesky、tf.matrix_triangular_solve、tf.matrix_solve_ls、tf.qr、tf.self_adjoint_eig、tf.self_adjoint_eigvals、tf.svd
# coding=utf-8
import tensorflow as tfx = tf.constant([[1,5,0],[0,2,0],[0,0,3]])
x_f = tf.cast(x, tf.float32)
y = tf.constant([10, 20, 30])with tf.Session() as sess:# 返回 对角矩阵print '\ntf.diag(y) : \n', sess.run(tf.diag(y))# 返回 对角阵的 对角元素print '\ntf.diag_part(x) : \n', sess.run(tf.diag_part(x))# 返回 矩阵的 迹print '\ntf.trace(x) : \n', sess.run(tf.trace(x))# 返回 矩阵的 转置。 perm参数项: x的尺寸排列顺序,默认为None。print '\ntf.transpose(x) : \n', sess.run(tf.transpose(x))# 返回 单位矩阵print '\ntf.eye(3) : \n', sess.run(tf.eye(3))# 根据对角值 返回 一批对角矩阵print '\ntf.matrix_diag([[1,2,3],[4,5,6]]) : \n', sess.run(tf.matrix_diag([[1,2,3],[4,5,6]]))# 返回 批对角阵 的 对角元素print '\ntf.matrix_diag_part([x, x]) : \n', sess.run(tf.matrix_diag_part([x, x]))# 返回矩阵的 上三角矩阵print '\ntf.matrix_band_part(x, 0, -1) : \n', sess.run(tf.matrix_band_part(x, 0, -1))# 返回矩阵的 下三角矩阵print '\ntf.matrix_band_part(x, -1, 0) : \n', sess.run(tf.matrix_band_part(x, -1, 0))# 返回矩阵的 对角矩阵print '\ntf.matrix_band_part(x, 0, 0) : \n', sess.run(tf.matrix_band_part(x, 0, 0))# 将输入矩阵的对角元素置换为对角元素print '\ntf.matrix_set_diag(x, y) : \n', sess.run(tf.matrix_set_diag(x, y))# 返回 转置矩阵print '\ntf.matrix_transpose(x) : \n', sess.run(tf.matrix_transpose(x))# 矩阵乘法print '\ntf.matmul(x, x) : \n', sess.run(tf.matmul(x, x))# 求 范数print '\ntf.norm(x_f) : \n', sess.run(tf.norm(x_f))# 求 行列式print '\ntf.matrix_determinant(x_f) : \n', sess.run(tf.matrix_determinant(x_f))# 求 逆矩阵print '\ntf.matrix_inverse(x_f) : \n', sess.run(tf.matrix_inverse(x_f))# 进行 cholesky分解print '\ntf.cholesky(tf.constant([[2, -1], [-1, 5]], dtype=tf.float32))) : \n', sess.run(tf.cholesky(tf.constant([[2, -1], [-1, 5]], dtype=tf.float32)))# 对矩阵进行 qr分解print '\ntf.qr(x_f) : \n', sess.run(tf.qr(x_f))# 求取 特征值 和 特征向量print '\ntf.tf.self_adjoint_eig(x_f) : \n', sess.run(tf.self_adjoint_eig(x_f))# 计算 多个矩阵 的 特征值print '\ntf.self_adjoint_eigvals([x_f, x_f]) : \n', sess.run(tf.self_adjoint_eigvals([x_f, x_f]))# 进行 奇异值分解print '\ntf.svd(x_f) : \n', sess.run(tf.svd(x_f))
tf.diag(y) :
[[10 0 0][ 0 20 0][ 0 0 30]]tf.diag_part(x) :
[1 2 3]tf.trace(x) :
6tf.transpose(x) :
[[1 0 0][5 2 0][0 0 3]]tf.eye(3) :
[[ 1. 0. 0.][ 0. 1. 0.][ 0. 0. 1.]]tf.matrix_diag([[1,2,3],[4,5,6]]) :
[[[1 0 0][0 2 0][0 0 3]][[4 0 0][0 5 0][0 0 6]]]tf.matrix_diag_part([x, x]) :
[[1 2 3][1 2 3]]tf.matrix_band_part(x, 0, -1) :
[[1 5 0][0 2 0][0 0 3]]tf.matrix_band_part(x, -1, 0) :
[[1 0 0][0 2 0][0 0 3]]tf.matrix_band_part(x, 0, 0) :
[[1 0 0][0 2 0][0 0 3]]tf.matrix_set_diag(x, y) :
[[10 5 0][ 0 20 0][ 0 0 30]]tf.matrix_transpose(x) :
[[1 0 0][5 2 0][0 0 3]]tf.matmul(x, x) :
[[ 1 15 0][ 0 4 0][ 0 0 9]]tf.norm(x_f) :
6.245tf.matrix_determinant(x_f) :
6.0tf.matrix_inverse(x_f) :
[[ 1. -2.5 0. ][ 0. 0.5 0. ][ 0. 0. 0.33333334]]tf.cholesky(tf.constant([[2, -1], [-1, 5]], dtype=tf.float32))) :
[[ 1.41421354 0. ][-0.70710677 2.12132025]]tf.qr(x_f) :
Qr(q=array([[ 1., 0., 0.],[ 0., 1., 0.],[ 0., 0., 1.]], dtype=float32), r=array([[ 1., 5., 0.],[ 0., 2., 0.],[ 0., 0., 3.]], dtype=float32))tf.tf.self_adjoint_eig(x_f) :
(array([ 1., 2., 3.], dtype=float32), array([[ 1., 0., 0.],[ 0., 1., 0.],[ 0., 0., 1.]], dtype=float32))tf.self_adjoint_eigvals([x_f, x_f]) :
[[ 1. 2. 3.][ 1. 2. 3.]]tf.svd(x_f) :
(array([ 5.46498585, 3. , 0.36596629], dtype=float32), array([[ 0.93272191, 0. , 0.36059672],[ 0.36059672, 0. , -0.93272191],[ 0. , 1. , 0. ]], dtype=float32), array([[ 0.17067236, 0. , 0.9853279 ],[ 0.9853279 , 0. , -0.17067236],[ 0. , 1. , 0. ]], dtype=float32))
Tensor Math Function
tf.tensordot
# coding=utf-8
import tensorflow as tfx = tf.constant([[1,5,0],[0,2,0],[0,0,3]])
x_f = tf.cast(x, tf.float32)
y = tf.constant([10, 20, 30])with tf.Session() as sess:# 同numpy.tensordot,根据axis计算点乘。输入:axes=1或axes=[[1],[0]],即为矩阵乘。print '\ntf.tensordot(x, x, axes=1) : \n', sess.run(tf.tensordot(x, x, axes=1))
tf.tensordot(x, x, axes=1) :
[[ 1 15 0][ 0 4 0][ 0 0 9]]
Complex Number Functions
tf.complex、tf.conj、tf.imag、tf.real
# coding=utf-8
import tensorflow as tfx = tf.constant([[1,5,0],[0,2,0],[0,0,3]])
x_f = tf.cast(x, tf.float32)
y = tf.constant([10, 20, 30])with tf.Session() as sess:# 将实数 转化为 复数print '\ntf.complex(x_f, x_f) : \n', sess.run(tf.complex(x_f, x_f))# 返回 x的 共轭复数print '\ntf.conj(tf.constant([1+2j, 2-3j])) : \n', sess.run(tf.conj(tf.constant([1+2j,2-3j])))# 返回 虚数部分print '\ntf.imag(tf.constant([1+2j,2-3j])): \n', sess.run(tf.imag(tf.constant([1+2j,2-3j])))# 返回 实数部分print '\ntf.real(tf.constant([1+2j,2-3j])): \n', sess.run(tf.real(tf.constant([1+2j,2-3j])))
tf.complex(x_f, x_f) :
[[ 1.+1.j 5.+5.j 0.+0.j][ 0.+0.j 2.+2.j 0.+0.j][ 0.+0.j 0.+0.j 3.+3.j]]tf.conj(tf.constant([1+2j, 2-3j])) :
[ 1.-2.j 2.+3.j]tf.imag(tf.constant([1+2j,2-3j])):
[ 2. -3.]tf.real(tf.constant([1+2j,2-3j])):
[ 1. 2.]
Reduction
tf.reduce_sum、tf.reduce_prod、tf.reduce_min、tf.reduce_max、tf.reduce_mean、tf.reduce_all、tf.reduce_any、tf.reduce_logsumexp、tf.count_nonzero、tf.accumulate_n
# coding=utf-8
import tensorflow as tfx = tf.constant(range(1, 10), shape=[3, 3])
x_bool = tf.constant([[True,True,False,False],[True,False,False,True]])with tf.Session() as sess:# 沿着维度axis 计算 元素和 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_sum(x) : \n', sess.run(tf.reduce_sum(x))print '\ntf.reduce_sum(x, axis=0) : \n', sess.run(tf.reduce_sum(x, axis=0))print '\ntf.reduce_sum(x, axis=1) : \n', sess.run(tf.reduce_sum(x, axis=1))# 沿着维度axis 计算 元素积 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_prod(x) : \n', sess.run(tf.reduce_prod(x))print '\ntf.reduce_prod(x, axis=0) : \n', sess.run(tf.reduce_prod(x, axis=0))print '\ntf.reduce_prod(x, axis=1) : \n', sess.run(tf.reduce_prod(x, axis=1))# 沿着维度axis 计算 最小值 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_min(x) : \n', sess.run(tf.reduce_min(x))print '\ntf.reduce_min(x, axis=0) : \n', sess.run(tf.reduce_min(x, axis=0))print '\ntf.reduce_min(x, axis=1) : \n', sess.run(tf.reduce_min(x, axis=1))# 沿着维度axis 计算 最大值 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_max(x) : \n', sess.run(tf.reduce_max(x))print '\ntf.reduce_max(x, axis=0) : \n', sess.run(tf.reduce_max(x, axis=0))print '\ntf.reduce_max(x, axis=1) : \n', sess.run(tf.reduce_max(x, axis=1))# 沿着维度axis 计算 均值 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_mean(x) : \n', sess.run(tf.reduce_mean(x))print '\ntf.reduce_mean(x, axis=0) : \n', sess.run(tf.reduce_mean(x, axis=0))print '\ntf.reduce_mean(x, axis=1) : \n', sess.run(tf.reduce_mean(x, axis=1))# 沿着维度axis 计算 逻辑与 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_all(x_bool) : \n', sess.run(tf.reduce_all(x_bool))print '\ntf.reduce_all(x_bool, ax_boolis=0) : \n', sess.run(tf.reduce_all(x_bool, axis=0))print '\ntf.reduce_all(x_bool, ax_boolis=1) : \n', sess.run(tf.reduce_all(x_bool, axis=1))# 沿着维度axis 计算 逻辑或 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_any(x_bool) : \n', sess.run(tf.reduce_any(x_bool))print '\ntf.reduce_any(x_bool, ax_boolis=0) : \n', sess.run(tf.reduce_any(x_bool, axis=0))print '\ntf.reduce_any(x_bool, ax_boolis=1) : \n', sess.run(tf.reduce_any(x_bool, axis=1))# 沿着维度axis 计算 log(sum(exp())) 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。print '\ntf.reduce_min(x) : \n', sess.run(tf.reduce_min(x))print '\ntf.reduce_min(x, axis=0) : \n', sess.run(tf.reduce_min(x, axis=0))print '\ntf.reduce_min(x, axis=1) : \n', sess.run(tf.reduce_min(x, axis=1))# 沿着维度axis 计算 非0个数 。axis=None 时沿所有维度求和;keep_dims=True 时阶数保持不变。a = tf.constant([[0,0,0], [0,1,2]])print '\ntf.count_nonzero(a) : \n', sess.run(tf.count_nonzero(a))print '\ntf.count_nonzero(a, axis=0) : \n', sess.run(tf.count_nonzero(a, axis=0))print '\ntf.count_nonzero(a, axis=1) : \n', sess.run(tf.count_nonzero(a, axis=1))# 相对位置 元素相加print '\ntf.accumulate_n([x, x]) : \n', sess.run(tf.accumulate_n([x, x]))
tf.reduce_sum(x) :
45tf.reduce_sum(x, axis=0) :
[12 15 18]tf.reduce_sum(x, axis=1) :
[ 6 15 24]tf.reduce_prod(x) :
362880tf.reduce_prod(x, axis=0) :
[ 28 80 162]tf.reduce_prod(x, axis=1) :
[ 6 120 504]tf.reduce_min(x) :
1tf.reduce_min(x, axis=0) :
[1 2 3]tf.reduce_min(x, axis=1) :
[1 4 7]tf.reduce_max(x) :
9tf.reduce_max(x, axis=0) :
[7 8 9]tf.reduce_max(x, axis=1) :
[3 6 9]tf.reduce_mean(x) :
5tf.reduce_mean(x, axis=0) :
[4 5 6]tf.reduce_mean(x, axis=1) :
[2 5 8]tf.reduce_all(x_bool) :
Falsetf.reduce_all(x_bool, ax_boolis=0) :
[ True False False False]tf.reduce_all(x_bool, ax_boolis=1) :
[False False]tf.reduce_any(x_bool) :
Truetf.reduce_any(x_bool, ax_boolis=0) :
[ True True False True]tf.reduce_any(x_bool, ax_boolis=1) :
[ True True]tf.reduce_min(x) :
1tf.reduce_min(x, axis=0) :
[1 2 3]tf.reduce_min(x, axis=1) :
[1 4 7]tf.count_nonzero(a) :
2tf.count_nonzero(a, axis=0) :
[0 1 1]tf.count_nonzero(a, axis=1) :
[0 2]tf.accumulate_n([x, x]) :
[[ 2 4 6][ 8 10 12][14 16 18]]
Scan
tf.cumsum、tf.cumprod
# coding=utf-8
import tensorflow as tfx = tf.constant(range(1, 10), shape=[3, 3])
x_bool = tf.constant([[True,True,False,False],[True,False,False,True]])with tf.Session() as sess:# 沿着维度axis 进行 累加 。axis=None 时沿所有维度累加。print '\ntf.cumsum(x) : \n', sess.run(tf.cumsum(x))print '\ntf.cumsum(x, axis=0) : \n', sess.run(tf.cumsum(x, axis=0))print '\ntf.cumsum(x, axis=1) : \n', sess.run(tf.cumsum(x, axis=1))# 沿着维度axis 进行 累积 。axis=None 时沿所有维度累加。print '\ntf.cumprod(x) : \n', sess.run(tf.cumprod(x))print '\ntf.cumprod(x, axis=0) : \n', sess.run(tf.cumprod(x, axis=0))print '\ntf.cumprod(x, axis=1) : \n', sess.run(tf.cumprod(x, axis=1))
tf.cumsum(x) :
[[ 1 2 3][ 5 7 9][12 15 18]]tf.cumsum(x, axis=0) :
[[ 1 2 3][ 5 7 9][12 15 18]]tf.cumsum(x, axis=1) :
[[ 1 3 6][ 4 9 15][ 7 15 24]]tf.cumprod(x) :
[[ 1 2 3][ 4 10 18][ 28 80 162]]tf.cumprod(x, axis=0) :
[[ 1 2 3][ 4 10 18][ 28 80 162]]tf.cumprod(x, axis=1) :
[[ 1 2 6][ 4 20 120][ 7 56 504]]
Segmentation
Sequence Comparison and Indexing
tf.argmin、tf.argmax
# coding=utf-8
import tensorflow as tfx = tf.constant(range(1, 10), shape=[3, 3])
x_bool = tf.constant([[True,True,False,False],[True,False,False,True]])with tf.Session() as sess:# 返回 沿axis维度 最小值 的 下标。axis=None 时 返回 全局 最小值 的下标。print '\ntf.argmin(x) : \n', sess.run(tf.argmin(x))print '\ntf.argmin(x, axis=0) : \n', sess.run(tf.argmin(x, axis=0))print '\ntf.argmin(x, axis=1) : \n', sess.run(tf.argmin(x, axis=1))# 返回 沿axis维度 最大值 的 下标。axis=None 时 返回 全局 最大值 的下标。print '\ntf.argmax(x) : \n', sess.run(tf.argmax(x))print '\ntf.argmax(x, axis=0) : \n', sess.run(tf.argmax(x, axis=0))print '\ntf.argmax(x, axis=1) : \n', sess.run(tf.argmax(x, axis=1))
tf.argmin(x) :
[0 0 0]tf.argmin(x, axis=0) :
[0 0 0]tf.argmin(x, axis=1) :
[0 0 0]tf.argmax(x) :
[2 2 2]tf.argmax(x, axis=0) :
[2 2 2]tf.argmax(x, axis=1) :
[2 2 2]
tensorflow编程: Math相关推荐
- TensorFlow编程结构
TensorFlow编程结构 TensorFlow 与其他编程语言非常不同. 首先通过将程序分为两个独立的部分,构建任何拟创建神经网络的蓝图,包括计算图的定义及其执行.起初这对于传统程序员来说看起来很 ...
- tensorflow编程入门笔记之一
基本上每一个语言或者工具都有自己的"hello world" demo,那么学习它们一般都会从这个"hello world"开始.今天我们就来看看tensorf ...
- (Python+Tensorflow)编程踩坑集锦
(Python+Tensorflow)编程踩坑集锦 1 开发环境安装 推荐视频:https://www.icourse163.org/learn/PKU-1002536002?tid=14529374 ...
- 机器学习速成课程 | 练习 | Google Development——编程练习:TensorFlow 编程概念
TensorFlow 编程概念 学习目标: 学习 TensorFlow 编程模型的基础知识,重点了解以下概念: 张量 指令 图 会话 构建一个简单的 TensorFlow 程序,使用该程序绘制一个默认 ...
- TensorFlow编程基础题库推荐
TensorFlow表达了高层次的机器学习计算,大幅简化了第一代系统,并且具备更好的灵活性和可延展性.TensorFlow,简单看就是Tensor和Flow,即意味着Tensor和Flow是Tenso ...
- 使用TensorFlow编程实现一元逻辑回归
内容回顾 逻辑回归是在线性模型的基础上,再增加一个Sigmoid函数来实现的. 输入样本特征,经过线性组合之后,得到的是一个连续值,经过Sigmoid函数,把它转化为一个0-1之间的概率,再通过设置一 ...
- DeepLearning | Tensorflow编程基础:Session、Constant、Variable、Tensor、Placeholder、OP
转载地址https://blog.csdn.net/liangjun_feng/article/details/79723048 Tensorflow的运行方式 Tensorflow作为谷歌开源的深度 ...
- TensorFlow精进之路(九):TensorFlow编程基础
1.概述 卷积部分的知识点在博客:TensorFlow精进之路(三):两层卷积神经网络模型将MNIST未识别对的图片筛选出来已经写过,所以不再赘述.这一节简单聊聊tensorflow的编程基础. 2. ...
- tensorflow编程: Inputs and Readers
Placeholders tf.placeholder 插入一个坐等 被feed_dict 的 tensor占位符 . tf.placeholder (dtype, shape=None, name= ...
最新文章
- Y项目轶事之入场半个月
- putty network error:Connection refused 乱码
- Codeforces 558E A Simple Task
- 我看好嵌入式的未来!!!
- ppt倒计时_年终会议做一个这样的倒计时PPT,保证惊艳全场!1分钟就能学会
- 电池供电的电容麦_电容话筒受潮了怎么办?
- office漏洞利用--获取shell
- Axis2搭建WebService服务
- 第2章线性表的基本使用及其cpp示例(第二章汇总,线性表都在这里)
- 内部导线拉力测试_珠海后环回收试验机现金支付拉力试验机回收和谐温馨的环境...
- text html template判断,template-web中循环 判断 计算
- spring MVC interceptor post遇到问题
- Black-White-Blocks
- 哈夫曼编码(自底向上的哈夫曼编码)
- 电脑进程说明,常见,作用,说明,是否,查看,问题
- 如何实现中文汉字进行笔划(笔画)排序?
- android 网络文件系统,android在手机上的文件系统框架的阐述
- 案例-做一个30分钟倒计时
- 微信小程序开发之——音乐播放器-播放器(3.4)
- 10部令人泣不成声的经典电影
热门文章
- Python爬虫入门(二):使用requests和xpath爬取论坛发帖列表
- CFileDialog自动追加扩展名
- 解决:Mac XCode一直卡在安装中
- 怎样构建笔记本虚拟wifi热点
- 总线式-七氟丙烷灭火系统结构图
- alin的学习之路:C语言篇(一)(内存四区模型,宏函数,调用惯例,内存存储方式)
- 把彩色照片用css样式改成灰色照片
- 解决vue npm ERR! missing script: dev
- 初中女生学计算机好还是学医好,最好就业的医学专业排名 适合女生的五个医学专业...
- 【分享】世界第一 TotalCMD全能文件管理器