题目内容
(请给出正确答案)
[主观题]
对于给定的下面的一段计算香农信息熵的python程序(已知x1和x2的概率分布),则其输出结果应该为下
面的哪个选项? import numpy as np def calc_ent(x): x_value_list = set([x[i] for i in range(x.shape[0])]) ent = 0.0 for x_value in x_value_list: p = float(x[x == x_value].shape[0]) / x.shape[0]#概率 logp = np.log2(p) ent -= p * logp return ent x1=np.array([0.25, 0.25, 0.25, 0.25]) x2=np.array([0.1, 0.2, 0.3, 0.4]) print ("entropy of x1:", calc_ent(x1)) print ("entropy of x2: ", calc_ent(x2))
A、entropy of x1: 0.0; entropy of x2: 2.0
B、entropy of x1: 2.0; entropy of x2: 0.0
C、entropy of x1: 2.0; entropy of x2: 2.0
D、entropy of x1: 1.0; entropy of x2: 2.0
如搜索结果不匹配,请 联系老师 获取答案