转自 蓝海长青智库 军民融合科技创新资讯平台
AlphaGo再战柯洁,AI继续成为国内外热议的话题,当下AI近乎显学,路人皆知,“名人辈出”。这种情况下,我们也希望能够“回归学界”,与学术界的科研人员聊一下大家关心的AI话题,希望获得一些新的认知收获。
近期,我们拜访了北大林作铨教授。他现为北大数学学院信息科学系一级教授,曾任信息科学系系主任。林教授从事AI研究30年,连续讲授AI课近20年,带博士研究生做AI问题的研究,见证了人工智能60年历史的后半程。
林教授表示愿意从教学角度去做这次分享讨论,因为从教学上老师需要了解不同研究和应用的最新进展,不会受自己研究偏好的影响,能更好讲授知识。
林作铨:
战前大家已普遍预测AlphaGo会战胜柯洁。在围棋上,一旦机器取胜,这个人机大战游戏也就结束了,就象当年的国际象棋一样。我想可简单说一下这个道理。
围棋是完美信息的博弈,即对弈双方都看得见棋盘和走子变化。计算机围棋的基础算法是搜索,模拟人下棋的过程,如果将下棋的每一步看做搜索的一个决策点,搜索过程形成一颗树,树展开每个可能的走子,从中寻找最佳的走法,获取使对方不利己方有利的胜算。
这样搜索的空间是很庞大的,寻找最佳走法所需花的时间是很长的,比如,即使把全世界的计算机都拿来算一万年也不可能穷尽整个搜索空间,换句话说,不管有多大的计算能力都不能穷尽搜索空间,这是所谓的难解问题。如果搜索树很小,比如五子棋,可在很短时间内考虑到所有的情况,这样对弈双方都能找到最佳走法,不管是人还是机器原则上双方都会和棋了。因此,搜索算法研究的关键就是要想办法减少搜索空间,通过启发式方法来把搜索树中一些不值得考虑的分枝剪掉,人下棋所谓靠直觉或经验,实质上也是收缩搜索空间,因为人下棋有一些章法或定式使得我们可以较快下手,不会走明显的无用的俗手,这就是所谓的剪枝法,AI最初取得的重大突破之一。
既然不能穷尽搜索,剪枝有可能会剪错了,这是一种近似优化的方法,就可应用概率模型,在每一个决策点寻找下一个节点时,把它变为一个随机模拟的过程,如果模拟得到最大期望效用的话就用这个决策点的走子,否则就剪枝,这就是蒙特卡罗树搜索算法,这时,计算机围棋可以达到业余棋手的水平,但离职业棋手水平还有一段距离,普遍估计还得10年。
AlphaGo取得了重大突破,把下围棋走子过程看成识别问题,每下一子棋盘的变化容易被识别,这样就可以用深度学习方法,简单点说,AlphaGo中所谓的价值网络和决策网络是用强化深度学习把搜索空间大大地减少,减少到用合理的计算资源可在较短时间找到最优的搜索树的路径,相当于该考虑的决策点都考虑到了,下一步棋先看了几十步棋,不严格地说,近似穷尽了整个搜索空间,算法就“几乎”不出错,或出错的概率远比人小,人经常会下恶手,这时候人就再也下不过机器了。
如果有人想继续研究计算机围棋,必须寻找比AlphaGo更好的算法才有意义,若只是重复AlphaGo的算法,即使性能提高了,这种做法基本上是浪费资源,不如做计算机辅助的围棋教学。
人机大战是想挑战人类下围棋这种智能水平,从而想表明机器具有这种智能水平。柯洁若想赢,一种可能的方式应该和AlphaGo研发人员合作,他们知道程序的缺陷可能在哪里,柯洁与他们一起研究战胜机器的策略,这反过来挑战AlphaGo,对AI的发展有帮助。但估计也比较难有结果,因为深度学习不能“理解”下棋的过程,所训练出来的神经网络参数也不能解释。
AlphaGo战胜柯洁没关系,AI中还有很多这种战胜人类的比赛,只是围棋是一种中国文化,由于搜索空间最大难度也是棋类游戏中最难的,大家比较关注,但大家很快会习以为常,20年前国际象棋的人机大战就是这样。可以预想,今后所有游戏比赛AI都可能战胜人类,这就涉及到了人类与机器如何共处,大家该下棋打牌照样如常。
AI研究选择类似围棋和定理证明这些代表人类智能活动的领域进行研究,其本意是想找到能解决广泛一类问题的通用智能原理,如搜索的剪枝算法就是一个智能的基本原理,它能解决广泛一类问题,而不只是下棋。AlphaGo对深度学习中的无监督学习有很大的贡献,但想发展成通用AI技术很难,除非深度学习就能发展成通用AI,取代AI中其它研究,但这在我看来是不可能的。
林作铨:
这背后关系到对智能的定义,人类的智能是无法精确定义的。AI依赖于计算模型,如图灵机这些计算模型给出了计算的数学定义,但找不到定义智能的模型。智能是一个直观、主观的概念,从图灵测试提出开始,AI研究者希望通过计算机模拟人类的智能,找到智能的基本原理,就像当年模仿鸟飞行制造出飞机,找到空气动力学等原理,用空气动力学反过来可解释鸟的飞行,潜水艇模仿鱼儿,都是这个道理。因此,AI研究肇始就选择如下棋等比较典型反映人类智能水平的领域进行研究,并希望通过比赛战胜人类,希望寻找到某种通用智能的机制,时至今日,如AlphaGo还只能表明在下棋方面找到某种方法,AlphaGo算法可容易复制到如中国象棋这类完美信息的游戏,但想推广到更广泛一类问题的解决就是新的研究问题了,比如推广来打麻将或桥牌。
AI想达到的智能就是人类级别的智能。那么到底什么是人类级别的智能?问题在于人的智能是一个相对的概念,计算器比小孩做算术做得快,也可以说有智能,那并不是人类共同体的智能,AlphaGo战胜人类,肯定是有智能的,但AlphaGo不能做其它,比如不能证明定理。
早在50年前,学术界就讨论这个问题,并提出了 AI需要更高的标准来衡量智能。30年前AI已将很多问题思考透彻了,知道了AI的难度很大,很多地方难于突破。首先,象人类一样,AI需要拥有知识,并运用知识去解决问题,知识体现智能。AI研究中,除了目前的深度学习,还有一些通过自动控制做的机器人之外,AI的主体都是基于知识的系统。AI实践表明,精确的专门的知识能够处理,但人的常识难于处理,人类并没有将全部常识写出来,人们在交谈时也不需要把常识都说出来,否则言语行为将无从进行,常识通常是只可意会不可言传的。AI学者普遍认为,应以常识作为衡量AI是否达到人类级别的智能水平的标准。
深度学习带来了一定的进步,可以解决很多识别问题,如语音、图像和对象的识别,这些是对外界环境的感知方面的常识,还有更多的常识问题,如有关人的心智状态的推理,就不是深度学习所能解决的。
AI追求通用智能,所谓的强AI,但还停留在专用智能上面,能做到类似AlphaGo能下围棋,所谓的弱AI,从应用看,弱AI已经很成功很有价值了。相对来说,只是简单地应用某项AI技术,不能看成AI,如果是能在某方面达到了人类级别的智能程度就可以看成AI。
林作铨:
深度学习适于解决识别问题,如语音和语言文本,图像和对象等,只要能把某类问题看成识别,如AlphaGo识别棋盘,一些AI医疗系统通过识别人的皮肤变化和医疗图像诊断疾病,具有广泛的应用前景。但是,深度学习并不能拿来解决所有的AI问题,比如,AlphaGo算法不能发展来证明定理。
有人以为,靠深度学习单一算法,有可能解决AI的所有问题,做到通用AI,其实不切实际。历史上,每一个AI算法做得好的时候,都有人想将其变成单一的通用算法,但很快都失败了。这种情况在哲学中的各种单一论已屡见不鲜了。
深度学习是人工神经网络研究的第三次高潮,从2006年算起已经发展了十年。有高潮就有低潮,前两次人工神经网络的低潮都是被证明了它的局限性。深度学习的优点很突出,它以一种表征学习的方法,通过在神经网络中逐层加深,以识别从低级到高级的特征,自动抽取特征,这种识别问题以前应用数学和传统的模式识别也在做,但抽取特征需要人工的帮助,以语音和文本识别为例,深度学习比传统方法,包括应用数学和统计学习都做得好,把识别准确率提高一个数量级,如从85%提高到95%,这种进步是很大的。以应用数学一些方法来比,数学方法虽然更优雅,可毕竟是要解决同样的问题,既然比不够深度学习,那就是问题了。现在深度学习框架已搭到一千多层,实际应用经验验证确实是层次越深效果越好,从理论上,也可证明深度是有意义的。
深度学习也有局限性。首先,深度学习是对神经网络的权重参数进行优化,用数学表示为损失函数,简单地说就是减少误差,误差减少是有极限的,换句话说,到一定深度就没有意义了,这时它所能解决问题的局限会表现出来,因此,暴力地一味加多层次的蛮干并不见得是好办法。