信息量
- 随机变量X,其取值有x1,x2,...,称这些取值为不同的事件。
- P(xi)=P(X=xi)越小,也就是事件发生的概率越小,我们认为该事件的信息量就越大。
- 信息量的计算:I(xi)=−logP(xi)
- 又叫自信息I,表示一个事件发生所包含的信息的多少。
信息量如此抽象的事物也能数字化,
在AI的世界中,多少并不重要,重要的是相对差异,
你拥有0.1有没有觉得很少,但其余所有人加起来不足0.01,
哇,地球上所有人的财富加起来 还不到 你财富的十分之一,是不是很富有!!!
这个公式重点有二:
1 使用了概率,概率指出了全体是什么,即讨论一个事物前先定下了边界,是在一定范围内去讨论一个问题
2 使用了log这个函数,恰如其份地表达了两个内容:
2.1 越大,就是概率越接近1,就是近乎100%发生的事,没有啥可再讨论的空间了,信息量很少
2.2 越小,就是概率越接近0,变数越多,包含的信息越多,啥都有可能发生啊,讨论几天几夜都不会有啥结果的
熵(Entropy)
熵:各类事件 信息量 的期望
熵的计算:H(X)=∑P(xi)I(xi)=−∑P(xi)logP(xi)
用于衡量事件/系统的信息量,信息量越大,其概率越小
由于该熵处理的是信息量,所以也有人叫这个熵为信息熵
相对熵(KL散度 Kullback-Leibler Divergence)
- KL离散度,也称KL距离,一般被用来计算两个分布的差异。KL离散度不具有对称性。
- 离散变量A和B分布的差别
Dkl(A||B) = ∑Pa(xi)log(Pa(xi)/Pb(xi))
= ∑A中xi的概率*log(A中xi的概率/B中xi的概率)
= ∑A中xi的概率*log(A中xi的概率) - ∑A中xi的概率*log(B中xi的概率)
= ∑P(A)log(P(A)) - ∑P(A)log(P(B))
观察上面公式可以知道:
当P(A)=P(B),即两个随机变量分布完全相同,KL离散度等于0;
注意离散事件的公式,减号的前一部分即随机变量A的熵的相反数。
DKL(A||B)≠DKL(B||A)
交叉熵
- 交叉熵公式:H(A,B)=−∑P_A(xi)logP_B(xi)
- D_{KL}(A||B)=−H(A)+H(A,B)
- KL离散度 = 交叉熵 - 熵
- 通常A表示真实样本或已有样本,其熵是固定的
- B表示未来样本或新的样本,用于预测
- 当熵固定的时候,用KL散度来衡量两个分布的差异,等价于用交叉熵来衡量。
- 在人工智能中
- A表示样本标签
- B表示模型输出,即由模型预测出来的数据分布
## 交叉熵在机器学习中的作用
- 我们根据经验猜测一个接近数据分布规律的模型y=f(x)
- 或者为P(X|w),样本已知,模型已定,模型参数待定
- 模型输出与实际数据就是两个分布
- 交叉熵则能够以“数字大小”反应这两个分布之间的差异
- 我们的目的是让交叉熵不断地减小
- 让模型输出B不断地接近数据分布A,直到不能再接近为止
- 至此,我们将实际问题转换为 求交叉熵极值 的问题
import torch
def entorpy(x,label):
"""两个分布越接近其交叉熵越小
"""
label = torch.tensor(label)
x1 = torch.tensor(x)
entorpy = -label*torch.log(x1)
return entorpy.sum()
label = [0,0,1]
x1 = [0.1,0.3,0.7]
print(entorpy(x1,label)) # tensor(0.3567)
label = [0,0,1]
x1 = [0.01,0.03,0.9]
print(entorpy(x1,label)) # tensor(0.1054)
label = [0,0,1]
x1 = [0.01,0.06,0.92]
print(entorpy(x1,label)) # tensor(0.0834)
闲谈
所谓理解,就是用一个事物去描述/阐述 另外一个事物
孤立的节点,无法让人理解
事物之间的联系,就是映射
以边表示关系,节点表示事物,形成的网络,就是事物的简化
以边表示的关系,有两种:
1. 必然
2. 随机
必然关系就像1+1=2一样,别问我为什么1+1就是2了,反正以此建立的数学体系可以解释很多客观现象
但很明显并没有解释完所有现象,至于是不是因为1+1有时候可以不为2导致的,俺不知道
万物经过漫长的运动,形成相对稳定的状态,这是必然关系经过时间积累的必然结果
随机,也可以用精准的数字来描述
概率就是干这个的
对于单个事件,5%发生与95%不发生,没有意义,啥也说明不了
对于群体事物,5%发生,就有统计学意义
那如何用数字这种精准的事物,去表示现实三维世界中的事物呢?
1. 把事物数字化
2. 建立事物间的映射关系,就像万有引力一样,任何两个事物之间都存在映射关系
并且事物之间的关系,不止一种
我们身在自然界,事物之间的关系,不用我们主动去发现/管理,
甚至我们感受不到多如繁星的关系网,
但在数字化的计算机,我们要先手工地建立事物之间的映射关系
参考