这次,我们邀请到了TVM、MXNet、XGBoost作者,CMU机器学习和计算机系助理教授陈天奇,他的工作,让各类硬件上原生部署任意大型语言模型成为可能,算力,还是问题么?Enjoy
陈天奇:我的研究风格是问题导向。过去5年我们一直致力于解决的问题,是如何让机器学习面向更多人群,同时可以在更多设备环境下运行。最近的研究重点,一是集中在机器学习系统,不光要解决算法,还要让系统工程本身可以更快速迭代;二是做更多开源软件,让大家直接尝试我们的研究成果,并通过这个方式获得工业界和其他领域的反馈。
随着GenerativeAI和大模型的兴起,我们也希望结合大模型和过往的积淀,探索一些新的方向。
绿洲:大语言模型出来之后,您最新的工作主要是什么?
陈天奇:过去5年有一个集中的方向是机器学习编译。机器学习工程会成为越来越大的问题。为了在更高效的设备上运行,我们需要建设可重复使用的架构,无需在每个硬件平台上重做系统工程。
针对大语言模型内存损耗大等特性,我们最近一个工作的核心就是利用机器学习编译技术,为机器学习部署、训练和本身的支持方面加速。基于这个工作,MAC的一系列项目,令我们可以将一些语言模型部署在手机端、移动端或者通过WebAssembly和WebGPU技术部署在浏览器中,同时也可以在各类显卡,包括英伟达、AMD和苹果上都跑得更快。
语言模型一旦可以在多设备上完成部署,就可以基于这项技术,打造更多开放的解决方案,降低部署开放模型的代价。
绿洲:您做过很多有趣的开源工作,不论早期的ApacheMXNet,到XGBoost、TVM,如何把这些工作串连起来?机器学习十几年的发展,从算法和系统层面,您有些哪些感受?
绿洲:英伟达在大语言模型的发展下获益明显,您的工作势必让硬件竞争更多元化。如何看待类似英伟达公司和开源解决方案这两种路径的发展关系呢?
陈天奇:我认为两者不是竞争关系,我们也做很多英伟达显卡的优化工作。我们的这套解决方案很多时候是可以利用厂商原生库的。英伟达现在的确在多方面都处于领先地位,我们没有打算一定要超过英伟达,英伟达也不是在所有场景下都完美无瑕。我们感兴趣的是如何让整个领域更快地向前跑,无论推动的人是谁。
所以这不是一个必须A和B之间比较的关系,在算力依然处于相对紧缺的阶段,拥有更多可能性让大家一起向前走,才是我们想看到的。
绿洲:具体讲讲英伟达在哪些领域相对是比较领先的?
陈天奇:总的来说是硬件及编程模型。靠传统直堆Silicon的方式,已经很难通过不改编程模型的方式来解决了。随着新卡的发布,编程模型不能直接迁移。
大家目前需要的是一套在新硬件环境和新模型出现的时候,可以快速迭代的解决方案去适配。过去十年为何深度学习发展这么快?是因为深度学习建模本身的门槛被降得非常低。未来5到10年,机器学习工程会变得很重要。对于每一套可能的硬件模型数据组合,都需要特别的工程化解决方案。我们感兴趣的目标就是如何让工程迭代的速度变快。在硬件的迭代上,英伟达目前还是无人能出其右,所以未来如何对新硬件进行更好的支持,是一个很有趣的话题。
不过现在有一个不同,之前是其他厂商都不行,等于0。现在通过我们的解决方案,AMD从不能跑到可以跑,跑得还不错,从其他厂商来看,也是一个进步。从0到1的过程是难能可贵的。
绿洲:既然深度学习的门槛变得很低,那可预见的未来,大语言模型的机器学习工程化门槛也会降得很低吗?
陈天奇:就好像当初我做XGBoost之前,数据科学都很复杂,现在基本调一下效果就不错了。我们希望能够降低机器学习工程的门槛,目前也取得了一些成果。但能降到多低、什么时候降,与研究的方向、研究的投入,特别在开源社区大家的共同努力是不可分割的。
绿洲:在这个方向上,开源界共同努力可能会产生更大激励,而闭源的领先者,更希望作为专业技术「藏起来」?
陈天奇:不说模型,对于机器学习工程基础设施而言,开源闭源都会有促进作用。学术界如果要跟上时代,继续往前走,哪怕是建模,也会有完全闭源的,也有像LLaMa一样开放的。我个人比较相信开源,开源社区迭代会比较快。
绿洲:模型在手机上跑,还存在什么挑战?
陈天奇:我们的解决方案可以直接在手机上跑7B的模型,7B到3B其实没有什么压力,解决方案肯定会成熟。还有看你要不要跑,或者要跑多大的模型,多大的模型它是不是有用,这是另一个问题。
3B我们现在的解决方案直接可以跑,去MAC,我们有一个APPStore的APP下载可以玩一下。7B可能手机会发热,能耗可能会有点问题,高端机可以跑。接下来的问题就是如何与垂直应用整合,以及有没有必要在手机端跑,因为平板,笔记本都可以。在手机端跑是因为大家关心数据不要外传。
我们现在的MAC解决方案,可以让大家在手机上跑,可以在平板上跑,可以在Apple的笔记本上面跑,或者在浏览器里面跑,当然也可以在服务器上面跑,相对来说灵活度会比较大。
绿洲:既然您的方案让大家在手机上就可以跑模型,那这条路径和英伟达等大厂的区别在哪里呢?
陈天奇:为什么要在手机上跑?为什么要在端侧跑?因为有不同应用场景。假设打游戏,如果和NPC每说一句话都要付一毛钱,虽然也不是不行,但如果可以直接在某些场景直接在本机就可以完成不错的任务,我想应该是喜闻乐见的。
譬如要有得力的私人的助手,就必须最大限度披露个人信息,你是否愿意把这些内容发到第三方?在本机是否安全性更强?还有个性化,如何让语言模型更懂你?这些方向都可以演变出不同形态的应用。
电脑刚发明的时候曾有个论断,说世界上只要有8台超级计算机,在几个国家的实验室里就可以满足全球的计算需求,但个人电脑就出现了。如果模型的门槛能进一步降低,是否会出现PersonalAI的时代?这也是我们想实现的方向。
绿洲:假设有几万张A100用于训练模型,你认为哪些问题需要有经验的基础架构师和系统工程师来解决?
绿洲:英伟达、AMD以及苹果都有自己的架构,跑起来有什么区别?
苹果在架构层面具有领先性,特别是Ultra,内存很大。机器直接跑LLaMA模型,最简单的方式就是买一个苹果最新M2笔记本。我们的解决方案在苹果上也可以做。
软件问题需要大家的努力,只要有基础架构,问题也可以解决。当然还是要工程化。我们的解决方案没有限制于推理侧,只是需要打开一些思路。
绿洲:你做的一些工作如XGBoost,影响力都非常大,你是怎么挑选研究问题的呢?
绿洲:有人说您是机器学习编译这个全新学科的创造者,您对这点怎么看?
陈天奇:这也不算是一个全新学科,我们在编译本身有很多积淀和投入。我个人的研究方式属于问题驱动,当时的想法是探索解决机器学习工程问题要用什么方法,那么多硬件后端,如何以最少的能力撬动这个领域?我们觉得自动化是必须之路,编译工程就是其中一条路径。编译本身的定义也在不断演进,我们最新的解决方案可以整合手工方案和自动方案,加速工程迭代。
绿洲:基于树的模型前景如何?
陈天奇:基于树的模型目前还是很多行业必不可少的技术解决方案,数据科学家排名前五的工具,XGBoost依然位列其中。未来每一个方向上的技术都会需要树的模型,在可预见的未来还是非常重要的,特别在于表格数据、金融和其他领域,使用的还是很多的。
绿洲:在研究过程中您有没有遇到一些特别的挑战?
陈天奇:挑战一直存在,科研没有标准答案。尝试也好,失败也好,工业界也好,学术界也好,都会有各种各样往前的目标,都比较卷吧(笑)!但我们很享受能够参与推动这个领域的过程。
绿洲:如何判断自己选择的研究方向,是不是一条相对正确的道路?
陈天奇:判断不了,只有相信。乔布斯有句话:Thejourneyisthereward.很多时候目标不是最终的奖杯,而是走的过程。
至于说一件事情正确与否,譬如12年之前我开始做深度学习,属于一个非常正确又错误的决定,当时的目标是利用深度学习算法解决ImageNet的问题,结果两年半以后,没有任何结果,但是经验积累下来,可以沿用到未来要做的其他内容。关键还是「做觉得有趣的事」。
绿洲:你觉得自己是一个很卷的人吗?
陈天奇:做有趣的事情就不存在卷,主要是享受做的过程(笑)。