大家在学习深度学习的过程中,都会碰到cross-entropy这个词,中文叫“交叉熵”,多么高大上的名词!
然而这个“熵”到底是干啥用的,实际上很多人包括我,在一开始都没好好琢磨过。
在面试算法工程师的过程中,经常会问道这样的问题:“什么是熵?”
信息熵?
热力学那个先不说,这里准确的说是“信息熵”。而要知道什么是信息熵,我们得知道什么是信息。
网上的“太阳从东边升起来”的例子大家应该都看过了。我们说,这是一句毫无信息量的话,因为他没有消除任何不确定性。
前女友对你说“我结婚了”,这句话包含了信息量,去除了不确定性。但如果前女友和你说“我是女的”,这句话就毫无信息量,这就是废话。
信息熵,泛泛的说是用来衡量一段信息的信息量大小的。
这个定义我之前也不理解,直到我看见一个说法,突然茅塞顿开:信息熵是用来衡量表达一个随机变量需要的最少的比特位数。
在信息论的世界里,我们追求的是用最经济实惠的方法表达信息(“好话不说二遍”嘛)。
对一个不确定的信息(随机变量)来说,怎么最经济实惠的