科普:alphago是什么

标签: AlphaGo人工智能神经网络围棋李世石
2542人阅读 评论(2) 收藏 举报
分类:
鉴于大部分人类对alphago的认识:

1:Alphago有什么了不起的?不就是算得快吗,ibm早在20年前就通过象棋战胜人类了,又是Google的一次营销。
2:alphago 实现人工智能了,电脑马上要超过人类占领地球了。


这两种想法哪个才是正确的那?严格地说,都不正确。所以我觉得非常有必要给非计算机行业的同学们科普一下。由于是一篇科普文,所以我们不讨论卷积神经网络或MCTS这些东西,对原理感兴趣的同学可以:https://deepmind.com/alpha-go.html。另外,欢迎加微信探讨各种问题或指出错误:lofocus
要理解什么才是真正的alphago? 必须弄明白以下几个问题。


1: 象棋早就被打败了,围棋有什么了不起?

用计算机怎么才能达到绝对的胜利?那就是穷举,就是把每一步每一种落子的可能都算一遍,然后电脑尽可能的往胜利的分支上去走,这样除非你也能看尽每一步棋,或者运气极佳,一个失误都没有,否则必输。要做到看尽每一步棋,需要多大的脑容量那?这主要取决于棋盘的大小,简化一下,不考虑落子的顺序和规则,象棋的难度是10的46次方,而围棋的难度是10的172次方。这么说对于没有算法复杂度概念的人可能很难理解。10的172次方就是1后面跟172个零,而宇宙中原子总数量大概是1的80次方左右。还不理解?我们缩小一下范围,假设象棋的难度是1,就是只有一个格,谁先下谁赢。那么围棋就是1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,没错,依然很大。这种计算量,目前电脑的计算能力是远远不够用的。此外,象棋的棋子是有区别的,电脑可以优先保证车马炮一类的,然后才去考虑小兵,加上象棋的规则复杂导致计算机不用考虑大量不合理的走法(术语叫剪枝),所以计算象棋相对就简单多了,仅仅通过提高计算能力就可以达到打败天下无敌手。围棋也有很多不合法的落子方式可以去掉,去掉之后的难度大概是1的170次方,对,并没有卵用。当然,还可以刨除一些可预知的不合理没有胜率的规则,但是难度依然是不可计算的天文数字。通过计算机的计算能力打败人类围棋高手,目前看不到任何希望,这也就是大部分人,包括很多计算机领域的大牛,集体不看好alphago的原因。


2:围棋程序不是早就有了吗?狗狗就是提升了一点而已。

的确,很早之前电脑就会下围棋,而且也下的不错,至少我下不过我的手机。这些软件是怎么做到的那?其实就是用象棋程序的原理(当然有针对性的改善了,比如使用了蒙特卡洛搜索等等),这类程序太依赖计算,所以电脑性能越高,软件也就越厉害。不过前面说过了,围棋太复杂无法算尽。所以这种方式始终无法突破瓶颈。在人类高手面前看起来很像白痴。


3:Google是怎么实现的?

这个问题讨论起来很复杂,通俗的说,就是预先输入一大堆人类对战的棋谱,然后电脑下棋的时候,根据这些棋谱的某些特征去选择把棋子放在什么地方(注意,不是完全复制人类之前的下棋方法,而是依据数据分析判断)。它可能觉得很多地方都值得放棋子,那就把胜利最大的几个位置都测试一下,分析出一个胜率最高的位置。怎么确定哪个位置胜率最高那?就是把棋子放在一个位置,然后用相同的方法去判断对手的棋子会放在什么位置…如此重复,直到下完一整盘棋,看看是输是赢,这个过程会根据不同的选择重复很多次,这样就找到一个胜率相对最高的位置。然后你会发现,通过这种方法狗狗是无法进步的,因为人类没有那么多棋谱让它学习,所以,他会通过自己跟自己下棋来获得提高,并且他自己会下出什么奇怪的套路人类很难预测。
怎么样?狗狗的进步方法是不是跟人类很像?学习上:首先找老师学规则(程序狗写的),然后看各种名人的作品(输入人类数据),在然后自己反复练习(机器学习)。对战上:纵观全局,考虑一下因该把棋子放在什么地方,然后在心里预演一下放在这里合不合适。
其实,狗狗的实现就是对人了思考过程的模拟。


4:电脑要占领地球了?

然而并没有,先不说狗狗的算法有多通用,至少它完全不是你所理解的拥有了自主意识,它就只会下围棋,稍做修改或者不用修改(目前的算法还是需要修改的,看论文他们的算法还是针对围棋做了很多特殊的设定),就可以下象棋、打游戏、医疗、基因排序、经济预测等等等,但是它并不知道什么是程序猿,什么是单身狗,也不会梦见电子羊。它更像是用统计学上的一些方法,做到了人类凭直觉完成的事情。而不是具有了人类胡思乱想的能力。


5:狗狗根本不理解围棋,所以不是人工智能,大家都被骗了?

这个想法可能源于人类对人工智能以及对自己的认识不足,举个例子:人理解骑自行车吗?人生下来是本不会骑车的,但是通过学习都可以学会。从不会到会,区别是什么,是因为那个人现在理解自行车了吗?就个人来说,从不断摔倒,到可以撒把骑车,并没有特别的变化,我说不出速度和重心的关系,也谈不上理解骑车,但不妨碍我转弯避让,自由穿梭。区别不是理解,而是训练。通过训练,得到反馈,做出调整,获得模式。下棋也是这样,通过大量的训练,能够做出最好的反应,就可能会赢。


6:这有什么意义?

要说意义,我个人认为还是非常非常大的,这可能是本世纪最重要的一个事件,也可能是人类历史上最重要的一个事件。当前,前提是证明AlphaGo的方法的确可行。
虽然现在的狗狗不是一个通用的神经网络,想让下围棋的狗狗下象棋,是需要人工修改狗狗的逻辑制造一条新狗的。即使这样,这种算法的应用场景依然十分广泛,比如医疗、金融、自动驾驶、同声传译、甚至在数论、量子场论等很多领域都有用武之地,现在,一些基层医生、律师、高级技工等行业也需要开始担心自己的饭碗了。他能解决的不是一个问题,而是一系列问题。他找到的未必是最佳解决方案,但至少超过了人类所能找到的所有解决方案。
的确,现在的狗狗还不具有自由意识,但不能说狗狗不具有自由意识就没有任何意义,就不叫人工智能。如果狗狗真的具有独立思维,那是否应该叫“人类智能”那?况且,如果机器真的具有了自由意识,那对于人类的意义恐怕就不需要我在这写了,也没有围棋比赛了,人类应该考虑是否拿起武器去反抗了。
说到底狗狗还是程序,还是各种指令的集合。但是,谁又能说程序和运算不能是智能那?难道智能必须是由碳水化合物组成的肉身吗?如果人类能够制造一个绝对理性人,没有情感,没有意识,但无所不知无所不晓,智商全面碾压所有人类小肉虫,这台“机器”的发明是否是一件值得我们深思的事情那?当然,狗狗还远未达到这个程度,但它让我们看见了一丝希望,一道曙光。
今天,AlphaGo用事实证明了机器可以部分代替人类思考,让人脑思维结晶的权威性受到质疑,这绝对是一个崭新的开始。。。

昨天,我们不相信计算机能够解决围棋问题,今天,我们是非依然不相信计算机能够产生自由意志那?我们还是独一无二的吗?


4
0

猜你在找
【直播】机器学习&深度学习系统实战(唐宇迪)
【直播】Kaggle 神器:XGBoost 从基础到实战(冒教授)
【直播回放】深度学习基础与TensorFlow实践(王琛)
【直播】计算机视觉原理及实战(屈教授)
【直播】机器学习之凸优化(马博士)
【直播】机器学习之矩阵(黄博士)
【直播】机器学习之概率与统计推断(冒教授)
【直播】机器学习之数学基础
【直播】TensorFlow实战进阶(智亮)
【直播】深度学习30天系统实训(唐宇迪)
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:674908次
    • 积分:6650
    • 等级:
    • 排名:第3411名
    • 原创:95篇
    • 转载:10篇
    • 译文:11篇
    • 评论:259条
    微信


    微信:lofocus

     

    如果有问题,可加微信 :D

    博客专栏
    作品
    最新评论