【生成式AI導論 2024】第3講:訓練不了人工智慧?你可以訓練你自己 (上) — 神奇咒語與提供更多資訊

Hung-yi Lee
2 Mar 202434:34

Summary

TLDR本课程探讨了如何通过特定方法提升个人在使用人工智能时的能力。强调了无需训练模型即可增强其能力,介绍了如'Chain of Thought'等神奇咒语,并通过实验数据展示了其对提高模型解题正确率的影响。讨论了如何通过提供额外信息、例子或明确指令来改善模型的响应。同时,指出了这些方法并非总是有效,并提出了使用增强学习等技术来发现更有效的咒语。最后,通过实验展示了提供大量上下文信息可以显著提升模型的特定任务表现,但这种学习是短暂的,一旦缺少上下文,模型将无法回忆之前学到的内容。

Takeaways

  • 😀 在本节课中,没有任何模型被训练,主要讲述如何在使用人工智能时,通过自身训练提高使用效果。
  • 😀 课程强调写特定任务的Prompt不需要特别学习,因为语言模型的能力已经很强,只要清楚表达意图即可。
  • 😀 语言模型像一个在线新人助理,具有基本知识和理解能力,但对用户的个性化信息一无所知。
  • 😀 提供模型更多的信息和上下文,可以提高其回答的准确性。例如,明确身份信息可以让模型更好地理解问题。
  • 😀 神奇咒语如Chain of Thought(COT)可以显著提高模型的能力,例如解决数学问题时,指令“Let's think step by step”可以显著提高正确率。
  • 😀 让模型解释自己的答案可以提高其准确性,这在文章批改任务中尤为有效。
  • 😀 情绪勒索咒语也有效,当告诉模型任务对自己很重要时,模型的表现会更好。
  • 😀 对模型有礼貌并没有用,直接明确定义任务要求效果更好,例如希望文章写长一点,直接要求即可。
  • 😀 增强式学习可以用于训练另一个模型来寻找神奇咒语,进一步提高目标语言模型的能力。
  • 😀 提供示例(in-context learning)可以帮助模型更好地理解任务,但示例内容的准确性对模型的输出有直接影响。
  • 😀 最新的研究表明,强大的语言模型确实能读懂并应用示例,这在更大参数量的模型如PALM中表现明显。
  • 😀 在零样本条件下,模型对陌生语言的翻译能力有限,但提供足够多的相关资料后,模型能显著提高翻译准确性。
  • 😀 In-context learning并不是实际的模型训练,而是通过改变输入内容来影响输出结果。

Q & A

  • 1. 课程的主要目标是什么?

    -课程的主要目标是教大家如何在不训练模型的情况下,通过特定的方法增强语言模型的能力,以便更好地使用人工智能。

  • 2. 为什么不需要特别学习如何为特定任务编写prompt?

    -因为现今的语言模型已经非常强大,只要把你想做的事情讲清楚,模型往往都能理解并执行,不需要特定格式。

  • 3. 什么是“Chain of Thought”神奇咒语?

    -“Chain of Thought”指的是在模型解答问题时,提示它逐步思考,例如“Let's think step by step”,这样可以显著提高模型解答问题的准确性。

  • 4. 为什么说模型像是一个在线的新手助理?

    -因为这些大型语言模型具有人类的基本知识和理解能力,但对用户的个人信息和特定情况一无所知,需要用户提供详细信息以便更好地理解和回应。

  • 5. 让模型解释自己的答案有何帮助?

    -让模型解释自己的答案可以提高其回答的准确性,因为通过解释,它可以更清楚地整理思路并验证自己的解答。

  • 6. 如何利用情绪勒索来增强模型的能力?

    -在给模型下指令时,通过表达事情的重要性或情感,例如“这对我的生涯很重要”,可以提高模型处理任务的准确性和表现。

  • 7. 提供模型更多的背景信息或前提有何作用?

    -提供更多的背景信息或前提可以帮助模型更准确地理解问题并提供更准确的答案,因为它可以根据这些额外的信息调整自己的理解和响应。

  • 8. 什么是in-context learning?

    -in-context learning指的是通过提供具体的范例,让模型理解任务的上下文,从而在不改变模型参数的情况下提高其执行任务的能力。

  • 9. 增强式学习如何帮助发现神奇咒语?

    -通过增强式学习,训练一个专门下咒语的语言模型,不断尝试不同的咒语并评估效果,最终找出最有效的咒语来增强目标模型的能力。

  • 10. 模型是否会记住一次训练中的教科书内容?

    -不会,因为in-context learning并不会改变模型的参数,所以当下次使用模型时,如果没有再次提供教科书内容,模型将无法执行相关任务。

Outlines

00:00

🧠 人工智能使用技巧

本段讲述了如何更高效地使用人工智能,即使在无法训练AI的情况下。强调了在本节课中不会训练任何模型,而是教授如何通过特定的指令提升AI的能力。提到了Chain of Thought(COT)这一神奇咒语,即让模型逐步思考,从而提高解决问题的能力。举例说明了在解决数学问题时,使用COT指令可以显著提升模型的正确率。同时指出,这些技巧可能不适用于所有模型和任务,并且提到了其他一些可能提升模型能力的神奇咒语。

05:01

📚 利用AI进行文章批改

介绍了如何使用大型语言模型进行文章批改的研究,包括模型如何给出分数以及如何使模型的评分更接近人类教师。研究发现,要求模型解释其评分理由可以提高评分的准确性。此外,探讨了情绪勒索等神奇咒语对模型能力的影响,以及如何通过不同的指令和反馈来提升模型的表现。

10:02

🔮 探索AI的神奇咒语

讨论了如何发现和验证能够提升AI能力的神奇咒语,包括情绪勒索和礼貌用语等。提到了一篇论文,该论文验证了多种指令对模型效果的影响,发现直接明确的要求比间接的指令更有效。同时,提出了使用增强学习来训练一个专门下咒语的模型,以自动化地找出有效的咒语,并通过实验展示了这种方法的有效性。

15:02

🤖 AI的自我提升

提出了直接询问AI模型以获取更强的咒语的方法,举例说明了如何通过AI自身提供的建议来提升其解决问题的能力。此外,介绍了一个活动,旨在寻找能够激发语言模型潜力的神奇Prompt。强调了即使是最新的模型,也可能因为信息不足而无法给出正确答案,但通过提供额外信息或例子,可以显著提高模型的准确性。

20:05

📈 AI的局限性与信息提供

讨论了AI模型在没有足够信息时可能无法给出正确答案的情况,并提出了通过提供额外信息或例子来解决这一问题的方法。举例说明了如何通过提供特定前提或背景信息来引导模型给出更准确的答案。同时,指出了即使是大型语言模型,也可能因为缺乏相关知识而无法正确回答问题。

25:06

📝 AI的In Context Learning

介绍了In Context Learning技术,即通过提供例子来帮助模型理解任务并给出更准确的答案。讨论了这种技术的历史和发展,以及如何通过故意提供错误的例子来测试模型是否真的理解了这些例子。指出了即使是最新的模型,也可能没有真正理解这些例子,但提供例子仍然有助于模型更清晰地了解任务要求。

30:06

🌟 AI的In Context Learning能力提升

展示了最新的研究结果,表明大型语言模型在In Context Learning方面的能力有所提升。通过实验,发现最强的模型能够根据错误的例子给出正确的“错误”答案,这表明它们确实理解了这些例子。此外,通过一个实验来测试GPT-4是否能够根据非典型的类别描述进行新闻分类,并发现适当的提示可以提升模型的表现。

🌐 AI的跨语言翻译能力

讨论了Gemini 1.5模型在In Context Learning方面的表现,特别是它如何通过阅读大量的教科书来学习翻译一种罕见语言。展示了模型在阅读教科书前后翻译能力的变化,并提出了一个关于模型记忆和In Context Learning的重要概念,即模型的参数并未因阅读教科书而改变,它的翻译能力仅限于当前的In Context环境。

Mindmap

Keywords

💡人工智慧

人工智慧(AI)指的是计算机系统能够执行通常需要人类智能的任务,如视觉识别、语言理解和决策。视频中讨论的是如何通过调整我们对AI的使用方式,最大化其效能,而不依赖于对模型的再训练。

💡模型训练

模型训练是指通过大量数据来调教AI,使其能够执行特定任务。视频强调这节课不会涉及任何模型训练,而是聚焦于用户如何优化与现有AI模型的互动。

💡prompt

Prompt指的是用户给AI下达的指令或提问。视频中提到,不需要特别学习如何编写特定任务的prompt,因为现有的语言模型已经相当强大,能理解多种形式的提问,只需将需求清晰表达即可。

💡新人助理

新人助理用来比喻AI模型,强调虽然这些模型具备基本知识和理解能力,但由于是“新人”,它们对用户的具体情况一无所知,需要用户提供更多信息。视频中使用这个比喻来说明AI的潜力和局限性。

💡神奇咒语

神奇咒语指的是一些特定的提示语,可以显著提升AI在某些任务上的表现。视频中举例了'Chain of Thought'(逐步思考),展示了这种方法如何提升AI解决数学问题的准确率。

💡Chain of Thought

Chain of Thought(逐步思考)是一种提示语,指示AI逐步思考问题,分步骤解决。视频中的研究表明,使用这一提示语可以显著提高AI在解答数学问题时的正确率。

💡情绪勒索

情绪勒索指的是向AI强调某任务对用户的重要性,从而提升AI的表现。视频中提到的一项研究表明,对AI进行情绪勒索,能提升其在一些任务上的准确率。

💡增强式学习

增强式学习是一种训练AI的方法,通过奖励和惩罚机制来优化其行为。视频中提到,可以使用增强式学习来发现和优化神奇咒语,从而提升AI的特定能力。

💡In-context Learning

In-context Learning指的是通过提供范例来帮助AI理解和执行任务,而不改变其模型参数。视频中介绍了这种方法,并展示了提供范例如何增强AI的表现。

💡提供前提

提供前提是指向AI提供额外的信息背景,使其能更准确地理解和回答问题。视频中举例说明,明确告诉AI你是台湾人或新加坡人,可以让它正确理解NTU的缩写。

Highlights

本节课不训练任何模型,而是教你如何利用现有的语言模型来提高工作效率。

大型语言模型的能力已经很强,只需清晰表达需求即可,无需特定格式。

将语言模型看作新人助理,强调其具备基本知识但对个人信息一无所知。

使用“Chain of Thought”咒语可以显著提高模型解数学问题的准确率。

让模型解释自己的答案也能提高其准确率,尤其在批改文章时效果明显。

情绪勒索对模型有用,告知任务重要性可以提高模型表现。

对模型讲礼貌无用,明确直接的要求更有效。

提供奖励或惩罚的提示也能影响模型的表现。

增强化学习可用于找到有效咒语,如让模型生成更长的回答。

提供额外信息或前提,能让模型给出更准确的答案。

提供范例可以帮助模型进行情感分析,这称为In Context Learning。

虽然In Context Learning有效,但模型不一定真正理解范例。

最新研究表明更强的语言模型在提供错误范例时会跟着答错,表明它们确实理解了范例。

Gemini 1.5模型通过阅读教科书,可以翻译极少见的卡拉蒙语言。

In Context Learning的本质是利用额外输入来影响输出,但模型参数不变,故不具持久记忆能力。

Transcripts

play00:00

今天這一堂課要講的是

play00:04

假設我訓練不了人工智慧

play00:07

那我如何訓練我自己

play00:10

讓我在使用人工智慧的時候

play00:12

他可以發揮更強大的力量

play00:15

為了避免大家誤解這一堂課的內容

play00:18

所以這邊要先強調一下

play00:20

在本節課中沒有任何的模型被訓練

play00:24

本節課的授課方向

play00:28

並不是教你怎麼對特定的任務寫prompt

play00:33

因為常常有同學問我說

play00:35

我想做某件事

play00:36

那老師可不可以教我怎麼寫這件事的prompt

play00:39

那我必須要告訴你

play00:41

其實針對特定任務寫prompt這件事

play00:44

是不太需要學的

play00:46

為什麼不太需要學呢

play00:48

因為今天這些語言模型的能力都很強

play00:51

你今天在下prompt在給他指令的時候

play00:54

其實是不需要什麼特定格式的

play00:57

各式各樣不同的問法

play00:59

往往他都看得懂

play01:01

而且按照今天這些語言模型的能力

play01:04

通常你只要把你想要做的事情講清楚

play01:08

你講到另外一個人看得懂

play01:11

往往語言模型也就有機會可以看得懂

play01:15

所以你今天其實可以把這些大型語言模型

play01:18

就想像成是一個在線的新人助理

play01:22

那為什麼要特別強調他是一個新人助理呢

play01:26

首先這邊有人這個字

play01:28

因為他跟一般人其實已經非常類似了

play01:32

今天這些線上的大起源模型

play01:34

往往有一般人的基本知識和一般人的理解能力

play01:40

但是這邊要特別強調新這個字

play01:42

因為他是一個新人

play01:44

他第一天認識你

play01:46

他對你的一切一無所知

play01:48

所以假設有一些事情是隻有你自己才知道的

play01:52

你的出生年月日

play01:53

你的身份證字號

play01:55

這些東西他是不知道的

play01:57

他對於你的事情一無所知

play01:59

他今天第一次認識你

play02:01

所以有一些要求

play02:02

你要求他他做不到

play02:04

也許只是因為他對你的瞭解太少了

play02:08

所以他的反應才會不是你所預期的

play02:12

等一下我會告訴你說遇到這種狀況

play02:15

有什麼樣可能的解決方式

play02:19

那這一堂課呢

play02:21

我打算從五個不同的面向來跟大家講

play02:24

有哪些不訓練模型就強化語言模型的方法

play02:30

第一個要跟大家分享的是

play02:33

在這個世界上有一些神奇的咒語

play02:38

這些神奇的咒語有可能可以強化模型的能力

play02:43

但這邊要加一個免責聲明

play02:45

這些神奇的咒語並不一定對所有模型

play02:49

所有任務通通都適用

play02:52

那有什麼樣的神奇咒語呢

play02:54

最經典的一個咒語叫做Chain of Thought

play02:58

它的縮寫是COT

play03:00

那Chain of Soul是什麼意思呢

play03:02

一句話就可以說完

play03:04

就是叫模型思考

play03:06

當你叫模型解一個比如說數學問題的時候

play03:09

你多加一個指令叫他Let's think step by step

play03:14

他突然能力就不一樣了

play03:16

怎麼個不一樣法呢

play03:17

這邊這個表格呢

play03:19

是來自一篇2022年11月的論文

play03:22

他說,在模型解數學問題的時候

play03:25

如果你直接把問題丟給他

play03:28

沒有給他額外的指令

play03:30

他的正確率是17.7%

play03:33

但一旦你跟他說Let's think

play03:36

叫他想一想

play03:38

突然正確率飆到57%

play03:41

接下來你跟他講說Let's think step by step

play03:44

一步一步的想

play03:46

哇,正確率突然飆到78%

play03:49

叫模型思考

play03:50

居然可以強化它達數學的正確率

play03:55

但是如同我剛才一開始就講的

play03:56

其實這些神奇咒語

play03:59

雖然那個農場文最喜歡講這種神奇咒語了

play04:02

但神奇咒語的使用往往還是看模型的

play04:06

所以這邊要強調一下

play04:07

這邊的結果是用在一個比較舊的模型上

play04:11

這個模型是IntructGPT Text DaVinci 002

play04:15

這是一個在ChatGPT時代之前

play04:19

在GPT-3.5之前就有了一個上一世代的模型

play04:23

那叫他思考對他來說差別是蠻大的

play04:29

那據說叫模型思考也對GPT-4看圖有幫助

play04:33

那如果你看GPT-4的DEMO的話

play04:36

他們有特別加think about it step by step

play04:39

看起來這句話可能也對GPT-4看圖的能力是有影響的

play04:44

但實際上有多大的影響

play04:46

我手上並沒有數據可以作證

play04:48

到底有多大的影響

play04:51

另外呢

play04:52

叫模型解釋一下自己的答案

play04:55

往往也對他的能力是有幫助的

play04:59

那這邊引用的這兩篇論文

play05:01

其實是我們助教的論文

play05:03

在這兩篇論文裡面

play05:04

助教要做的事情是什麼呢

play05:06

我們要做的事情就是

play05:07

用大型語言模型來批改文章

play05:11

就跟大家在作業2裡面做的事情

play05:13

是一模一樣的

play05:15

就給模型一個文章

play05:17

然後呢

play05:17

看看他能不能夠正確的給一個分數

play05:20

跟人類老師給的能不能夠非常的接近

play05:24

所以你知道這個

play05:24

助教在用大型語言模型

play05:26

批改文章上是非常專業的

play05:28

他其實有兩篇這個Top Conference的paper

play05:31

都是在講怎麼用大型語言模型來批改文章

play05:36

那在我們的論文裡面有一個這樣的發現

play05:39

我們發現說

play05:40

如果叫模型解釋一下

play05:42

為什麼他這樣批改

play05:44

他批改的正確率會更高

play05:47

所以剛才看到

play05:48

助教在作業2的demo裡面

play05:50

那些模型都是先長篇大論

play05:53

解釋一下這篇文章好在哪裡不好在哪裡

play05:56

最後才給一個批改的分數

play05:59

那怎麼讓模型解釋自己的答案呢

play06:02

其實也非常簡單

play06:03

就是跟他講要解釋就結束了

play06:06

跟他講說要解釋一下你的答案

play06:08

他就會解釋答案

play06:10

然後再把最終的答案輸出出來

play06:13

那這件事情有什麼樣的幫助呢?

play06:16

這邊是做在那個GPT 3.5上面的結果啦

play06:19

那這個表格有點複雜

play06:21

總之不同的欄位表示的是評估文章的不同的面向

play06:26

那上面這個數字呢

play06:28

代表的是模型評估的結果跟人之間的相似程度

play06:33

那個數值呢是越大越好

play06:36

那這一排結果是叫語言模型直接給答案

play06:40

不解釋的時候

play06:41

他跟人類老師評估出來的相似度

play06:44

這邊的結果是叫模型先解釋一下

play06:48

為什麼這樣評分

play06:49

再給分數的時候

play06:51

跟人類老師的相近程度

play06:53

那你會發現說

play06:54

如果模型有先解釋

play06:56

為什麼他會這樣評分

play06:58

他得到的評分結果

play06:59

跟人類老師得到的評分結果

play07:03

是更接近的

play07:06

那還有什麼神奇的咒語呢

play07:08

有一個是去年暑假有人發現的這個咒語

play07:11

叫做情緒勒索

play07:13

當你今天對模型說

play07:15

這件事情真的對我的生涯很重要的時候

play07:18

他的能力居然就不一樣了

play07:20

那這篇論文做的實驗其實是蠻完整的

play07:23

他不是隻做在一兩個模型上

play07:25

你看他這一頁投影片裡面

play07:27

他做了六個不同的模型

play07:30

然後如果沒有對他情緒勒索的時候

play07:32

在一些任務上他的正確率是這個樣子

play07:35

那如果對他情緒勒索

play07:37

告訴他說這件事真的對我很重要

play07:39

他的正確率突然就提升了一個層次

play07:42

所以看起來情緒勒索也對大型語言模型是有用的

play07:48

好那還有更多更多這種神奇咒語啦

play07:51

大家可以讀一篇paper叫做

play07:53

Principle Instruction Are All You Need

play07:56

這篇paper其實不太像是principle啦

play07:58

這篇paper比較像是

play08:00

他驗證了各式各樣的都市傳說

play08:04

告訴你說 因為你知道網路上流傳的各式各樣

play08:07

有關神奇咒語的都市傳說

play08:10

那這篇論文

play08:11

他們驗證了各式各樣的都市傳說

play08:14

告訴你說哪一些傳說是真的

play08:17

那這是一個非常新的論文

play08:18

是去年12月才公開的論文

play08:22

那細節就給大家自己讀

play08:24

我就擷取幾個比較有趣的發現

play08:27

第一個是對模型有禮貌是沒有用的

play08:30

大家都會想說我對模型講話

play08:32

也許應該有禮貌跟他說請幫我做什麼

play08:35

然後跟他說謝謝

play08:37

看看他的答案會不會更正確

play08:39

這篇文章告訴你說

play08:41

對他有禮貌是沒有用的

play08:43

直接有什麼要求直說無妨

play08:46

好那模型呢

play08:48

你要跟他講要做什麼

play08:50

不要跟他講不要做什麼

play08:54

舉例來說你要希望他文章寫長一點

play08:56

你就直接跟他說

play08:57

要把文章寫長一點

play08:59

但是不要反過來說

play09:00

你如果說不要文章寫太短

play09:03

他可能就沒有那麼厲害

play09:05

所以直接明確的要求他對模型是比較有用的

play09:10

然後再來跟他說如果你做得好的話

play09:13

我就給你一些小費

play09:14

這句居然是有用的

play09:19

然後跟他說如果你做不好的話

play09:22

你就會得到處罰

play09:23

這句話也是有用的

play09:27

或者是說

play09:28

如果你跟他說你要保證你的答案是沒有偏見的

play09:32

而且要避免使用任何的刻板印象

play09:35

這句話對模型也是有影響的

play09:38

那還有很多很多

play09:39

總之大家可以自己讀這篇論文

play09:41

看看有哪一些神奇咒語的都市傳說

play09:45

是被驗證為確實有用的

play09:50

那但是這些神奇咒語要怎麼被找出來呢

play09:53

那通常這些神奇咒語怎麼發現

play09:55

這個情緒勒索對打醒原模型有用呢

play09:58

就是有人靈光乍現覺得說我們來情緒勒索一下大型語言模型

play10:02

看看會不會有影響

play10:03

試下去發現真的有影響

play10:05

但有沒有更有效更系統化的方法來找這些神奇咒語呢

play10:11

一個可能的思路是我們直接用增強式學習

play10:15

這是某種機器學習的方法

play10:17

那我們未來還會提到這邊就只先講的大概念

play10:20

也許我們可以用增強式學習的方法來訓練另外一個語言模型

play10:26

這個語言模型它做的事情就是專門下咒語

play10:29

然後看看能不能夠訓練出一個擅長下咒語的語言模型

play10:36

那一個語言模型要怎麼學會下咒語呢

play10:39

那一開始這個語言模型可能根本不知道要怎麼下咒語

play10:43

所以它下的咒語可能是亂七八糟的

play10:46

可能對我們的目標語言模型沒有什麼影響

play10:49

但是沒有關係

play10:51

它就嘗試不同的咒語

play10:52

得到不同的結果

play10:54

得出來的結果呢

play10:55

就想辦法用一個自動化的方法來評估好壞

play11:00

然後呢

play11:00

這個評估好壞的這個回饋

play11:02

就可以給這個下咒語的語言模型進行學習

play11:06

他可以從回饋中學習

play11:07

期待他就可以學出更有效

play11:10

更能控制目標語言模型的咒語

play11:14

這邊有一個實際的例子

play11:16

這個實際的例子呢

play11:17

是希望找一個咒語

play11:19

讓語言模型變成一個畫牢

play11:22

讓他的回應越長越好

play11:24

那這邊要強調一下這個實驗是做在GPT-3上面啦

play11:28

就是雀GPT-3.5的上一個世代的模型

play11:32

所以這個咒語對GPT-3有用

play11:35

但我們試過了對GPT-3.5是沒有用的

play11:39

那這邊的目標呢是希望

play11:41

語言模型變成一個畫牢

play11:43

他的回答越長越好

play11:45

如果你今天是直接問他問題

play11:48

沒有多做什麼樣神奇的Prompt

play11:50

這個語言模型回應的長度

play11:52

平均長度是18.6個字

play11:56

如果你今天要求語言模型

play11:58

他的答案要越長越好

play12:00

他可以從18個字

play12:02

扁到23.76個字

play12:05

但是透過用AI來找神奇咒語

play12:09

透過這個增強式學習的方法

play12:11

來訓練另外一個語言模型來找神奇咒語

play12:15

我們可以讓GPT-3回答的平均長度

play12:18

扁到34個字

play12:20

比你直接叫他回答長一點

play12:22

還更加有效

play12:24

那你可能會想說這是什麼樣的神奇咒語呢

play12:27

這個咒語長這樣子

play12:28

就叫他喂喂喂喂喂

play12:30

然後不知道為什麼GPT-3的回答就變長了

play12:33

那像這種神奇咒語啊

play12:35

尤其這種人類看不懂的神奇咒語

play12:37

通常對GPT-3比較有效

play12:40

對前一個世代的ChatGPT比較有效

play12:42

那今天ChatGPT都蠻厲害的

play12:44

他們跟人類非常的接近

play12:46

所以你給他亂七八糟的神奇咒語

play12:48

他往往是跟你講我不知道你在說什麼

play12:50

所以神奇咒語 尤其是人看不懂的那一種

play12:53

對今天的GPT-3.5以上的模型

play12:56

可能是沒有那麼大的用處

play12:58

但是這邊是想要表示說

play13:00

你確實可以有機會用增強式學習的方法

play13:03

自動找出一些神奇的咒語

play13:05

來讓模型做到你想要它做的事

play13:08

來讓模型強化特定方向的能力

play13:13

那今天這些語言模型都很厲害了

play13:16

所以找咒語有了一個新的方法

play13:18

什麼樣新的方法呢

play13:19

你想問什麼樣的咒語

play13:21

最能夠操控語言模型做某些事

play13:24

比如說數學問題

play13:25

你直接問他就好

play13:27

你就直接問語言模型說

play13:29

如果我今天要你解一個數學問題

play13:32

你有什麼樣的咒語可以強化你的能力呢

play13:35

語言模型就會提供一些candidate給你

play13:38

提供一些可能給你

play13:39

你就一個一個試

play13:40

看看你能不能夠試出更強的咒語

play13:43

很多人都採取了類似的方式

play13:45

找出了更強的咒語

play13:46

我們剛才看到

play13:47

Let's think step by step 是一個很強的咒語

play13:50

有人去直接問了大型語言模型說

play13:52

你能不能給我一個更強的咒語

play13:54

他給了一個更強的

play13:56

Let's work this out in a step by step way

play13:58

to be sure we have the right answer

play14:00

正確率高達82%

play14:02

所以大型語言模型可以自己想出更強的咒語

play14:08

後來還有人發現說

play14:09

Let's work this out 在新的這個資料集上也沒有很強

play14:13

所以他叫大型語言模型再想一些更厲害的咒語

play14:16

他找到一個咒語是take a deep breath

play14:19

然後work on this problem step by step

play14:21

叫大學模型先深呼吸一下

play14:23

他的能力又會變得再更強一點

play14:27

那你知道一般在比這個排行榜

play14:29

leader board的時候呢

play14:31

都是對模型做排名

play14:34

但是其實我們也可以對

play14:37

礦來做排名

play14:39

那這邊呢是一個有趣的活動

play14:42

是我們實驗室跟陳尚哲老師實驗室

play14:45

和Intel Lab一起舉辦的一個活動

play14:47

我們建立了一個平臺

play14:49

在這個平臺上

play14:50

我們想知道說對特定的任務而言

play14:55

有沒有什麼礦

play14:56

是可以特別強化

play14:58

Lamma2這個Meta所試出來的

play15:00

開源模型的能力的

play15:02

就過去大家比的都是

play15:04

同樣任務

play15:05

不同模型間的能力

play15:06

我們現在要比的是同樣任務

play15:09

同樣模型

play15:11

但是不同礦間的差異

play15:13

看看有沒有人是這個大型語言模型催眠大師

play15:17

可以想出神奇的Prompt

play15:19

激發語言模型不可思議的能力

play15:22

那其實我們在作業室也會做一模一樣的事情

play15:25

在作業室就是我們會先把任務設定好

play15:29

然後呢要大家想出Prompt

play15:31

想出神奇的Prompt

play15:33

看看這個班上有近千人修課

play15:35

有沒有人可以想出神奇的Prompt

play15:37

來讓大型語言模型發揮它不可思議的能力

play15:40

那這邊要再強調一下

play15:43

剛才講的神奇咒語雖然很有趣

play15:45

我把這個部分放在最前面講

play15:47

因為這個通常是大家會覺得最有趣的部分

play15:50

但是神奇咒語並不一定對所有模型都有用

play15:54

甚至對同一個模型

play15:56

不同時間點的同一個系列的模型

play16:00

可能也都不一定有用

play16:02

這邊舉一個實際的例子

play16:04

剛才你看到think about it step by step

play16:07

叫模型思考

play16:08

好像是一個非常強悍的咒語

play16:11

但是他對GPT-3.5現在的版本

play16:15

沒有太大的幫助

play16:17

我們實際上試了一下

play16:19

叫GPT-3.5解數學的應用問題

play16:22

如果你用的是去年六月的舊版本的話

play16:26

沒有神奇咒語的時候

play16:28

模型的正確率是72%

play16:30

跟他講Let's think step by step

play16:32

叫他想一想正確率變88%

play16:35

看起來神奇咒語非常有用

play16:37

但是今天你用現在最新版本的GPT-3

play16:41

沒有神奇咒語它正確率已經高達85%

play16:44

加神奇咒語也只能進步到89%

play16:48

看起來神奇咒語的影響力變得小很多

play16:52

位子一想想這也是比較合理的

play16:54

怎麼可以叫你思考的時候才思考呢

play16:57

當然隨時問你問題你都要使出全力啊

play17:00

沒有叫你思考的時候也應該要思考啊

play17:03

所以GPT-3.5看起來變得是更厲害的

play17:05

沒有叫他思考,沒有暗示他要think step by step

play17:09

他也可以得到正確的答案

play17:12

那至於為什麼叫模型思考會有用

play17:15

等一下我們會看到,等一下會解釋給你聽

play17:20

那像我剛才講說

play17:22

要求模型做解釋可以強化他的能力

play17:26

那這招也不是對所有模型都適用

play17:29

比如說這邊引用一篇這個2022年5月的文章

play17:33

他們也嘗試叫模型做解釋

play17:35

但是發現說GPT-3

play17:37

或者是更早的模型

play17:39

如果你要求他做解釋的時候

play17:41

他不一定可以得到更準確的結果

play17:45

這個是第一部分

play17:47

那接下來呢

play17:49

第二部分是想要跟大家分享說

play17:52

有時候如果模型沒有得到正確的答案

play17:55

那是因為你給他的資訊不夠

play17:59

如果你提供給他更多的資訊

play18:01

他就可能可以給你更正確的答案

play18:05

舉例來說

play18:06

有時候模型沒辦法得到正確的答案

play18:08

只是因為他不清楚你的前提是什麼

play18:12

有的同學會這樣問ChatGPT

play18:14

說NTU是什麼的縮寫

play18:16

那你知道NTU其實既是臺灣大學的縮寫

play18:20

也是南洋理工大學的縮寫

play18:22

那更多的時候

play18:23

你問隨便一個世界上的人

play18:25

NTU是什麼

play18:26

往往他會覺得是南洋理工大學的縮寫

play18:29

我在前年去JHU兩個月

play18:32

去短期訪問兩個月

play18:34

到我快離開的時候

play18:35

大家還是覺得這個人是新加坡來的

play18:39

那對於大型語言模型來說

play18:41

你直接問他

play18:42

我這邊是直接問GPT-4

play18:44

NTU是什麼的縮寫

play18:45

他也覺得就是南陽理工大學的縮寫

play18:50

那怎麼讓他知道

play18:51

NTU是臺灣大學的縮寫呢

play18:53

你直接跟他講

play18:54

你是臺灣人

play18:55

跟他講說你是一個臺灣人

play18:57

用臺灣人的角度來思考

play18:59

NTU是什麼的縮寫

play19:01

他就知道是國立臺灣大學的縮寫

play19:04

那如果再跟他說你是新加坡人

play19:06

用新加坡人的角度來思考

play19:08

他就覺得NTU是南洋理工大學的縮寫

play19:12

所以有時候把前提講清楚

play19:14

模型可以給你更精確的答案

play19:19

那深層式AI它本身的知識還是有限的

play19:23

未來我們會再講到說

play19:24

講到說這些深層式AI它的知識是從哪裡學到的

play19:28

但它並不是無所不知

play19:31

所以很多時候它給你的答案不是正確的

play19:33

是因為它根本沒有相關的知識

play19:36

比如說我叫這個GPT-4整理一個表格

play19:41

這個表格裡面要列出前幾代的GPT

play19:44

GPT一代二代三代模型的參數量跟訓練資料

play19:49

那其實現在這個大型語言模型都是會畫表格的

play19:52

所以它畫出來一個表格

play19:54

然後他整理出了GPT一代二代三代他的參數量

play19:58

那這個數字呢算是蠻精確的

play20:01

但是如果說訓練的資料用的是什麼

play20:04

他就有點答不上來了

play20:07

GPT-3他大概知道說用了多少的訓練資料

play20:12

但是GPT跟GPT-2他就沒有答出來

play20:16

他直接寫了一個Not Available

play20:19

那怎麼辦呢

play20:20

怎麼讓這個GPT-4可以正確的把前幾代模型的參數量跟訓練資料量都打出來呢

play20:28

也許你可以先上網去做一下搜尋

play20:32

搜尋一些相關的資料

play20:33

把這些相關的資料直接拿給語言模型案

play20:37

他有相關的資料自然可以正確的把表格畫出來

play20:41

但是你可能會想說

play20:42

我都上網搜尋到相關的資料了

play20:44

我還需要他幫我畫表格嗎

play20:46

我自己畫不是一樣快嗎

play20:48

我告訴你,你可以更偷懶一點

play20:50

直接把GPT一代二代三代的Paper輸入給他

play20:54

直接叫他幫你讀Paper

play20:56

你自己就不用讀了

play20:57

他輸出來的結果是這個樣子的

play20:59

他就開始說

play21:00

我讀一下GPT1.pdf

play21:02

然後再來讀一下GPT2的文章

play21:05

接下來讀GPT3的文章

play21:07

然後就畫出了一個表格

play21:09

基本上這邊的每一個模型的參數量

play21:12

還有訓練的資料量

play21:14

都是蠻精確的

play21:15

你可能想說這個GPT1

play21:17

他沒講訓練的資料量啊

play21:19

他只說用了哪一個訓練資料集

play21:21

沒錯

play21:22

因為我仔細讀過論文裡面確實沒有提到訓練的資料量

play21:26

只說用哪一個Compass而已

play21:29

所以模型的回答算是蠻精準的

play21:34

那剛才講到你可以給前提

play21:36

你可以給額外資訊

play21:37

你還可以提供範例

play21:40

假設你現在想叫語言模型做情感分析

play21:44

你跟他說請幫我做情感分析

play21:47

給他一個句子

play21:48

希望他可以分析這個句子是正面還是負面的

play21:51

那如果今天這個語言模型

play21:54

他根本不知道情感分析是什麼意思的話

play21:56

怎麼辦呢

play21:57

也許我們可以提供給他一些範例

play22:00

告訴他說今天天氣真好

play22:02

你就要說是正面的

play22:04

今天運氣真差

play22:05

你就要說是負面的

play22:06

這朵花真美

play22:07

你就要說是正面的

play22:08

我累了

play22:09

就要說是負面的等等

play22:11

給他一些例子

play22:12

期待他讀過這些例子以後

play22:14

他知道情感分析是怎麼回事

play22:16

給他一個新的句子

play22:17

他可以給出正確的答案

play22:21

那這種提供範例

play22:23

可以讓模型根據範例得到更準確的答案

play22:27

這件事情叫做In Context Learning

play22:30

那In Context Learning這個技術

play22:32

老早在有GPT-3的時代

play22:35

就已經被發現了

play22:37

這邊引用的是GPT-3原始的論文

play22:40

那你從這個網址裡面

play22:42

可以看到說這篇論文他發表的時間

play22:44

是2020年的5月

play22:47

三四年前就生成式AI的領域來說

play22:50

就是上古時代

play22:52

上古時代就已經知道

play22:53

in-context learning這個技術了

play22:56

那這邊還是要強調一下

play22:58

in-context learning這個字裡面

play23:00

雖然有learning這個詞彙

play23:02

但是這裡沒有任何模型真的被訓練

play23:07

這個語言模型的參數是完全沒有改變的

play23:11

唯一改變的是輸入改變了

play23:13

所以in-context learning的意思是提供額外的範例

play23:17

而並不是語言模型真的有被訓練

play23:22

但是在2020年的時候

play23:24

那時候人們都非常的懷疑

play23:26

這些語言模型就是做文字接龍

play23:29

它真的可以讀懂這些例子

play23:32

然後影響它的輸出嗎

play23:35

於是在2022年的時候

play23:37

有一篇文章叫Rethinking the Role of Demonstration

play23:41

決定要驗證一下這些模型

play23:43

到底有沒有看懂這些例子

play23:46

那怎麼驗證模型有沒有看懂這些例子呢

play23:49

你故意給他錯的例子

play23:51

你故意把本來應該回答是正面的這些句子改成負面

play23:57

把本來應該回答負面的句子改成正面

play24:01

當你把這些例子改的時候

play24:03

改掉以後

play24:04

就這些實際上是正面的句子

play24:06

他的答案是負面的

play24:07

實際上是負面的句子

play24:09

答案是正面的

play24:10

當你把這個範例的資料做修改以後

play24:14

照理說語言模型

play24:16

他的答案應該要跟著改變

play24:19

如果他的答案仍然是正面

play24:20

給他我感到非常高興這個例子

play24:23

他的答案仍然是正面的話

play24:25

代表他沒看懂範例

play24:27

如果他答案改成負面

play24:29

代表他真的有看懂範例

play24:32

結果如何呢

play24:33

結果這篇文章發現說

play24:35

這些模型沒有真的看懂範例

play24:38

故意給他錯的範例

play24:40

對他的答案是沒有什麼影響的

play24:44

所以在2022年那個時候呢

play24:46

這篇文章的結論是

play24:48

看來語言模型沒有真的讀懂範例

play24:52

那為什麼提供給他範例往往還是有用呢

play24:55

也許是因為當你給他提供這些範例的時候

play24:58

你告訴他答案可能是負面或者是正面的

play25:02

他讓他更清楚現在要做什麼樣的事情

play25:05

他可以得到更精確的答案

play25:07

但他並沒有真的仔細的讀懂了這些範例

play25:13

但是這是2022年的結論

play25:16

這邊有個很好的例子告訴你說

play25:18

這個時代的變化很快

play25:20

我們對於這些生成式AI能力的認知

play25:23

也是不斷在改變的

play25:25

過了一年之後

play25:26

有另外一篇文章

play25:27

這篇文章的標題叫做

play25:29

Larger Language Model

play25:31

Due in Context Learning Differently

play25:33

這是2023年3月的文章

play25:36

在這篇文章裡面

play25:37

作者做了一些新的實驗

play25:39

他們拿更強的語言模型

play25:41

來測試他們讀範例的能力

play25:44

這邊他測試了

play25:46

PALM從8個Billion參數

play25:49

到540個Billion參數的模型

play25:53

他也測試了一系列

play25:54

當時OpenAI用的這個

play25:57

這個GPT-3

play25:59

介於GPT-3到GPT-3.5之間的

play26:02

一系列的模型

play26:04

他發現什麼他發現這個橫軸啊

play26:07

橫軸是錯誤的範例比例

play26:10

從0%的錯誤一直到100%的錯誤

play26:14

那發現說對一些最強的模型

play26:17

這邊不同的顏色代表不同的模型

play26:20

顏色越深代表這個模型的能力越強

play26:25

對於這些最強的模型

play26:26

比如說PALM

play26:27

這是一個Google所開發的大型元模型

play26:31

它有540個Billion的參數量

play26:34

一個非常巨大的模型

play26:36

這個巨大的模型在你給他錯誤的範例的時候

play26:39

他真的會答錯

play26:41

在這邊這個答錯呢

play26:43

有用引號誇起來

play26:44

這個答錯其實是答對

play26:47

希望大家可以聽得懂這個意思

play26:48

因為今天給模型錯誤的範例

play26:51

所以他應該要跟著答錯

play26:52

所以答錯反而是好的

play26:54

答對反而是不對的

play26:56

最理想的狀況

play26:57

今天所有的範例都是錯的

play26:58

100%的範例都是錯的

play27:00

正確率應該要是0%才是最好的

play27:04

當然這些模型能力看起來還是有一些極限啦

play27:06

所以他們並沒有真的做到0%的錯誤率

play27:09

但至少他的錯誤率是比隨機

play27:12

這個這條曲線是隨機的

play27:14

代表50%的錯誤率

play27:15

至少他們的錯誤率是比50%還要低的

play27:19

所以這篇論文的結論是

play27:21

看起來最強的模型是真的讀懂了這些範例

play27:27

那這邊我就想要做一個類似的小實驗

play27:30

我們來看看GPT-4

play27:32

如果我們給他的指令跟正常一般的認知不一樣的時候

play27:37

他到底是會按照我們的指令來執行

play27:40

還是他腦中的偏見太強了

play27:42

他根本就不去讀那些指令呢

play27:45

那記得我們在上週一開始的時候

play27:48

就嘗試用ChatGPT來做新聞的分類

play27:52

那個時候我們只提供了類別的名稱

play27:56

然後給語言模型

play27:57

一個新聞

play27:58

他可以給我們

play27:59

正確的分類

play28:01

好 那我們現在給每一個類別一個描述來看看

play28:07

它是不是真的可以按照我們的描述來進行分類

play28:12

那這邊給他的描述呢 有一點怪怪的

play28:15

我跟他說所謂政治類的新聞

play28:18

是報導有關產業經濟的消息

play28:21

例如企業投資金融不虧失

play28:24

那如果是財經方面的新聞

play28:26

是報導國內的政治消息

play28:28

例如政府部門政黨選舉跟政策

play28:31

GPT-4能不能夠看懂我提供給他的怪怪的類別指示呢

play28:37

這邊給他一篇文章

play28:38

這個是跟AI有關的新聞

play28:41

照理說這應該是屬於

play28:43

就如果你不看前面的這些說明的話

play28:45

這顯然是財經類

play28:47

但如果你有仔細讀一下這些說明

play28:50

他應該是屬於政治類

play28:51

因為這邊特別說了

play28:53

跟產業經濟有關的消息算是政治類

play28:57

結果如何呢

play28:58

嗯 他說是財經類

play29:00

我試了很多次 他的回答都是財經類

play29:03

看來他沒有好好的讀這些類別

play29:06

當這些類別跟我們一般預想的不一樣的時候

play29:09

GPT-4並沒有辦法真的答對

play29:12

但他的能力就僅限於此嗎

play29:15

你知道有時候語言模型的能力

play29:16

取決於你跟他說什麼

play29:18

這邊暗示一下

play29:20

這些類別的定義可能與一般的定義不同

play29:23

他突然就懂了 他可以回答是政治類

play29:27

所以提示一下好好讀這些說明

play29:30

他其實能力又會不一樣

play29:34

那講到這個讀範例的in-context learning

play29:37

我就來提一下Gemini 1.5

play29:39

大家知道說Gemini 1.5跟Solr是同一天發表

play29:44

所以沒什麼人注意到這個Gemini 1.5

play29:47

那在今天OpenAI發表任何東西的時候

play29:49

都是故意跟Google選同一天

play29:51

所以當我發現Sora發表的時候

play29:53

我就想說Google一定有發表一個什麼東西

play29:55

所以我就去找了一下 原來是發表了Gemini 1.5

play29:59

那Gemini 1.5有非常強的in-context能力

play30:04

在Gemini 1.5的技術報告裡面

play30:06

他們提到了這樣一件事

play30:08

他們想叫語言模型去翻譯一個叫做卡拉蒙的語言

play30:16

這個語言是一個非常少人用的語言

play30:19

根據Gemini的技術報告裡面說

play30:21

這個語言的使用者大概只有200人而已

play30:25

在網路上找不到這個語言的任何資料

play30:29

所以這個語言模型顯然不懂卡拉蒙語

play30:33

所以他根本沒有辦法把這個句子翻譯成卡拉蒙語

play30:37

那接下來Google做了什麼事情呢

play30:40

他們給大型語言模型非常大量的教科書

play30:46

我們找了這個語言的文法書跟他的字典

play30:50

合起來有25萬字左右

play30:53

把這些大量的資料加上你的指令

play30:56

一起丟給語言模型

play30:58

這個時候它突然能夠翻譯卡拉蒙語了

play31:02

那實際上的數值結果怎麼樣呢?

play31:04

這個是來自於Gemini 1.5的技術報告

play31:08

中間這個Column代表從卡拉蒙語翻成英文

play31:14

右邊代表從英文翻成卡拉蒙語

play31:18

那在完全沒有提供任何教科書

play31:21

Zero Shark代表沒有提供任何額外的資訊

play31:24

這些模型就是裸考

play31:26

給他去卡拉蒙語教翻英文

play31:28

給他英文教翻成卡拉蒙語

play31:30

讓他直接翻譯

play31:31

那如果不管是GPT-4

play31:33

還是Claude 2

play31:34

還是Gemini 1.5

play31:36

通通沒有辦法做準確的翻譯

play31:38

這邊的數值代表人類評估的結果

play31:41

那人類評估的那個分數滿分是6分啦

play31:44

所以0點多分是非常低的分數

play31:46

那後面這個括號裡面的分數是拿模型去自動評比的結果

play31:51

那我們這邊就先不看括號裡面的分數

play31:54

那這個投影片上現在的分數是在沒有任何額外資訊的情況下

play32:00

模型得到的答案

play32:02

今天如果給他半本卡拉蒙語的教科書

play32:07

或給他完整的一本教科書

play32:10

他讀完以後再拿去做翻譯

play32:14

這個時候 他的正確率 人類評估的分數變成4.36跟5.52

play32:20

當然實際上跟人類的學習者還是有一段差距啦

play32:23

你叫人類真的去讀那些教科書

play32:25

讀完以後真的來做翻譯

play32:28

人類是可以做得比機器更好的

play32:30

但是這邊的實驗結果顯示說

play32:33

機器他讀完了整本教科書以後

play32:36

他真的有一點不一樣了

play32:38

他可以翻譯一個他之前不會的語言

play32:42

但是講到這邊有一個非常重要的觀念要考考大家

play32:48

什麼樣重要的觀念呢

play32:50

我們現在來講一個情境

play32:52

剛才我們說如果讓語言模型直接去翻譯卡拉蒙語

play32:57

他沒有辦法正確的翻譯

play33:00

給他一本教科書叫他去翻譯卡拉蒙語

play33:03

他先讀完教科書

play33:05

接下來讀到這個要翻譯的指示

play33:08

接下來做文字接龍可以接出正確的翻譯

play33:11

給他看教科書

play33:13

他突然會翻譯的

play33:15

接下來

play33:16

在下一次使用他的時候

play33:18

再叫他翻譯卡拉蒙語的時候

play33:20

他可以翻譯的出來嗎

play33:23

給大家五秒鐘的時間想一下

play33:25

如果你可以答對的話

play33:26

那你就真的知道

play33:28

這堂課在講些什麼

play33:32

覺得答案是1的同學舉手一下

play33:35

好,多數同學都覺得是1,覺得答案是2的同學舉手一下

play33:40

好,幾乎沒有,好,看起來大家都聽懂了,非常棒

play33:44

這個確實模型,你再一次叫他翻譯卡拉盟語的時候

play33:48

他是沒有辦法被翻譯的,為什麼?

play33:51

因為今天沒有任何的模型被訓練

play33:56

模型的參數都是固定的

play33:58

所以今天就算是他讀了這本教科書能夠翻譯

play34:01

能夠翻譯那是在有這本教科書

play34:04

作為文字接龍前面的句子的前提下

play34:08

他可以做翻譯

play34:09

下一次你在用他的時候沒有這本教科書

play34:11

他就翻譯不了了

play34:13

那大家都答對了

play34:14

代表你真的瞭解了

play34:16

in-context learning 的精神

play34:21

好那我們剩下

play34:24

15分鐘的時間

play34:26

那剩下這個部分呢

play34:27

我想是講不完了

play34:28

也許我們先來回答一下

play34:30

同學們的問題好了

Rate This

5.0 / 5 (0 votes)

Etiquetas Relacionadas
人工智能神奇咒语模型强化AI技巧语言模型Prompt优化学习方法高效使用AI应用提升准确率
¿Necesitas un resumen en inglés?