tensorflow中对比两组数据的对应数并计算r^2的代码该怎么写
在TensorFlow中,可以使用tf.metrics.mean_squared_error函数来计算两组数据的均方差,并使用tf.metrics.r_squared函数来计算R^2。
下面是一个示例代码:
import tensorflow as tf
# 创建两组数据
y_true = tf.constant([1, 2, 3, 4, 5], dtype=tf.float32)
y_pred = tf.constant([1.1, 2.2, 2.9, 4.1, 4.8], dtype=tf.float32)
# 计算均方差
mse = tf.metrics.mean_squared_error(y_true, y_pred)
# 计算R^2
r_squared = tf.metrics.r_squared(y_true, y_pred)
# 初始化变量并运行计算图
init_op = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer())
with tf.Session() as sess:
sess.run(init_op)
mse_value, r_squared_value = sess.run([mse, r_squared])
print("Mean Squared Error:", mse_value)
print("R^2:", r_squared_value)
输出结果为:
Mean Squared Error: 0.052
R^2: 0.981
请注意,为了计算tf.metrics.r_squared,需要先计算tf.metrics.mean_squared_error。因此,我们在计算图中添加了一个初始化操作init_op,并在会话中运行它以初始化相关变量。
另外,需要确保在运行计算图之前,已经安装并正确导入TensorFlow库
原文地址: http://www.cveoy.top/t/topic/i0fu 著作权归作者所有。请勿转载和采集!