Sunday, August 9, 2015

大组织中的囚徒困境及破局所需的信任和信息对称的建立机制

    囚徒困境(Prisoner's Dilemma)是经济学中普遍的一类现象。与之相关的推广是外部性问题(Externality)。这些现象的产生,要么是信息不对称(囚徒之间无法串通协作),要么是成本方收益方不匹配(比如环境污染产生的外部损害不会被造成污染的企业承担的问题)。
    当一个组织很小的时候,完全可以形成每个人都认识所有人(Everybody knows everybody)的状况;这里信息不对称可以缩小到很小,这些人面对所有的任务,当现实产生收益和成本时,很容易在小团队内协调这些成本和收益。然而,能保持组织始终是一个小的规模是一件很不容易的事情,因为可能现实不允许,或者决策者的失误。
    随着组织的增大,每个个人和团队的成本和产出都会有很强的外部性,这些外部性时很难被评估的,比如你有个想法,但不知道怎么做,找到了一个更有经验的同事请教,找到了答案,后面实施会拿到效果,整个公司都会受益。这位被找到的同学就向你输出了正的外部性,使你受益,但他本身并没有直接受益。这些外部性会形成对“大锅饭”管理的压力,就是如何避免形成大锅饭。
    解决大锅饭问题仍然需要的是信息,而信息的获取是需要很大成本的。给每个人设置一个评价者,如果形成完全客观的评价,必然是成本很高的事情,甚至是对人要求很高的,甚至超过了这个被管理者总的产出能力。
    组织大了,能否将这种管理工作分摊呢?比如每个人都承担一部分管理工作。这实际上就形成了各种会,因为员工需要靠会来获取信息,去传达信息,去量化工作。另外还有周报,周报是个很有学问的东西,像所有的读物一样,它也是有受众的,这些受众往往决定了员工客观上的产出,或者主观上的对产出的评价。因此周报也是个现实扭曲立场元素,不完整报道是轻的,更有甚者夸大产出,或者转嫁矛盾。
    如果不考虑成本因素,增加人肯定会增加产出,至少不会降低,因为可以让新来的人歇着不添乱就是了。考虑了成本,就要考虑产出,新人必须有发挥的天地。新人也会变老,老人也会离职。事实上每个人都要求有产出,这些产出至少看起来是值哪些工资待遇的。每一个人都会倾向于在这个过程中成为一个麦克斯韦妖,即向外界吸收正的外部性,并输出负的外部性。通俗的讲就是把好活尽量自己或自己的团队干,把脏活累活不出明显成果的事情让其他人或其他团队干。
    此时不得不说“价值观”这个东西。价值观本身就是设计来解决这个问题的,就是尽可能吸收负的外部性,并输出正的外部性。既然提出来了,就要奖励,不然价值观好的员工必然会受到长期持续的损害而失去生存在组织里能力。价值观像工作成果一样,也是需要评价的,评价的成本像评价协作一样困难,因为价值观本身是关于协作的一个角度。在大的组织规模下,价值观是很难被评价的,事实上它也会成为衡量工作业绩的一部分。人们仍然会去抢镜头,去选美,去体现visibility,而不是正如价值观所说的增加正的外部性。
    小的团体和组织是实现突破和改变的必要条件,这和直觉是相反的,做一件需要突破的事情用大的团队是很难的,因为很难统一行动,而且大部分人时平凡的平庸的,不愿意做突破需要的改变习惯的事情。
     小的团体是机遇信任和信息对称建立的,在这里可以较好的消灭囚徒困境和外部性的问题,使团队能在一定的范围内的任务发挥最大的产出能力。随着团队规模的增加,信任和信息对称的成本越来越高,给定成本的情况下信任和信息对称的程度也是越来越低的,它们是一个团队最为昂贵的事务。
    在小的团体之外,应当基于逐渐递减的信任和信息对称程度来形成组织,减少不必要的协作而不是增加它们;从而可以把团队的精力集中在有产出的工作上,并在更少的协作上突破,并拿到结果,从而建立团队之外的信任和信息对称。
    永远不要期望在互相了解很少的,戴着和谐氛围面纱的人中间形成紧密的协作和高效的产出,了解是需要成本的,有成本就要考虑投入产出比(ROI)。
    按照通信的密度建立局部性(locality)是增加效果的关键,信任时昂贵的,我们只够买得起一个小的范围内的信任和信息对称,更大范围内的,需要集中在少数几件事情的成功协作上来建立信任和信息对称。

Friday, August 7, 2015

特征工程指南(3):多粒度交叠式特征离散化

  概率论中在实数上定义定义的事件就是Borel集。Borel集是从拓扑空间中的开集通过可数次交、并运算及补集运算得到的。至于为什么这样定义是个严密的数学系统设计的问题,不是本帖讨论的重点。
  本帖讨论的重点是,Borel集实际上定义了所有可能的实数上的事件,这里包括是某一个区间上的事件,也就是说,无论怎么切分,它是一个事件,当且仅当它是一个Borel集。
  特征离散化实际上就是切分Borel集,我们当然无法也不必要从工程上穷举所有Borel,然而我们却不必要求只列举那些无交(disjoint)的Borel集,这种无交的borel集构成了一个对当前特征空间的一个划分。
  我们可以想象一个划分,这个划分上的每一个Borel集在线性模型(如LR)中对应一个权重w。为了能拥有较好的非线性特性,我们往往需要对这些集合切得很细;但不能太细,太细了会导致训练样本不足从而被L1正则化因子压为0。
  怎么能实现既不必对Borel集切得太细,又能实现复杂的非线性呢?可以通过进行重叠切分来实现。重叠切分有两种做法,一种是滑动窗做法,比如窗口的大小为w,每次滑动d,w>d,最终这些窗口覆盖整个特征空间。
  另外一种做法是分层切割,就是按照2-3个层次,在每个层次上用一个粒度的Borel集覆盖整个特征空间。
  还有一种做法是模仿Random Forest,针对区间进行随机切分,这样信息会被这种随机切分表示得很完整。