M2M过程实例:人类解决凸包问题(从另一个角度去理解M2M模型)

来源:互联网 发布:ebsco期刊论文数据库 编辑:程序博客网 时间:2024/04/29 21:01
 

M2M过程实例:人类解决凸包问题

 

经过亿万年的进化,大自然中蕴含着大量精妙的结构和智慧,这常常给仿生学予灵感去解决大量的实际问题。而人类作为进化过程中最为出色的个体,其思维模式与解决问题的方法更是值得研究与借鉴。

    人工智能正是这样一门学科,经过大量研究,它模仿人类的思维模式较好地解决了计算机博弈,知识发现,逻辑推理等方面的问题[支撑论文]。但在某些领域,计算机的表现却始终不如人类。比如模式识别,机器学习等[支撑论文]。甚至在解决一些具有很明确算法并且其算法的复杂度下界已经被证明的问题的时候,计算机也不如人类。

    设想求图所示点集的凸包,该点集包含1000万个点,按高斯分布。用一台普通的PC机去计算其凸包(使用快包算法),耗时大概是一到两分钟;但如果把这个任务交给一个有一定智力水平的人去解决的话,这个人应该会很轻松地在一分钟之内把这个点集的凸包找出并绘制出来,如图。

 

 

 

 

 

 

    如果我们想让计算机在模式识别,计算机视觉等领域达到人类的水平,我们首先应该弄清楚为什么计算机在解决一个如此明确,不存在含糊成分,而且其计算机算法已经经过高度优化并且已经从理论上证明了其算法下界[]的问题的时候,计算机的表现却不如人类。也许我们可以从人类解决这个问题的过程得到启发。

    我们可以把人类解决凸包问题的过程分为两个阶段,分别是无意识阶段和有意识阶段[最好有支撑论文]。在无意识阶段中,主要是发生一些物理和化学反应的过程从而把图像传送到人的大脑皮层[支撑论文]。而在有意识阶段,人类才去下意识地求出点集的凸包。

    在第一个阶段中,最关键的步骤是把光信号转化为神经信号,这个过程是在眼球后壁的视网膜(retina)中完成的。在视网膜中有1.2亿个杆体细胞(rods)和700万个锥体细胞(cones),它们并行地工作,把光信号转化为神经信号,然后由一条带宽很大的神经束把这些信号最终传到大脑皮层[支撑论文,这段话是从那本书里面摘录下来的]。这个转化过程如图所示,这是一个高度并行的过程,所以能够快速完成。经过这个过程,人的大脑中已经建立好这个点集的图像,而且很可能不仅仅只是一个图像,而是很多张描述同一个点集的,由模糊到清晰的图像[支撑论文],如图所示。因为人类经常会通过调节眼球的晶状体或者调节观察位置的远近来观察同一个图像以在脑海里面建立该图案各个粒度的图像。这是人们在研究中经常忽略的一点。

 

 

 

 

    在第二个阶段中,人类开始利用之前并行建立的这个点集的各个粒度上的图像来快速求解这个问题。在求解凸包问题的时候,人类不是一开始就从最清晰,粒度最细的图像去分析问题,而是先从宏观的粒度较粗的图像出发,把点集中间的那些明显不可能属于凸包边缘的点集排除,锁定一个更窄的问题规模,然后再试图在更清晰,粒度更细的图像中去找凸包。这样不断地在粒度较粗的图像把问题的考虑范围缩小,直到一个粒度恰当的图像,可以最终求出该点集的凸包。[这一段的支撑论文]

人类正是通过先并行快速建立点集的各个粒度的图像,然后利用这些图像从宏观到微观去缩小问题的规模最终实现快速解决问题的。宏观到微观算法模型(M2M model)正是这样一种模仿人类认知思维方式的算法模型。从抽象的意义来说,它利用从宏观到微观的过程实现了减治(Decrease-and-Conquer)的目的,探讨了模拟人类解决问题从宏观到微观渐进过程的新方法。

原创粉丝点击