tensorflow数据统计

拜拜、爱过 提交于 2020-01-22 22:19:48

本篇内容包括,tf.norm(张量的范数)、tf.reduce_min/max(最大最小值)、tf.argmax/argmin(最大最小值的位置)、tf.equal(张量的比较)、tf.unique(张量的独特值)

1.tf.norm

  · 二范数 ||x||2 = (Σxk2)1/2

  · 一范数 ||x||= Σ|xk|

  · 无穷范数 ||x||= max|xk|

# 二范数
a = tf.ones([2,2])
print(tf.norm(a))
print(tf.norm(a,ord=2,axis=0))
print(tf.sqrt(tf.reduce_sum(tf.square(a))))
# 一范数
print(tf.norm(a,ord=1))
print(tf.norm(a,ord=1,axis=0))
print(tf.norm(a,ord=1,axis=1))

 

 2.reduce_min/max/mean

a = tf.random.normal([4,10])
# 全值,即把tensor打平为[40]
print(tf.reduce_min(a),tf.reduce_max(a),tf.reduce_mean(a))
# 指定参数轴
print(tf.reduce_min(a,axis=1),tf.reduce_max(a,axis=1),tf.reduce_mean(a,axis=1))

 

 3.argmax/argmin

print(tf.argmax(a).shape)
print(tf.argmax(a))
print(tf.argmin(a).shape)
print(tf.argmin(a))

 

 

4.tf.equal

 

accuracy求值应用

# 假定网络输出a
a = tf.constant([[0.1,0.7,0.9],[0.9,0.05,0.05]])
# 预测输出索引
pred = tf.cast(tf.argmax(a,axis=1),dtype=tf.int32)
# 实际标签
y = tf.constant([2,1])
print(tf.equal(y,pred))
accuracy = tf.reduce_sum(tf.cast(tf.equal(y,pred),dtype=tf.int32))/2
print(accuracy)

5.tf.unique

# tf.unique用来去除重复元素
a = tf.range(5)
print(tf.unique(a))
a = tf.constant([4,2,2,4,3])
print(tf.unique(a))

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!