13:“炼丹”与“调参”:把AI模型“训练”出来,到底是在干嘛?

13:“炼丹”与“调参”:把AI模型“训练”出来,到底是在干嘛?

8分钟 ·
播放数156
·
评论数0

哈喽,AI世界的探索者们,欢迎收听《AI有点意思》,我是你们的老朋友小艾!

欸,你们有没有听过AI工程师们聊天?他们嘴里总会蹦出一些听起来特别玄乎的词,比如“我这炉‘丹’好像快‘炼’成了”、“这个参数得再‘调’一下”、“太好了,终于‘收敛’了”……

是不是感觉像闯入了哪个武侠小说的片场,一群武林高手正在交流修炼心得?其实啊,他们说的就是AI最核心、最关键的一步——训练模型。

在我们之前的节目里,聊了很多AI能做什么。但大家要记住,AI并非生而知之。它在正式“上岗”之前,也必须经历一场艰苦卓绝的“魔鬼军训”。今天,我们就来当一回“探秘者”,揭开大家口中神秘的“炼丹”——也就是“训练模型”——的真实面纱,看看这背后到底是在干些什么?

好的,我们正式开始!想象一下,我们要训练一个能识别猫和狗的AI。在训练开始前,我们必须先解决一个至关重要的问题:当这个AI犯错时,比如把一张可爱的猫咪图片认成了小狗,我们怎么来衡量它这一次“错得有多离谱”呢?

总不能简单地说“你错了”就完事了吧?是错得十万八千里,还是只差一点点就对了?这个“错误的程度”必须被量化。

于是,聪明的工程师们就发明了一把数学“尺子”,它的专业名字,叫做 损失函数 (Loss Function)。

这个函数的功能非常纯粹:AI每做出一次预测,这把“尺子”就去量一下“预测结果”和“正确答案”之间的差距,然后给出一个具体的“差距分数”。这个分数,我们就叫它 “损失值”(Loss Value)。

规则很简单:AI猜得越不准,差距越大,这个损失值就越高;反之,AI猜得越准,差距越小,损失值就越低。如果AI完全猜对了,那损失值就是0!所以,我们接下来整个训练过程的唯一目标,就是想尽一切办法,让这个“损失值”变得尽可能地低,最好是趋近于零。

好了,现在我们的AI有了明确的目标——让损失值最低。但这具体要怎么做呢?

这里,我要请大家和我一起想象一个非常经典的场景。我们把一个蒙着眼睛的盲人,随机空投到了一座连绵起伏、广阔无垠的大山上。我们给他的任务是:“你的目标,是走到这座山脉的最低点,也就是山谷的谷底。” 他看不见完整的地图,四周都是浓雾,他该怎么办呢?

放弃吗?当然不。这个盲人会用一种最聪明也最“笨”的方法:

第一步,他会先用脚,小心翼翼地试探自己脚下四周一小圈的地面,感受一下哪个方向是下坡最陡峭的。

第二步,他会朝着这个最陡峭的下坡方向,迈出确定的一小步。

第三步,到达新的位置后,他会停下来,重复第一步,重新在当前位置感受哪个方向下坡最陡,然后再迈出一小步。

就这样,虽然他每次都只能看到脚下的一小片区域,但只要他坚持“找到最陡的下坡方向,然后前进一小步”这个策略,一步一步地,他最终就能成功地从高处走到山谷的最低点。

朋友们,这个听起来很简单,甚至有点笨拙的“盲人下山”过程,就是AI训练中最核心的算法思想。这个“感受最陡峭下坡方向,然后迈出一步”的过程,在数学上有一个非常酷的名字,叫做 梯度下降 (Gradient Descent)。而那个“最陡峭的方向”,在数学里,就叫做 “梯度”(Gradient)。

现在,最关键的一步来了!我们把这个比喻翻译回AI的训练过程,你会发现一切都对上了:

这座连绵起伏的大山: 它其实就是由我们刚才提到的“损失函数”构成的、一个庞大无比的“损失地貌”。地势高的地方,代表着AI预测错误时产生的高损失值;山谷的最低点,就代表着损失值最低、预测最准确的理想状态。

盲人本身: 就是我们那个一开始什么都不懂、参数随机的初始AI模型。

盲人迈出的每一步: 就是对AI模型内部那成千上万、甚至上亿个参数进行一次微小的调整。你可以把这些参数想象成AI大脑里的无数个小旋钮,每迈一步,就是把这些旋钮集体拧一下。这个过程,就是工程师口中的 “调参”。

下山的目标: 当然就是让模型的预测越来越准,使得损失值越来越小。

理解了“尺子”(损失函数)和“下山方法”(梯度下降),我们就能完整地串起整个训练过程了。一次AI的“炼丹”,其实就是下面这个循环的无数次重复:

喂数据: 我们拿一张可爱的猫咪图片喂给AI看。

做预测: AI模型内部的参数经过一通计算,给出了它的猜测:“嗯……根据我目前的知识,我认为这是一只狗!”

算损失: “损失函数”这把尺子立刻登场,它一量,发现AI的预测“狗”和正确答案“猫”差得太远啦,于是算出了一个很高的“损失值”,比如500。

求梯度: AI得到这个糟糕的分数后,开始利用微积分进行计算,弄明白到底该如何调整内部那上亿个参数(也就是那堆小旋钮),才能让这个500的损失值下降得最快。这个过程,就是在“找下山最陡的那个方向”。

调参数: AI朝着计算出的方向,把自己大脑里的所有旋钮都微调那么一下下。这,就完成了一次“梯度下降”的步伐。

无限重复: 好了,再喂给它下一张图片,可能是另一只猫,也可能是一只狗,然后把上面1到5的步骤再走一遍。

这个循环会重复成千上万,甚至数亿次。经过海量数据的“喂养”和一次又一次的“调教”,AI这个“盲人”,就真的从随机的山坡上,一步一个脚印地走到了损失最小的谷底。当它走到谷底时,它的损失值已经变得极低,这意味着它内部的参数组合已经非常完美。这个时候,我们再说它“收敛了”,一个训练有素的AI模型就“炼”成了!

所以大家看,“炼丹”这个词,是不是对这个漫长、极其消耗计算资源,而且中间还可能出各种问题的训练过程,一个非常形象又有点自嘲的戏称呢?

好了,讲到这里,我想留给大家一个开放的思考题。

在我们“盲人下山”的比喻里,我们默认了这座山只有一个最低的山谷。但如果真实的地形非常复杂,山上不止一个山谷,而是有很多个大大小小的“小坑洼”呢?我们的盲人有没有可能辛辛苦苦走到了一个小坑里,感觉四周都是上坡,就以为自己已经到达最低点了,但其实不远处还有一个更深、更宏伟的大峡谷?

这在AI训练中,确实是一个超级大的问题,叫做“陷入局部最优解”。当然,工程师们也发展了很多聪明的办法来解决它。你觉得可以有什么好办法,能帮助我们的“盲人”更有智慧地探路,比如偶尔跳出小坑,去寻找那个全局的、真正的最低点呢?欢迎在我们的评论区留下你的脑洞!

好了,关于AI“炼丹”的秘密今天就聊到这里!希望你下次再听到这些词的时候,脑海里能浮现出一个勤奋的“盲人”正在努力下山的画面。我是小艾,我们下期再见啦!