Tensorflow中关于tf.metrics的返回值详解及其用法以及它和tf.losses的区别
import tensorflow as tf
import numpy as np
pred_0 = np.zeros(5) + 1
pred_1 = np.zeros(5) + 2
pred_2 = np.zeros(5) + 3
pred_3 = np.zeros(5) + 4
pred_4 = np.zeros(5) + 5
label = np.asarray([0, 0, 0, 0, 0])
predictions = np.stack((pred_0, pred_1, pred_2, pred_3, pred_4))
print('____________predictions______________')
print(predictions)
print('____________labels______________')
print(label)
pred_placeholder = tf.placeholder(tf.float16, shape=label.shape)
label_placeholder = tf.placeholder(tf.float16, label.shape)
mae = tf.metrics.mean_absolute_error(label_placeholder, pred_placeholder)
init = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer())
with tf.Session() as sess:
sess.run(init)
for i in range(predictions.shape[0]):
mae_value, update_op = sess.run(mae, feed_dict={label_placeholder: label, pred_placeholder: predictions[i]})
print(f'{mae_value} {update_op} {np.mean(predictions[i] - label)}')
欢迎大家关注DataLearner官方微信,接受最新的AI技术推送
