我试图对每一列的熵,矩阵看起来像这样:
0.5 0.3333 0.2
0 0.3333 0.4
0.5 0.3333 0.4
每列加一,但是,矩阵中有一些零,所以如果我只是 log2(arr(i,:)),结果中会有一个 -Inf,所以整个事情都行不通
实际上我有一个巨大的矩阵,所以我希望程序运行得快,有解决办法吗?
这是我的解决方案,它的工作速度和 p .* log2(p) 一样快吗?
log2p = log2(p);
log2p(log2p==-Inf)=0;
entropy = entropy - p .* log2p;