算法还是算力?周志华微博引爆深度学习的“鸡生蛋,蛋生鸡”问题_最新动态_新闻资讯_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 新闻资讯 > 最新动态 > 算法还是算力?周志华微博引爆深度学习的“鸡生蛋,蛋生鸡”问题

算法还是算力?周志华微博引爆深度学习的“鸡生蛋,蛋生鸡”问题

 2017/12/20 17:56:13    程序员俱乐部  我要评论(0)
  • 摘要:作者:波波上周,由强化学习加持的AlphaZero,把DeepMind在围棋上的突破成功泛化到其他棋类游戏:8小时打败李世石版AlphaGo,4小时击败国际象棋最强AI——Stockfish,2小时干掉日本象棋最强AI——Elmo,34小时胜过训练3天的AlphaGoZero。对于这个不再需要训练数据的AlphaZero,有人将其突破归功于DeepMind在实验中所用的5064个TPU的强大计算能力,更有甚者则将整个深度学习的突破都归功于算力
  • 标签:学习 问题 微博 算法

  作者:波波

  上周,由强化学习加持的 AlphaZero,把 DeepMind 在围棋上的突破成功泛化到其他棋类游戏:8 小时打败李世石版 AlphaGo,4 小时击败国际象棋最强 AI——Stockfish,2 小时干掉日本象棋最强 AI——Elmo,34 小时胜过训练 3 天的 AlphaGo Zero。

  对于这个不再需要训练数据的 AlphaZero,有人将其突破归功于 DeepMind 在实验中所用的 5064 个 TPU 的强大计算能力,更有甚者则将整个深度学习的突破都归功于算力,瞬间激起千层浪。

  很快,南大周志华教授就在微博上指出,这个说法是绝对错误

  “最重要的进步是由机器学习技术的进步带来的,计算能力起到了促进作用而不是根本作用。”他的全文是这样的:

  对此,中科院计算所的包云岗研究员则表示,“算法进步和计算能力进步对今天 AI 都不可或缺”,二者相辅相成。其中算力提升的作用则表现在运行时间减少、功耗降低、开发效率提高这几大方面,进步相当显著:

  此后,周志华教授则把该问题进一步定性为:“机器学习的进步使我们从‘不能’到‘能’,计算能力的进步使我们从‘能’到‘更好’。试图抹杀前者的作用,认为一切都是计算能力提高带来的,是错误且危险的”

  交锋的双方均有数据来做支撑:一边强调算法效率所提升的 3 万倍;另一边强调计算能力所提升的 1 万倍,特别是并行计算能力所带来的 200 万倍提速。

  随后,杜克大学副教授陈怡然也加入论战,在他那篇《有关最近深度学习的两个争论》中,陈教授认为计算能力的提高对于深度学习的发展是有很大贡献的,他特别提到了 Hinton 老爷子和李飞飞教授的观点:

之前很多文章说到深度学习这波高潮的标志性起点是 2006 年 Hinton 那篇 Science 文章。在这篇文章里 Hinton 其中第一次明确提到计算能力是其研究能成功的三大条件之一:“provided that computers were fast enough, data sets were big enough,and the initial weights were close enough to a good solution”。2014 年 IBM TrueNoth 芯片的发布会我受邀请在现场,当时刚刚加入斯坦福不到两年的李飞飞在她的邀请报告中明确提到 CNN 等深度学习模型的架构和 1989 年被发明时并无显著区别,之所以能广泛应用的主要原因时两个主要条件的变化:大数据的出现和运算力的提升(大约提高了一百万倍)。

  这里提到的 Hinton 老爷子那篇文章,是他和当时的学生 Russ Salakhutdinov(如今的苹果 AI 主管)共同署名的《Reducing the Dimensionality of Data with Neural Networks》一文。他们在文中提出了一种在前馈神经网络中进行有效训练的算法,即将网络中的每一层视为无监督的受限玻尔兹曼机,再使用有监督的反向传播算法进行调优

  这一论文奠定了反向传播算法在深度学习中的支柱性地位,并给出了深度学习成功的三大基石:计算能力、大数据和算法突破

  “事后来看的话,利用大数据训练计算机算法的做法或许显而易见。但是在 2007 年,一切却没那么明显……”这是李飞飞教授 2015 年在 TED 演讲时所做的总结。到 2009 年,规模空前的 ImageNet 图片数据集诞生了。其中包括 1500 万张照片、涵盖 22000 种物品,仅”猫”一个对象,就有 62000 多只长相各异、姿势五花八门、品种多种多样的猫的照片。

  这一“猫”的数据集,为吴恩达 2012 年在 Google Brain 实现“认出 YouTube 视频上的猫”的成果奠定好了基础。

  同样在 2012 年,基于 ImageNet 的图像识别大赛,Hinton 和他的学生 Alex Krizhevsky 在英伟达 GPU 上取得视觉领域的突破性成果。据此,英伟达研究中心的 Bryan Catanzaro 跟吴恩达合作研究 GPU,结果证实,12 个 GPU 的深度学习能力相当于 2000 个 CPU 的表现总和。

  而后,英伟达开始在深度学习上发力——投入 20 亿美元、动用数千工程师,第一台专门为深度学习优化的 GPU 被提上日程。经过 3 年多的开发,直到 2016 年 5 月正式发布,才有了老黄 GPU 的深度学习大爆炸。

  简单来从时间线上看,确实是先有算法上的突破,而后才有更大规模的数据集,以及专注于深度学习的 GPU 硬件。把这一切归功于计算能力的提升,似乎确有免费替老黄卖硬件的嫌疑。

  但是看具体的进展,Hinton 老爷子 2006 年的算法突破终究离不开当时的数据集与计算机硬件。毕竟,Pascal 语言之父 Niklaus Wirth 早就告诉我们,算法加上数据结构才能写出实用的程序。而没有计算机硬件承载运行的程序代码,则又毫无存在的意义

  回到 AlphaZero 的问题,它的突破到底该归功于算法还是算力?

  我们知道,AlphaZero 是 AlphaGo Zero 的进一步优化,后者的目的是让电脑不学人类的对局也能学会围棋,这是 AlphaGo 彻底打败人类之后,DeepMind 赋予其围棋项目的新使命。尽管不使用任何训练数据,AlphaZero 却用到 5000 个 TPU 来生成对弈数据,而用于模型训练的 TPU 数量仅为 64 个。

  而这里的一切投入,不过是 DeepMind 之父 Demis Hassabis 想要解决通用学习问题、超越人类认知极限的一个注脚。如果没有 DeepMind 大量的人力物力投入,蒙特卡洛树搜索算法和 GPU 并行计算可不会自发地进化成 AlphaGo 并打败李世石、柯洁,如果没有更进一步的投入,AlphaGo Zero 也不会自己就能学会围棋,AlphaZero 更不会自动把它的围棋能力泛化到其他棋类上。

  也就是说,AlphaZero 和它的强化学习算法、它的 TPU 运算集群,是由它背后 David Silver、Demis Hassabis 等人的疯狂努力才组合出最佳的效果,向解决通用学习的最终问题又迈进了一步。

  而撇开这个全景,单点去谈算法和算力之于深度学习孰强孰弱,就有点像是抛开鸡的整个物种的进化,而去谈先有鸡还是先有蛋的问题……问题只是,到底大家是关心鸡的祖先多一点呢?还是关心餐盘内的鸡蛋、鸡肉好不好吃多一些?

发表评论
用户名: 匿名