【熵的计算】

熵的计算

什么是熵?

定义:
熵是表示随机变量不确定性的度量

简单理解:熵就是混乱程度,一个集合中类别越多,越混乱,属于哪一个类别越不确定。


熵的计算公式:
在这里插入图片描述

简单理解一下公式:
(不知道为啥传不了图片)
观察对数函数图像可以看出 (「0-1」范围内)概率值越大(pi越大)
函数值(log(pi))越大,加上-号越小,也就是熵值越小


例:集合a=[1,2,3,4,5,6,7,8,9,10]
集合b=[1,1,1,1,1,1,1,1,2,2]

根据计算公式:

集合A的熵为:
− 10 × ( 1 10 × log ⁡ 2 1 10 ) -10\times (\frac{1}{10}\times \log_{2}{\frac{1}{10}} ) 10×(101×log2101)


集合B的熵为:
− ( 8 × 8 10 × log ⁡ 2 8 10 + 2 × 2 10 × log ⁡ 2 2 10 ) -(8\times \frac{8}{10}\times \log_{2}{\frac{8}{10}} +2\times \frac{2}{10}\times \log_{2}{\frac{2}{10}}) (8×108×log2108+2×102×log2102)



a=np.log2(8/10)
b=np.log2(2/10)
# 集合b的熵
c=(2/5*(16*a+b)) 
# 集合a的熵
d=-(np.log2(1/10))
print(c)
print(d)

结果:
请添加图片描述
可以看出集合a的熵值更大,更不稳定,属于哪一个类别更不确定

二分类问题中

【熵的计算】_第1张图片
当概率值为0.5 就是可能/不可能各占一半,
就像问前面的人是是男人还是女人,回答:男人可能性50%等于没说(最不确定)
当概率值为0或1,已经确定了 (100%发生或不发生)

信息增益:

特征x使得类y的不确定性减少的程度。
决策树中:
原来集合的熵与(经过节点生成的左右集合的熵之和)的差值
信息增益越大,类别确定性越高

你可能感兴趣的:(机器学习,python,人工智能)