选文:纪思亮 作者:Bo Moore 编译整理:孙强
还记得那款老的嘉年华游戏吗,大家一起猜测一个罐子里糖豆的数量?虽然准确猜出糖豆的数量需要一点运气和技巧的组合,事实证明,通过平均所有人的各种各样的猜测,平均结果出奇地接近正确答案。
这是一个被称为“众人的智慧(the wisdom of the crowd)”的典型例子,也是机器学习常用的建模策略之一。
前提条件还是有的:你要有数量足够多的不同的数据,每一个数据都在某些程度上包含所需信号,但数据之间没有任何其他维度的相关性(这样数据的误差往往对称分布在真实结果周围),当然还需要一种合适的聚合方式来聚合这些数据(如算一下平均值)。你会发现,经过最后聚集,正确结果会脱颖而出,而数据的误差往往会相互抵消。
在此前我们介绍过的一篇文章《猎杀埃博拉病毒的算法》(点击进入)中,事实也是通过这样一种方法来跟踪埃博拉病毒及宿主。下面,我们会重点介绍这个被称为“随机森林”的机器学习算法。 从猜糖豆游戏到随机森林
回到数糖豆的例子中,满足这些前提条件意味着,一定要有很多人给出猜测(大量的观点和数据),他们猜的都是同一个糖豆罐(猜测的数据必须含有一定维度的信号测量),人们不能彼此交流他们的猜测结果(以保证观点和数据没有其他相关性)。即使有些人只是快速浏览一下瓶子,而另一些人则研究很长一段时间;或者有人只是开个玩笑,猜测一个非常不正确的结果(过高或过低),这些都没有关系。
重要的是,所有的猜测都集中在正确答案的周围。猜测中有正确的的成分,有错误的成分,但正确的成分会互相叠加,错误的成分会相互抵消。即使有人提交比较离谱的低估或高估,随着越来越多的猜测被提交,这些离谱的错误也会相互抵消。
“众人的智慧(wisdom of the crowd)”是随机森林(random forest)建模的主题思想,而随机森林是最流行的机器学习算法之一。随机森林模型的工作原理是训练成百上千个“弱”机器学习算法,称为决策树。