如何解决Tensorflow 2 Keras的Pearson相关度量
我有一个模型,每个样本有8个输出。我想为每个样本的皮尔逊相关性计算,然后计算样本的皮尔逊值的平均值。然后,我想将其作为模型的度量插入。现在我有了这个功能:
def tf_pearson(x,y):
mx = tf.math.reduce_mean(input_tensor=x)
my = tf.math.reduce_mean(input_tensor=y)
xm,ym = x-mx,y-my
r_num = tf.math.reduce_mean(input_tensor=tf.multiply(xm,ym))
r_den = tf.math.reduce_std(xm) * tf.math.reduce_std(ym)
return r_num / r_den
我认为应该立即计算所有样本的皮尔逊值。
我想做这样的事情:
def tf_pearson(x,y):
print(x.shape)
print(y.shape)
mx = tf.math.reduce_mean(input_tensor=x,axis=1)
my = tf.math.reduce_mean(input_tensor=y,axis=1)
print(mx.shape)
print(my.shape)
xm,ym),axis=1)
r_den = tf.math.reduce_std(xm,axis=1) * tf.math.reduce_std(ym,axis=1)
return tf.math.reduce_mean(input_tensor=r_num / r_den)
但是由于张量一维形状为无,所以reduce_mean总是减小。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。