混合模型(mixture model)
/ MIKS-cher MOD-ul /
混合模型,描述的是这样一种数据:它源自好几个隐藏的子群体糅合在一起,而你只看得到那糅合后的整体。设想城市某路口每日的车流时刻:很可能有一座早高峰的隆起、一座晚高峰的隆起,被挤进了同一张杂乱的直方图里。混合模型说:「这不是一团,而是几团更简单的团块叠在一起」,并去弄清楚究竟有几团、每一团坐落何处、以及各占数据的多大比例。
最常见的情形,是每个子群体都是一条钟形曲线(一个高斯),这就给出了「高斯混合模型」。模型得一次学会三样东西:每个底层群体的形状、各自的混合权重(每群占总体的份额),以及——对任一给定的数据点——它来自每一群的概率。请注意最后这一点是「柔和」的:一个点不会被干脆利落地划归某一群,而是带着概率散布在各群之间,这正是它与硬聚类的不同之处。由于群体归属是隐藏的,混合模型成了EM算法经典的演练场。
它为何重要:混合模型是一件干净、可解释的工具,用于柔性聚类、密度估计,以及为「你怀疑暗地里其实是好几群」的群体建模。诚实的提醒确凿无疑。你通常得先告诉它要找几群,选错了就会扭曲结果;它假定每一群都有某种特定的形状(钟形曲线没法描摹一根香蕉);而且若某一群坍缩到单独一个点上,它可能会抱住一个毫无意义的解。它是干对了活儿才锋利的器械,而非一台魔法寻群机。
一张顾客年度消费的直方图显示出两座隆起:一大簇围绕每年200美元的随性买家,和一小簇围绕2,000美元的重度消费者。一个双成分的高斯混合,能还原出这两群、它们各自的平均消费,并且——对于一位花了900美元的顾客——给出一个柔和的判定,如「65%可能是随性、35%可能是重度消费者」,而不是硬塞给他一个单一标签。
混合模型把一个杂乱的分布,分解成几个更简单的群体,并给出柔和的(概率性的)归属。
混合模型不会替你发现群体的数目——你通常得自己指定它,而一个错误的数目,会给出一个自信却错误的分解。它还为每一群假定了一种形状,所以面对「簇的形状不像所选分布」的数据,它可能严重拟合失当。