tensorflow中如何判断两个tensor值相等(tensor转array)

需要转化为numpy进行判断

转化为numpy的方法有两种

方法1: tf.Session().run(tensorA) 转化为numpy

print(type(tf.Session().run(tf.constant([1,2]))))

结果:<class ‘numpy.ndarray’>

方法2: 使用eval()方法

sess = tf.InteractiveSession()
print(type(tf.constant([1,3]).eval()))

或

sess = tf.Session()
with sess.as_default():
   print(type(tf.constant([1,2,3]).eval()))

结果: <class ‘numpy.ndarray’>

numpy数组数值对比

利用numpy见的数值判断方法:

#对于二维的数组,数组形状相同时才可以判断,如一个(2,3)的数组和一个(2,2)的数组判断时会报错
import numpy as np
a=np.array([[1,2,3],[4,5,6]])
b=np.array([[1,2,5],[4,4,5]])

c=(a==b)
d=c.any()  #只要有一个TRUE,就返回TRUE
e=c.all()   #必须都是True,才返回True,否则返回False

print("\n(a==b)的返回结果:\n",c)
print("\n使用any()函数返回的结果:",d)  
print("使用all()函数返回的结果:",e)

结果:

(a==b)的返回结果:
[[ True True False]
[ True False False]]

使用any()函数返回的结果: True
使用all()函数返回的结果: False

整体例子:

import tensorflow as tf
import numpy as np

(tf.Session().run(tensor_A)==tf.Session().run(tensor_B).all()

tensor转numpy参考:https://stackoverflow.com/questions/34097281/how-can-i-convert-a-tensor-into-a-numpy-array-in-tensorflow

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值