Tensorflow中tf.nn.bias_add()以及tf.add()和tf.add_n的实现


tf.nn.bias_add(): 

通俗解释:

    一个叫bias的向量加到一个叫value的矩阵上,是向量与矩阵的每一行进行相加,得到的结果和value矩阵大小相同。


import tensorflow as tf

a=tf.constant([[1,1],[2,2],[3,3]],dtype=tf.float32)
b=tf.constant([1,-1],dtype=tf.float32)
c=tf.constant([1],dtype=tf.float32)

with tf.Session() as sess:
    print('bias_add:')
    print(sess.run(tf.nn.bias_add(a, b)))
    #执行下面语句错误
    #print(sess.run(tf.nn.bias_add(a, c)))

输出结果:

bias_add:
[[ 2. 0.]
[ 3. 1.]

[ 4. 2.]]


tf.add( x,y, name=None):

通俗解释:

    这个情况比较多,最常见的是,一个叫x的矩阵和一个叫y的数相加,就是y分别与x的每个数相加,得到的结果和x大小相同。

import tensorflow as tf    
  
x=tf.constant([[1,2],[1,2]])    
y=tf.constant([[1,1],[1,2]])  
z=tf.add(x,y)  
  
x1=tf.constant(1)  
y1=tf.constant(2)  
z1=tf.add(x1,y1)  
  
x2=tf.constant(2)  
y2=tf.constant([1,2])  
z2=tf.add(x2,y2)  
  
x3=tf.constant([[1,2],[3,4]])    
y3=tf.constant([[1,1]])  
z3=tf.add(x3,y3)  
  
with tf.Session() as sess:  
    z_result,z1_result,z2_result,z3_result=sess.run([z,z1,z2,z3])  
    print('z =\n%s'%(z_result))  
    print('z1 =%s'%(z1_result))  
    print('z2 =%s'%(z2_result))  
    print('z3 =%s'%(z3_result))  

得到的结果是:

z =[[2 3]
    [2 4]]
z1 =3

z2 =[3 4]

z3 =[[2 3]
     [4 5]]

tf.add_n(inputs,name=None)

通俗解释:

    函数是实现一个列表的元素的相加。就是输入的对象是一个列表,列表里的元素可以是向量,矩阵等但没有广播功能

import tensorflow as tf;    
import numpy as np;    
    
input1 = tf.constant([1.0, 2.0, 3.0])    
input2 = tf.Variable(tf.random_uniform([3]))    
output = tf.add_n([input1, input2]) #注意输入是一个列表   
    
with tf.Session() as sess:    
    sess.run(tf.initialize_all_variables())    
    print (sess.run(input1 + input2))    
    print (sess.run(output))  

输出结果:

[1.4135424 2.694611  3.2243743]
[1.4135424 2.694611  3.2243743]

  • 21
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值