“学以致用,问题才是学习的真正驱动力”
最近写了几篇关于人工智能技术学习方法的文章,后台收到一个挺典型的问题:没有深度学习的基础,能不能学人工智能?
答案是肯定的,这点不用怀疑。虽然深度学习是大模型的技术根基,但学AI真不是非得先啃下它不可。
很多人学大模型,第一步就卡在“入门”上——不知道怎么开始。一说学AI,大家惯性认为得先搞懂机器学习和深度学习。打开教材就是各种复杂的模型和算法实现,很多人的人工智能学习之路,基本就在这里断了。
其实,完全没必要把大模型想得那么玄乎。技术说到底就是个工具,而会不会制造和使用工具,本来就是人和动物的根本区别。既然大模型是工具,那我们即使不会制造它,总可以先学会用它。所以,对不了解机器学习和深度学习的朋友来说,学习大模型最友好、最简单的路径,就是从“使用”开始。
学习使用大模型,又可以分成两类人。一类是完全不懂技术的,学会了用基于大模型开发的产品就行,比如现在很火的音视频生成工具。另一类是懂技术的,有编程基础,可以学习在大模型之上构建上层应用,也就是为不懂技术的人开发工具。
第一种情况没什么好说的,人工智能、微信、淘宝、拼多多,对这类用户来说本质没区别。今天重点讨论的是想学习大模型技术的人。当然,第二类里也有人特别痴迷技术本身,想钻研底层模型、算法、架构——这一部分今天不展开。

为什么我说学大模型可以不懂机器学习和深度学习?原因在于学习方式不止一种。学生时代,学校习惯填鸭式教学,上来就讲高大上的理论和不知所云的概念。所以有人开玩笑说:我就上街买个菜,用得着懂牛顿-莱布尼茨公式吗?
很多人学AI也是这个毛病。根本不知道人工智能是什么、大模型是什么,就因为这玩意现在火、说出来牛逼,就去学。问为什么学,又说不出个所以然。听了一堆概念,看了一堆书,最后也不知道能干什么、为什么这么干。
踏入社会后,得学会另一种学习方式:从问题出发,从应用出发,在问题中找答案。先别碰那些高大上的理论和乱七八糟的概念。第一步,先学会用大模型。让它帮你生成一张图片,回答一个问题。
这时候问题就来了:大模型为什么能生成图片?为什么能回答问题?接着思考它是怎么做到的,为什么能做到。带着问题去找答案,你会发现,原来那些看不懂的概念好像开始变明白了。之所以能生成图片和回答问题,是因为现在的模型叫生成式模型,使用特殊架构,实现了通过预训练习得知识的能力。
然后你又发现新问题:什么是预训练?预训练是怎么做的?于是你去学大模型的预训练流程——选择模型、数据清洗、数据训练、正向传播、反向传播、损失计算……到这步,你对大模型技术就有了一个大致认识。虽然还不知道具体细节,但你知道通过预训练流程,就能打造一个适合特定场景的模型。

接着,你开始思考:怎么训练一个能解决具体问题的模型?如何选模型?上哪找这些模型?它们需要什么样的数据、什么格式?预训练要多少算力?需不需要分布式并行计算?
这时你会发现,训练一个模型居然这么复杂、这么困难。怎么办呢?你又看到了“微调”——用少量数据,就可以把功能类似的预训练模型调整成适合自己任务的模型。仔细一看,训练和微调在技术上没有本质区别,唯一的区别是预训练模型参数已经训练好了,微调只需要调整部分参数。如果是全量微调,那和训练就没什么两样了。
到这,你已经明白了大模型的基本运作原理,以及训练和微调的方法。你也许会想:我也自己设计一个大模型给别人用?一通查资料后发现,想实现这个目标确实复杂——不但要深入了解各种机器学习的理论和算法,还得有足够的数学基础。所以可能转个方向,先基于大模型开发一款工具或应用,比如AIGC或知识库。
然后问题又来了:怎么用大模型开发应用?是自己训练或微调一个模型,还是直接用第三方的大模型?如果使用三方大模型,只需要懂得接口调用,甚至不需要懂AI就能开发,技术要求低,成本也低。而如果用开源模型,就得自己部署、动态扩容……等你真正决定自己部署大模型时才会发现,独立运维部署大模型是一个超级复杂的工程,不但要考虑模型选择,还要负责集群部署和扩容。这么庞大的系统工程靠人力根本不行,自动化运维就成了必需品。
最终,经过一番折腾,你成功部署了大模型。然后发现,模型的生成效果好像不太好,现有的训练和微调方式都没办法解决。

到了这一步,你就得开始真正研究大模型的底层实现了——用了什么算法、什么架构、可能是什么问题导致表现不好。或者,你在使用过程中突然发现一些之前没注意到的好玩现象,比如大模型的幻觉问题,一本正经地胡说八道。产生这个问题的根本原因又是什么?
这时你会发现自己好像懂了什么是大模型,又好像什么都不懂;感觉什么东西都知道一点,但又没办法说个所以然。为什么会出现这种情况?原因很简单:大模型是一个复杂的系统性工程,没有人能一开始就说个一二三。大家都是在不断学习、不断使用的过程中,发现问题,改正问题,在问题中成长。
所以说,你没有机器学习和深度学习的基础,会有上面的各种疑问;你有了机器学习和深度学习的基础,同样会有这些疑问。学习最重要的是学以致用。不论是从应用学起,还是从底层理论开始,你可以根据自己的喜好选择适合的方式。没有人规定有了深度学习基础就一定能学会大模型技术,也没有人规定没有深度学习基础就学不会大模型技术。
