in_top_k(predictions, targets, k, name=None):
pretions:顾名思义就是要预测的数据
target:就是给的真实的数据
k:就是要预测的前k个最大数据的下标
整个函数的意义就是看pretions中的数据前k个最大的下标是否包含,target中对应位置的数字
例如:
import tensorflow as tf
A = [[0.8,0.7,0.5],[0.5,8,0.3]]
B = [0,1]
c = tf.nn.in_top_k(A,B,1)
se =tf.Session()
se.run(tf.global_variables_initializer())
print(se.run©)
结果:[ True True]
假如把上面B改为 [1,1]
结果就是:[False True]
要注意的是A中是两行,B中就得有两个数据
假如把上面B C
改为B = [0,0]
c = tf.nn.in_top_k(A,B,2)
结果为[ True True] 就应证了上面k的定义预测值中每行前两个最大的数字下标是否包含B中对应位的数字 包含为True 反之为False**
**