zoukankan      html  css  js  c++  java
  • 信息熵

         今天看李彦宏在复旦演讲里提到,由于信息的不对称,很多人很是吃亏。而同样场景,在开讲啦里也提到当初创立百度就是要解决信息的不对称。但是这个不对称怎么个不对称啊,不对称程度多大,所以想问信息不对称可以量化吗?15年前信息存在信息不对称是显然的,但是今天也存在信息不对称啊,不过由于有搜索引擎以及各类大大小小垂直分类网站出现了,所以今天信息不对称是有改善的,改善了多少呢?能不能用一个数量来说明今天信息不对称是多少呢?
         相信很多人和我一样,也有很多类似疑问,因此引出今天要谈的一个概念,熵。
         为了衔接第一段提出的疑问,我们先来看一个概念,信息熵。
         信息熵,怎么看怎么觉得这个“熵”字不顺眼,那就先不看。我们起码知道这个概念跟信息有关系。而它又是个数学模型里面的概念,一般而言是可以量化的。所以,第一个问题来了。
         信息是不是可以量化?
         起码直觉上而言是可以的,不然怎么可能我们觉得有些人说的废话特别多,“没什么信息量”,有些人一语中的,一句话就传达了很大的信息量。
         为什么有的信息量大有的信息量小?
         有些事情本来不是很确定,例如明天股票是涨还是跌。如果你告诉我明天NBA决赛开始了,这两者似乎没啥关系啊,所以你的信息对明天股票是涨是跌带来的信息量很少。但是假如NBA决赛一开始,大家都不关注股票了没人坐庄股票有99%的概率会跌,那你这句话信息量就很大,因为本来不确定的事情变得十分确定。
         而有些事情本来就很确定了,例如太阳从东边升起,你再告诉我一百遍太阳从东边升起,你的话还是丝毫没有信息量的,因为这事情不能更确定了。
        所以说信息量的大小跟事情不确定性的变化有关。
        那么,不确定性的变化跟什么有关呢?
        一,跟事情的可能结果的数量有关;二,跟概率有关。
        先说一。
        例如我们讨论太阳从哪升起。本来就只有一个结果,我们早就知道,那么无论谁传递任何信息都是没有信息量的。当可能结果数量比较大时,我们得到的新信息才有潜力拥有大信息量。
        二, 单看可能结果数量不够,还要看初始的概率分布。例如一开始我就知道小明在电影院的有15*15个座位的A厅看电影。小明可以坐的位置有225个,可能结果数量算多了。可是假如我们一开始就知道小明坐在第一排的最左边的可能是99%,坐其它位置的可能性微乎其微,那么在大多数情况下,你再告诉我小明的什么信息也没有多大用,因为我们几乎确定小明坐第一排的最左边了。
        怎么衡量不确定性的变化的大小呢?怎么定义呢?
        这个问题不好回答,但是假设我们已经知道这个量已经存在了,不妨就叫做信息量,那么你觉得信息量起码该满足些什么特点呢?
        一,起码不是个负数吧,不然说句话还偷走信息呢~
        二,起码信息量和信息量之间可以相加吧!假如你告诉我的第一句话的信息量是3,在第一句话的基础上又告诉我一句话,额外信息量是4,那么两句话信息量加起来应该等于7吧!难道还能是5是9?
        三,刚刚已经提过,信息量跟概率有关系,但我们应该会觉得,信息量是连续依赖于概率的吧!就是说,某一个概率变化了0.0000001,那么这个信息量不应该变化很大。
        四,刚刚也提过,信息量大小跟可能结果数量有关。假如每一个可能的结果出现的概率一样,那么对于可能结果数量多的那个事件,新信息有更大的潜力具有更大的信息量,因为初始状态下不确定性更大。

        那有什么函数能满足上面四个条件呢?负的对数函数,也就是-log(x)!底数一般取2。前面再随便乘个常数也行。
        a. 为什么不是正的?因为假如是正的,由于x是概率,小于等于1的数,log(x)就小于等于0了,取反为正数,第一个特点满足。
        b. 咱们再来验证一下其他特点。三是最容易的。假如x是一个概率,那么log(x)是连续依赖于x的。
        c。四呢?假如有n个可能结果,那么出现任意一个的概率是1/n,而-log(1/n)是n的增函数,没问题。
        d。最后验证二。由于-log(xy) = -log(x) -log(y),所以也是对的。学数学的同学注意,这里的y可以是给定x的条件概率,当然也可以独立于x。
        所以我们知道一个事件的信息量就是这个事件发生的概率的负对数
        最后终于能回到信息熵。信息熵是跟所有可能性有关系的。每个可能事件的发生都有个概率。信息熵就是平均而言发生一个事件我们得到的信息量大小。所以数学上,信息熵其实是信息量的期望
    H=-sum_{xepsilon U}{P(x)log P(x)}
        以上部分知识点是来自知乎的回答:http://www.zhihu.com/question/22178202/answer/57007321
        在来看看官方定义信息熵是怎么回事。在信息论里面,熵(entropy)是信息不确定性的一个测度,熵越大则表示信息的不确定程度越高。这么说好像的确有点抽象,还是用公式解释吧:
    H=-sum_{xepsilon U}{P(x)log P(x)}
    这里H是熵,U可以理解为所有可能事件的集合,P(x)则是某一具体事件x发生的概率,对数的底一般取2。举个例子,预测明天的天气,如果能100%确定明天一定是晴天,那么熵就是-1*log1=0,也就是说不确定性为零。如果说明天有50%概率晴天,50%概率下雨,那么熵就是-0.5log0.5-0.5log0.5=(-0.5)(-2)+(-0.5)(-2)=1,可以说不确定性为1。而如果明天有25%概率晴天,25%概率下雨, 25%概率阴天, 25%概率下雪,那么熵就是4*(-0.25)(log0.25)=2, 也就是说随着不确定程度的增加,熵也在不断地增大。再举个例子,你可以统计一下我这段话里面不同的字出现的频率,然后算出这段话的熵,几乎可以肯定,这个熵会比一段胡乱打出的字的熵要低,因为胡乱打出的字所包含的不确定性比较高。
          通过上面解释可以看出信息熵可以量化信息大小、信息不确定程度。所以可以看出“熵”是一种量化工具,下面看看其它领域带“熵”应用,熵在热力学和其他一些领域中也有出现,虽然于信息熵的定义不尽相同,不过基本上都是用来表示系统的无序程度的。热力学上熵可以理解成另一种意义上的温度就好了。温度是一个状态函数,温度高的时候你觉得热,心情烦躁。温度低了你又觉得冷,浑身发抖。温度适宜,你才会觉得“状态好”。熵也是一个状态函数,无论是在信息学意义上还是在热力学意义上,熵太高了都意味着混乱,就像一群在热锅上团团乱转的蚂蚁。熵低了则意味着混乱的反面——有序,就好像把那一锅蚂蚁突然加液氮全部冻住,一切都会变得秩序井然,冰冷,简单。从物理本质上讲,温度反映了微观分子活动的剧烈程度,降温时分子运动变弱,这也就意味着它们的状态变少了。状态变少了,熵也就小了,所以熵这个概念是温度天生的双胞胎弟弟,只是出世稍微晚了些年头。稍微了解热力学第二定律的人都知道,一个封闭系统的熵总是在不断增加的,熵增可以说是宇宙最本质的规律之一。但是像我们人类这样的智慧生命,却一直在创造 着负熵,我们希望社会更加有序。大部分人的一生发展过程也是从大熵到小熵,正熵到负熵的过程,工作也是这样,开始时候啥都不懂,混乱一片,熵很大,最后慢 慢逐渐由调理,最后从事机械式的劳动,简直到负熵了。所以一个有意义的人生熵应该是正弦振荡的。
          熵的应用:
          之前在知乎上看到有人提问什么样的用户体验是最好的?用户体验能不能量化?我想我们可以借助熵的概念去定义一个用户体验熵,用体验熵来量化用户体验,你觉得呢?
        熵的更多应用,后续再更新
     
    参考资料:
    http://www.zhihu.com/question/22178202/answer/49929786  来自知乎
    http://www.zhihu.com/question/22178202/answer/57007321
    来源:知乎
     
     
  • 相关阅读:
    scrapy基础知识之 使用FormRequest.from_response()方法模拟用户登录:
    scrapy基础知识之发送POST请求:
    scrapy基础知识之 CrawlSpiders(爬取腾讯校内招聘):
    scrapy基础知识之 CrawlSpiders:
    scrapy基础知识之 Logging:
    scrapy基础知识之将item 通过pipeline保存数据到mysql mongoDB:
    scrapy基础知识之 parse()方法的工作机制思考:
    scrapy基础知识之scrapy自动下载图片pipelines
    scrapy基础知识之将item写入JSON文件:
    scrapy基础知识之制作 Scrapy 爬虫 一共需要4步:
  • 原文地址:https://www.cnblogs.com/lerongwei/p/4918572.html
Copyright © 2011-2022 走看看