通常研究者们认为,在群智领域中,组群通常表现的效果要比个体要好。因此,通常来说,研究者们将单独的个体视为一个“整体(crowd)”来对某样研究内容进行分析,通常效果比较好。
相较于自然世界中的swarm来说,crowd还是有很多区别的,swarm注重在真实世界中的实时性以及群体之间的信心交互能力,swarm往往拥有比crowd更频繁的信息交流和沟通。
在目前的研究中,研究者们通过对比swarm和crowd之间的预测能力,发现swarm群体中有98%的个体优于在整个实验中的群体,因此,带有反馈沟通功能的swarm群体往往比crowd群体的表现要好。
故事应该从Francis Galton爵士说起,他设计了一个实验,让没有经验的人们估计一头牛的重量,其中800人参与了实验(13个字迹不清晰视为无效样本),他惊奇的发现,这787个样本的总体平均值几乎接近了这头牛的重量,但是将大部分人的预测单独拎出来,却与真实相差甚远。这就是集群智能的诞生(collective intelligence)。
这一方法被广泛引用于认知科学、社会心理学以及认知科学所应用。许多研究者试图从他们自己的角度来描述集体智慧的意义。Smith(1994)将其定义为一群人在执行一项任务,就好像这个群体本身是一个有条理的、有智慧的有机体,有一个头脑,而不是一群独立的个体。显而易见的是,任何形式的人类活动似乎都可以被归类为集群智能。
近一个世纪以来,发掘群体智能(crowd)的方式没有改变多少,都是实验平均数等方式来进行计算,但是这一统计方法往往需要任务相关的历史数据,然后使用这种历史数据去训练crowd的预测能力(基于经验判断)。
随着互联网时代浪潮的来临,基于互联网的群体智能产生于在线组织和在线平台上的社区中的大量个人。从历史上看,任何在人类社会活动的组织都可以视作为一个集群,他们之间的沟通、协作交流都可以视为是群体智慧的产生。对于群体智慧、社交网络计算等领域定义以及他们之间的关系如下所示:
人类计算通常会将一个大的计算任务分割为多个微小的、定义好的任务,然后将其安排到一群人中,使他们完成计算,而其中大部分的计算任务都是耗时较短的,例如图像标注、翻译文本、填写社会实验表格等。
虽然人类计算与社会计算有不同的研究目标和主题,但这两个领域确实有一些交集,因为人类计算系统需要一群人之间的社会行为和交互。从基本上,人类计算更像是众包任务(crowdsourcing),人类计算更需要有一个比较好的策划组织去分配和安排计算任务。
下面是几个crowd task的平台
熟悉的人机验证码 : )
下面是使用human computation平台的工作流图
和众包类似,我们可以通过互联网将许许多多的任务分发出去,就如维基百科就是一种众包,后面的还有像软件的测试、数学难题的题解,不同的人可以贡献自己的智慧,可以让很多人参与,从而完成一个任务。
群智感知的理念来源于众包(Crowdsourcing),更加侧重于怎么从物理世界进行感知,通过使用智能终端设备(如手机,智能手表,GoogleGlass这种),可以将普通的民众发动起来,以人为主(移动性和官方分布),借助方便的移动通信网络的连接。
优势:
第一代以用户(人)为中心,发现有些场合(比如晚上或者一些危险的去处),所以第二代就可以更加集中使用传感器来进行信息数据的搜集和采集。
通过无线信号、电力网络进行感知,可以将各种各样不同的智能联合起来进行感知。
研究者们发现大自然的动植物群体在解决一个问题时候往往不会进行数据的收集和分析工作,而更加注重实时的更新和反馈,事实上,这些“实时反馈”能使大型团队能够同步工作,并在多次的同步中找到更好的解决方案。这就被称之为Swarm Intelligence (SI)。
Beni等人在1993年首次提出了群体智能这一概念,他认为群体智能应该具备分布式(多智能体)、各异性(竞争)、交互性以及动态性。
研究者们认为我们人类就没有进化出来这种能力,因为我们缺乏与生俱来的、与种群其他个体的联系(这里主要指信息素浓度、种群个体标记等Feedback的能力)。但是也有人认为新时代的网络能力使得人类种群在某程度上体现了这一能力。
他们通过一个投票实验,发现通过在闭环系统中协同工作,在实时反馈控制下,相比于crowd,团队群体(swarm)可以更有效地探索决策空间,并趋同于最佳解决方案。
虽然目前机器学习在很多识别、分割任务上都取得了不错的结果,但是将机器学习应用在社会科学领域中表现效果却往往不尽如人意,对于复杂的社会现象、社会干预的效果很差。
而目前对于社会科学的研究趋于中心化的,其系统的成本、鲁棒性、性能瓶颈以及隐私保护的问题都制约了其发展。我们通过使用去中心化的建模更好地模拟社会系统的运行机制,并提出干预机制。
在2020年,Zheng等人将这个复杂系统设计为一个游戏环境,这个环境中有两类Agent,一类是政府职员(负责指定税率),一类是普通Agent,有着不同的赚钱能力和策略(投资和造房子),在这种环境中,让两类Agent进行博弈,以基尼指数作为reward function,通过不断的循环迭代,达到帕累托最优。
强化学习的好处是天然地拥有Agent,我们可以通过Agent和环境进行交互,环境会返回一个reward,Agent可以去改变环境的Space,这样会相比于原来ADM的方法(NetLogo)有更强的学习泛化能力。
主要指的是联邦学习,主要解决的问题是如何在不侵犯用户隐私的前提下进行数据建模,(和我之前做的差分隐私很像),基本思路是每一个节点都保持原有的数据,使用中心节点进行分发模型给大家,让每个Agent在本地进行梯度下降,使得模型产生新的参数,大家再将这个参数进行一个(原学习、蒸馏的方法)聚合。
将以上的两种方式结合,每个智能体都有很强的学习能力,当然每个智能体都有其优化的目标(可能是相反、博弈的)。
在实际群体建立中,由于每个Agent的数据并不是独立同分布的(None iid),故对应有协作和对抗两种建立起群体的方式
数据的要素化(如何去保护数据),通过联邦学习、多方安全计算或者法律,将数据的所有权和使用权分开。
综合上述的文章,不难发现,相较于crowd单纯地对信息进行抽取分析,swarm群内部更加注重个体间的信息交流以及实时性反馈,所以使得swarm能够更加动态高效完成问题的求解,接近解的答案。正如文章中在UNU实验平台上的实验结果一样(优化目标是找到拉斯维加斯关于NFL的一个有奖竞猜答案),在组群内实时性的讨论和信息交流使得实验中swarm组的信息交互能力变强,从而得到一个满意的预测结果。
而从另外的角度讲,在真实的世界中,个体之间是有交互性的,基于crowd intelligence抽象出来的模型更像是一个个体模型,只是我们希望这种个体行为更加符合一般个体的特征。而群体智能(swarm intelligence)则使用了一种Agent Base的思路,不再拘泥于一个个体去创建一个模型,更加注重于个体之间的交互性。