top_k( )函数
- 1.生成任意维度张量
import numpy as np
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
import tensorflow as tf
# 创建3行4列的数组
x = np.random.randint(0,12,size=(3,4))
print('numpy数组:',x,'\n')
# 数组转化为张量
x = tf.convert_to_tensor(x)
print('张量:',x)
>>> numpy数组: [[ 7 5 4 7]
[ 3 4 7 0]
[10 4 3 6]]
>>> 张量: tf.Tensor(
[[ 7 5 4 7]
[ 3 4 7 0]
[10 4 3 6]], shape=(3, 4), dtype=int32)
- 2.top_k()函数实现
# top_k()
x = tf.math.top_k(x,2)
print("数值:",x.values,'\n')
print('索引值:',x.indices)
>>> 数值: tf.Tensor(
[[ 7 7]
[ 7 4]
[10 6]], shape=(3, 2), dtype=int32)
>>> 索引值: tf.Tensor(
[[0 3]
[2 1]
[0 3]], shape=(3, 2), dtype=int32)
- 3.top_k()函数作用讲解