美文网首页
Tensorflow-API :对于tensor特定值进行逻辑判

Tensorflow-API :对于tensor特定值进行逻辑判

作者: 想学会飞行的阿番 | 来源:发表于2018-11-28 16:38 被阅读97次

    1.比较函数

    #判断每一个数是否大于threshold
    greater = tf.greater(x, threshold)
    #判断每一个数是否小于threshold
    less = tf.less(x,threshold)
    #判断每一个数是否大于等于threshold
    greater_equal=tf.greater_equal(x, threshold)
    #判断每一个数是否小于等于threshold
    less_equal=tf.less_equal(x, threshold)
    #判断每一个数是否等于threshold
    equal = tf.equal(x, threshold)
    #判断每一个数是否不等于threshold
    not_equal=tf.not_equal(x, threshold)
    

    2.这些比较函数会输出bool类型的tensor,那么就可以配合tf.where来使用

    tf.where(
        condition,
        x=None,
        y=None,
        name=None
    )
    

    x中为true的元素值不变,false的元素值替换为y中对应位置的值,因此,x,y是同一shape的
    实践小栗子:

    #将小于等于threshold的值替换为0
    greater = tf.greater(x, threshold)
    output = tf.where(greater,x,tf.subtract(x,x))
    with tf.Session() as sess:
      feed_dict={x:[1,2,3,4,5],threshold:3}
      print(sess.run(output,feed_dict=feed_dict))
    
    output: [0 0 0 4 5]
    
    1. tf.gather_nd允许在多维上进行索引,得到新的向量
      比如,想要获得大于0的元素的集合
    idxs =  tf.where(x>0)
    output = tf.gather_nd(idxs)
    

    相关文章

      网友评论

          本文标题:Tensorflow-API :对于tensor特定值进行逻辑判

          本文链接:https://www.haomeiwen.com/subject/prqzqqtx.html