python里怎么计算一个数组的熵(entropy)?

  统计/机器学习 模型验证 Python    浏览次数:949        分享
0

python里怎么计算一个数组的熵?

 

dirkdirk   2018-10-10 21:40



   1个回答 
3

用stats.entropy来算

from scipy import stats
import pandas as pd

def Entropy(labels, base=2):
    # 计算概率分布
    probs = pd.Series(labels).value_counts() / len(labels)
    # 计算底数为base的熵
    en = stats.entropy(probs, base=base)
    return en

运行结果

>>> Entropy([1, 1, 0, 1, 1])
0.72192809488736231


SofaSofa数据科学社区DS面试题库 DS面经

matt   2018-10-11 13:48



  相关主题

softmax模型和最大熵模型是否是一回事?   1回答

pytorch 的交叉熵损失总是报错,同样的结构改成MSELoss就没有问题   1回答

最小描述长度和香农熵有什么关系?   0回答

Gini指数、Gini系数、Gini不纯是一回事吗?   2回答

cross entropy是什么意思?   1回答

求问:Cart分类树为什么是基尼指数最小化准则   1回答

为什么决策树中用熵而不是基尼不纯度来作为划分依据?   2回答

决策树的熵是什么?怎么用熵来选分叉?   1回答

python里怎么求多元分类的F1 score?   1回答

micro和macro F1 score分别是什么意思?   2回答

如果我用交叉验证,还是否需要单独分出测试集?   1回答

k-fold cross validation的k怎么选   3回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!