蜈蚣

百足之虫,死而不僵
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

人肉搜索、人肉语言及人肉程序设计

Posted on 2009-12-17 12:21  蜈蚣  阅读(4990)  评论(19编辑  收藏  举报

       在《黑客帝国》中,当人类和机器的战争爆发后,人类的血肉之躯无法敌过钢筋铁骨的机器人,即使是使用核子武器也无法打败机器人。当人类万般无奈时,“黑色风暴计划”应运而生,人类在天空撒满黑色烟雾,阻挡太阳光,使机器人失去了能量来源,人类妄图以此为代价取得胜利。可机器人却发现,人类本身有强大的生物能,可以利用并转化为它们需求的能源。因此,人体成了能量来源,成了机器人的电池。可是,人类的生物电必须在人类还活着时才能持续供应,而且人类在有意识和无意识的状态下供出能源差别很大,所以,机器人经过反复的对人类大脑的研究后,创造了 THE MATRIX,让人们活在虚拟的梦世界里,成为机器们的电池。【引自百度知道http://zhidao.baidu.com/question/95898400.html?fr=qrl&cid=92&index=2

       不过,《黑客帝国》毕竟是科幻。这个思路,违反了能量转换理论。根据林得曼定律(十分之一定律):能量沿营养级移动时,逐级变小,后一营养级是前一营养级能量十分之一左右。从食草动物到食肉动物再到人类,几乎每一级都要消耗掉90%能力。人类处于营养金字塔最顶端,说它营养质量好还差不多(BTT,这里不是鼓励食用人肉,O(_)O~)。用来制造能源,肯定是极大浪费,甚至不如用碳能源。

       倒过来却很有趣,人类有最发达大脑。人类大脑具有独特的生物计算能力,一般计算机难以媲美,尤其是神经网络数以亿计并行计算,不确定性判断与处理(情感、道德)。把这些能力聚合起来,作为“机器世界”的超级计算机,可能更为经济。

       说到这里,前阵子有个很热的名词:“人肉搜索”。人肉搜索说的是通过大家的共同努力,发挥群体分布智慧效应,在“神奇的国度“搜索一些“神奇的内容”。

       “人肉搜索”其实是一种群体处理系统。群体系统是对群体生物行为能力的模仿,典型的有蚁群算法:各个蚂蚁在没有事先告诉他们食物在什么地方的前提下开始寻找食物。当一只找到食物以后,它会向环境释放一种信息素,吸引其他的蚂蚁过来,这样越来越多的蚂蚁会找到食物。有些蚂蚁并没有象其它蚂蚁一样总重复同样的路,他们会另辟蹊径,如果令开辟的道路比原来的其他道路更短,那么,渐渐,更多的蚂蚁被吸引到这条较短的路上来。最后,经过一段时间运行,可能会出现一条最短的路径被大多数蚂蚁重复着。群体算法是一种求解组合最优化问题的通用启发式方法,该方法具有正反馈、分布式计算和富于建设性的贪婪启发式搜索的特点。

人类比蚂蚁聪明,人群的处理能力也更为强大(不详述,参见最近网络事件)。

现在做系统架构设计时,越来越强调提高用户体验。架构师经常被要求分析用户使用系统的行为模式,甚至进行数据挖掘,来达到这些目的。这种行为模式往往能被加以利用。如用户在使用办公系统时,为完成一项工作,其思维活动往往具有连续性,用户会先后看A文件和B文件。这两份文件,可能光从系统角度很难发现其关联,但人类思维能从某种微妙关系进行处理,这种关联甚至超过语义关联。

当然,这种行为模式分析也有缺陷,它是被动式分析,很可能用户永远不会再同一时间发现有文件A和文件B。换一种思路,是否可以设计一定的“陷阱”,让用户进行处理,实现所需信息?(这不就是一次程序设计么?设计程序,输入数据,用户处理,得出期望输出。)

 

       如上图,原本用户在使用系统。关系改变后,将用户抽象成整个系统的分布式个体处理单元。用户作为分布式的“人肉CPU”,系统作为核心处理器。可以预见,这种“人肉CPU”处理能力很强,如果设计出合理的“人肉程序”,那么建一个超级系统就不是问题。

       当然,“人肉程序”并不复杂,也不遥远。身边已经存在有很多简单“人肉程序”的例子:如博客和论坛有“有用、没用”和“支持、反对”按钮,用于判断文章价值。这只是“人肉程序”初级用法。再次讨论上文提到的“办公系统”,假设设计一定“人肉程序”,将文件A和文件B按照一定概率,随机出现在相邻地方。如有很多用户在处理A之后去处理B,那么就可推断出AB 可能有关联。

      

       个人意见是这种“人肉程序”应该设计很精妙,个体处理很简单,甚至不被用户察觉,用户不需要改变原有行为习惯,或仅仅是轻微改变。如上图,我们将一个目标分成若干个子目标,提供一定参数,使用户进行处理,并收集相应处理结果,同时形成反馈。就像蚁群算法一样,设计出简单个体处理,通过大量迭代过程,经过若干次反馈后得出期望结果。

       暂时还没想好用什么方式描述这种“人肉程序设计语言”。可以肯定的是,只要设计者能意识到用户的强大处理能力及用户的思维活动特征,就能设计出想要的程序。所以,尽管把你们的用户当成分布式超级“人肉CPU”,去实现“邪恶”的目的!

 

    

       注:最近刚申请一项关于人肉搜索的专利。这项技术基于搜索引擎叠加这种人肉程序。互联网现在每天有数亿次搜索,利用这些连续性搜索思维活动,设计较为合理的“人肉搜索程序”,产生大量知识(一种知识集技术),从而提高搜索质量。

除了搜索、办公之外,还没想到太多应用,有兴趣的筒子也可以交流一下。