生活中你可能有这样的经历,面临决策时,知道的信息越多,反而越是扰乱了你的思路。反复权衡,最后,干脆就瞎选了一个,如果这是人生的重大决策,很可能会追悔莫及。

这一讲,我想告诉你当面对的信息很多时,

如何利用和组合信息,提高自己的决策水平。

我在《科技史纲60讲》中用信息和能量这两根主线将科技发展的历史串了起来。不少读者就问,信息是否具有和能量相似的性质,比如信息是否也守恒呢?

应该说信息和能量有一定的相关性,但是它们的性质完全不同,比如信息并不具有守恒的特点。你将一条信息告诉别人,你自己并不损失这条信息。

除此以外,不同信息彼此之间的关系,以及使用相同或者不同信息带来的结果,它在这些方面和能量也完全不同。

我们今天就从信息和能量的对比出发,谈三个获得有效信息和利用好信息的要点。

首先,和能量不同,相同的信息使用两次,不会产生两倍的效果。

我们在使用能量时,你用投石机轰击一下城墙,上面会砸出一个坑,你再把那个圆形巨石捡回来,再轰击一下,砸到同样的位置,坑会被你砸大。最后你可以一下下这样重复操作,把城墙砸开。

但是,你使用同一条信息后,第二次使用它就没有用了,你使用一万次,结果还是一样。这个道理并不难理解,但是很多人到了工作中就糊涂。

我在Google工作时,看到一些工程师把同样的信息反复使用,试图进一步改进产品,但最后他们发现是白费工夫。我对他们开玩笑讲,他们应该好好学习信息论。比如说,利用语言模型,也就是根据上下文信息建立起来的,关于句子中每一个词出现概率的统计模型,可以将拼写的错别字减少70%以上。

于是就有人想了,能否再从句子的尾巴上倒着扫描一遍,看看能否将错别字进一步减少。结果是没有半点提高,虽然个别的错字改对了,却也有个别正确的字改错了,两者正好相抵。

为什么会产生这个结果呢?因为相同的信息使用两次就没用了,当然也不会有害。

其次,如何发挥信息叠加的力量呢?

我们在做机械运动时,为了获得最大的加速度,用力(或动量)的方向要一致,而在利用多种信息消除不确定时,所采用的信息是正交的(垂直的)时候,效果最好。

如果我们回顾一下中学物理就不难理解第一个结论。为了便于你理解,给你画了张图,图上给出了几个不同角度的合力共同作用所产生的效果。

图中的黑线是每一个动力的来源和方向,红线是合力。大部分时候,合力到不了各个动力的总和。在使用信息时也是如此,如果我们利用了多个信息源的信息,大部分效果达不到每一种信息所产生效果的总和。

下面一张表是2002年美国国家标准与技术研究所(NIST)测试语音识别报告的一部分。这个组织时常要举行一些公开的信息技术测试,凡是拿了美国政府科研经费的单位,都要参加测试。

同时,各单位在测试之后,要讲一讲自己采用了什么技术得到相应结果的。NIST可能还会将各家的新技术综合起来,看看能得到怎样的总体改进。

在2002年的测试中,大家采用两年前最好的结果作为基准。各个研究单位一共提出了8种主要的改进方法,你可以认为是采用了八种不同的信息,从各个角度来消除语音识别中的不确定性。

最终,将语音识别的错误率降低了2%左右。下面这张表呢,就是每一种技术各自的改进:

如果你将上述八种方法各自的改进加起来,应该是3.7%,但最终只有2.1%的改进。

这表明,看似来源不同的信息,它们在消除不确定性时,作用有可能重叠。那么什么时候不重叠呢?当信息是垂直的时候,也叫做正交的时候。

什么是垂直的信息呢?我们不妨看两个例子。

第一个例子是语音识别。语音识别问题其实可以被看成是一个N选一的问题,就如同猜测世界杯足球赛冠军那样。

比如说汉语里大约有1260个左右的拼音读音,对每个音节的识别就是1260选1的问题。要消除这其中的不确定性,用到的最有效的信息是两类,第一类是所谓语音的信息,也就是说每一个读音和各种语音之间的相关信息。

第二类是语言信息,也就是一种读音在上下文中出现的可能性。这两种信息就是正交的。

我们在前面讲了,任何一种信息都可以对应到某个空间中的一个矢量,如果你把上述两种信息在空间中画出来,就会发现它们之间的夹角是90度,也就是说两种信息是正交的。

李开复当年在卡耐基-梅隆大学做了一个实验,如果只采用语音信息,要进行语音识别的难度相当于1000选1,如果同时采用了语言信息,难度则下降到20选1。

你可以从中看出使用相互正交的信息作用有多么明显。

第二个例子是名片的识别。就是把纸质打印的名片扫描一下,储存成电子信息,大家平时也经常用到这类软件。

名片识别是印刷体识别中不是很困难的一个任务,但是它对准确率的要求极高。

今天市面上大部分的软件识别率在98%左右,这其实已经很高了。但是总有2%左右的错误会发生的话,还是让人有点烦,因为总得手工更正。如果遇到懒人不检查就直接放进通信录,有时会搞错对方的电话或者邮箱。

以前大家解决这个问题的思路比较单一,总是想着提高图像的识别率,虽然各种办法都想了,总是有些情况难以通过图像识别解决。

2012年,加州大学洛杉矶分校的一位华裔教授通过大数据的方法解决了这个问题。她能够将名片识别的准确率提高到99.9%。

她是怎么做的呢?说起来非常简单,就是把互联网上能找到的各个单位的信息找到,然后用那些公开的信息验证图像识别的结果。

比如某个人的公司的总机电话是738 5546,即便名片上3和8,5和6印得不清楚,只要识别对这家公司,和她之前在互联网上找的数据一比对,就可以纠正过来。

之前人们通过图像扫描得到的信息,和她从互联网上找到的信息,不仅属于不同的维度,而且是彼此近乎正交的(这一点可以被验证),使用起来效果就特别好。这就是垂直信息利用效果最大化的两个例子。

讲回到上面的那个NIST测试,8种不同的信息凑到一起,整体效果能够做到各自效果总和的六成左右,已经非常好了。

在实际工作中,绝大部分时候,如果每一种信息可以减少1%的错误,两种合在一起能够减少1.2%就不算失败,能够到1.5%,就非常满意了。这也说明寻找正交的信息不容易。

那么怎么才能找到正交的信息呢?

这和具体的应用场景有关,而且多少有点艺术的味道。但是依然有三个原则应该遵守,以免走弯路,另外有一个方法可以使用。

第一个原则是,不同的信息要来自不同的信息源。

比如在上述名片识别的例子中,图像信息和互联网上的信息,完全属于不同的来源。

比如医生给你看病,会让你做血项检查和医学影像扫描,因为这两种也属于不同的信息来源。它们放在一起使用,信息带来的好处就可以叠加。

如果做检查,你做了一遍X光透视,又做了一遍CT扫描,最后还做了一次核磁共振,这三种信息基本上是一个维度的。核磁共振发现不了的问题,前两种基本上也没有用。

这就是为什么很多人容易上当的一个原因,就是他们不善于选用正交的信息进行交叉验证(关于交叉验证,我们后面还会专门讲)。

很多人觉得他也注意了不同媒体的信息,而不是只信一家之言,但是他忘记了今天很多媒体的信息都是相互抄的,也就是说一种信息多次使用而已。

第二个原则是,避免反复使用相互嵌套或者相互包含的信息,

即使它们来自不同的来源,因为那些信息即便不完全相同,但是可能一个覆盖了另一个,或者相似性太高。

很多人申请工作,简历中提供的都是相互覆盖的信息。比如最重要的两段工作经验本身已经证明专业能力了,还罗列了一大堆无关紧要的工作经历,以及可有可无的专业证书。这些对别人了解自己不会有更多的帮助。

第三个原则是,看问题要刻意改变一下观察的角度,从几个不同的角度看。

下面这张图,你从前往后看是个正方形,从上往下看,则是一个圆。如果坚持只从一个角度看这个物体,永远看不清楚全貌,因为它实际上是一个圆柱。

至于在多种信息源中,

如何选取几种最重要而且彼此尽可能正交的信息呢?

在信息处理中常常有两个方法,

一个是不断叠加,

另一个是不断删除。

先说说不断叠加的方法。这有助于你利用好手上的资源,有效排兵布阵。道理很简单,但常常被人们忽略。

我们假定有十种信息,需要选出三种,使其组合起来是最有效的。我们先对它们单独评估,列出对于解决我们的问题的有效性,并且从大到小排序,然后把排在第一位的作为基准。

第二步,是在第一种信息已经使用的基础上,对剩下的九种重新评估,再重新排序,选出这次排序最高的。

第三步类似于第二步。这样可以不断选择下去。这种做法衡量的不是每一种信息单独的有效性,而是找到它们组合的有效性。

这就好比你是篮球教练,要打造一支好的球队。你先选定控球后卫,然后选择一个和他配合发挥最好的选手,再选第三个和前面已经选定的人能够配合的人。

第二个方法是不断删除的方法,

这和不断叠加的方法类似,但是过程是逆向的。

但是不论是哪种方法,都有可能陷入一种局部最佳值。而这件事其实至今也没有得到彻底的解决,因此很多时候,成功有运气的成分。

要点总结

在力学上,用力要在一个方向效果才好,在使用信息上,要选用彼此垂直的正交信息。这其实是换一个角度看问题背后的科学原理。
我们给出了选择正交信息的3个原则,和2个做法。

思考题:最后介绍的选取正交信息的两种方法,你可能也经常用到,欢迎你举例说明你在工作中是如何应用的。

吴军,信息论40讲,13,信息正交性:在信息很多的情况下如何做决策相关推荐

  1. 《吴军信息论40讲》学习笔记(完)

    00.发刊词 信息时代的最大特征是不确定性. 信息论是人类对抗不确定性,最重要和有效的方法论. 20世界初概率论和统计学的成熟,使人们得以把握随机性.在此基础上,1948年,香农博士找到了不确定性和信 ...

  2. 吴军信息论40讲_得到《吴军·信息论40讲》课程介绍

    老师简介 吴军,约翰霍普金斯大学计算机科学博士.计算机科学家.硅谷投资人.著名自然语言处理和搜索专家.畅销书<浪潮之巅><数学之美><文明之光><大学之路&g ...

  3. 吴军信息论40讲_吴军信息论40讲笔记

    众所周知我是吴军先生的粉,他在得到APP上的<信息论40讲>我刚学完,整理了一些个人认为重要的笔记,分享给大家. 大数据的四个特征: 1.数据量大 到底要多大,标准是让统计结果具有非常高的 ...

  4. 吴军信息论40讲_吴军:有时候成功比失败更糟糕!顺势而为还是走弯路,就看一件事...

    如果你今年跟风买了一台5G手机,大概已经发现:传说中"一秒下一部电影"的神奇,实际并不存在. 作为一名通信从业者,我可以非常负责任地说:就目前来看,5G和4G在用户体验上,差别并不 ...

  5. log4j在线视频教程【讲的很详细,不了解的情况下,听一遍就都了解】

    log4j视频教程 http://v.youku.com/v_show/id_XMTkxNjIzNTky.html

  6. MySQL手机统计信息_MySQL统计信息

    摘要 我们将一条查询SQL提交给MySQL之后,MySQL在进行真正的查询操作之前通常会经历两个阶段:SQL解析和查询优化.在SQL解析过程中,MySQL会将SQL解析为一个树状结构,而在查询优化阶段 ...

  7. MySQL讲义第 40 讲——select 查询之函数(3):数学函数

    MySQL讲义第40讲--select 查询之函数(3):数学函数 文章目录 MySQL讲义第40讲--select 查询之函数(3):数学函数 一.数据准备 二.MySQL 数学函数介绍 1.ABS ...

  8. 机器学习40讲-12正则化处理:收缩方法与边际化

    一序 本文属于极客时间机器学习40讲学习笔记系列. 12正则化处理:收缩方法与边际化 本质上讲,过拟合就是模型过于复杂,复杂到削弱了它的泛化性能.正则化(regularization)是用于抑制过拟合 ...

  9. 陈力:传智播客古代 珍宝币 泡泡龙游戏开发第40讲:PHP中预定义超全局变量

    陈力:传智播客古代 珍宝币 泡泡龙游戏开发第40讲:PHP中预定义超全局变量 超全局变量是在全部作用域中始终可用的内置变量.PHP 中的许多预定义变量都是"超全局的".PHP供提供 ...

最新文章

  1. 矩阵乘法的性能提升 AutoKernel
  2. [BTCC] 要“工程师”“工程师”“工程师”
  3. mysql error manager,MYSQL Starting MySQL. ERROR! Manager of pid-file quit without updating file
  4. TensorFlow2简单入门 - 池化层
  5. [笔记]C#基础入门(十四)——C#用流程图描述程序逻辑
  6. AI应用开发实战系列之三:手写识别应用入门
  7. 32位操作系统,为什么最大支持4G存储空间,2的32次方 = 4294967296bit = 4G,这个怎么计算出来的,
  8. virtualBox文件共享
  9. HDU 3420 Bus Fair [补]
  10. python 连接pg数据库
  11. PES,TS,PS,RTP等流的打包格式解析之PES流
  12. Flash cs6 学习(一) 制作一个包含几个按钮控件的影片剪辑
  13. 分享PC魔音Morin v2.6.5听歌·音乐神器
  14. 解决linux下syslog文件过大
  15. Pr 音频效果参考:立体声声像、时间与变调
  16. MSOCache文件夹能否删除
  17. esp32拍照传输到手机android,esp32-cam拍照上传云平台教程
  18. 【渝粤教育】电大中专金融与税收 (2)作业 题库
  19. 使用Python和selenium的Chromedriver模拟登陆爬取网站信息(beautifulsoup)
  20. C#DGV选择shift多选

热门文章

  1. Python-Pandas库实现EXCEL数据拆分成不同的表
  2. 微信公众号域名无限回调授权系统-对接易支付接口
  3. vscode使用chrome调试报错
  4. bp神经网络的拓扑结构,bp神经网络模型结构图
  5. 联想拯救者r9000k和r9000p 有什么区别 选哪个好?
  6. 【LeetCode题解】BFS层序遍历二叉树
  7. 被 ChatGPT “霍霍”的文学界:由 AI 编写的投稿激增,17 岁老牌杂志宣布暂停征稿...
  8. . .. ./ ../ 都代表了什么意思?
  9. android studio自动设置权限,android studio打包,安装后权限都没有默认打开,如何设置打开?...
  10. 配置JAVA_HOME环境变量的作用是什么?