首页 > 其他 > 详细

tensorflow 小记——如何对张量做任意行求和,得到新tensor(一种方法:列表生成式)

时间:2020-10-29 09:31:45      阅读:180      评论:0      收藏:0      [点我收藏+]

希望实现图片上的功能

技术分享图片

 

 

import tensorflow as tf
a = tf.range(10,dtype=float)
b = a
a = tf.reshape(a,[-1,1])
a = tf.tile(a,[1,3])

sess = tf.Session()
print(sess.run(b))
print(sess.run(a))

[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[[0. 0. 0.]
[1. 1. 1.]
[2. 2. 2.]
[3. 3. 3.]
[4. 4. 4.]
[5. 5. 5.]
[6. 6. 6.]
[7. 7. 7.]
[8. 8. 8.]
[9. 9. 9.]]


有没有什么方法让10*3这个tensor,每三行相加?

解答图片的问题:

tensorflow方法如下:

import tensorflow as tf
a = tf.range(10,dtype=float)
b = a
a = tf.reshape(a,[-1,1])
a = tf.tile(a,[1,3])


c = tf.convert_to_tensor([a[i] if i<=1 else tf.reduce_sum(a[i-2:i+1],0)/3 +a[i] for i in range(a.shape[0])])        
        
sess = tf.Session()
print(sess.run(b))
print(sess.run(a))
print(sess.run(c))

技术分享图片

 

 

pytorch方法大致如下:

技术分享图片

 

tensorflow 小记——如何对张量做任意行求和,得到新tensor(一种方法:列表生成式)

原文:https://www.cnblogs.com/qiezi-online/p/13894193.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!