我想为两个矩阵(输入)计算熵。我希望输出熵仍使用矩阵形状。
例如::
import numpy as np
def entropy(x, y):
probs = np.mean((x, y), axis=0)
p = probs.astype(np.float32)
return (-p * np.log2(p))
inp1 = np.random.random([5,4])
inp2 = np.random.random([5,4])
inp1_flatt = inp1.reshape([-1])
inp2_flatt = inp2.reshape([-1])
combine_out = entropy(inp1_flatt, inp2_flatt).reshape([5,4])
在entropy()
函数中,我认为在计算后验概率(概率)时遇到问题。
如何以正确的方式计算后验概率?
编辑::
这两个输入假设是神经网络的回归输出。我要保存它们的形状。由于熵的输入(神经网络的输出)的形状为[5,4],因此我希望熵的输出形状为[5,4]。我想做一些类似的事情,使用熵(联合熵方法获取连续值)