從零開始學習思維鏈:讓AI更聰明的技巧

更新於 發佈於 閱讀時間約 8 分鐘

別再只會亂下Prompt了啦!學會思維鏈(Chain Of Thought),不論你的工作是軟體工程師、PM,掌握思維鏈都能大幅增加你的生產力,而且有機會能解構複雜問題,把大問題拆解成小問題再逐一擊破!

我們都知道大型語言模型可能會有幻覺的問題,常常是在一本正經的說幹話,但你知道其實有一種技術,可以在不改變模型參數量的前提下增強模型的推理能力,避免大多數的幻覺問題,一說幹話就有可能被你馬上發現,而且方法非常簡單!今天要來深入解析思維鏈(Chain of Thought)的技術。讓讀者一文搞懂這個神奇又簡單的技術。

等待模型輸出的時候你是不是也既期待也怕受傷害,其實你的prompt寫得好不好,對模型的輸出有巨大影響,欠萬不能小看Prompt的重要性,只要在你的prompt最後面加上"Think step by step"就能讓模型的推理能力瞬間提升喔!

什麼是提示工程(Prompt Engineering)

提示工程是我們在使用生成式人工智慧時,除了直接告訴AI我們的問題與想要的結果以外,另外對AI進行引導。本質上生成式人工智慧是根據你的Prompt,透過機率選出下一個最有可能出現的詞,所以提示工程就是有系統的設計我們的Prompt去引導AI給出我們想要的結果。

思維鏈(Chain Of Thought)的核心概念

思維鏈(CoT)是 Prompt Engineering 的一種技巧,思維鏈是一種專門用來處理需要多步驟推理的複雜問題提示設計方法。讓 AI 在回答問題時,逐步展開自己的推理過程,而不是直接跳到最終答案。

想像一下,你問一個數學問題:「一個籃子裡有3個蘋果,後來又放進去2個,現在有幾個?」如果直接回答,AI 可能會說:「5個。」 但如果用 CoT 方法,AI 會這樣回答: 「籃子裡原本有3個蘋果,後來又放進去2個蘋果。3加2等於5,所以現在有5個蘋果。」

這種方式就像是讓 AI 把腦子裡的計算過程用語言表達出來。

別急著走開,讓我們看看一些實驗數據

光是嘴上說說思維鏈多厲害好像不夠有說服力,讓我們來看看數據吧!

在Chain-of-Thought Prompting Elicits Reasoningin Large Language Models論文中,作者們用GSM8K這個數據集,GSM8K是高品質數學推理數據集,主要用於訓練和評估人工智慧模型在數學問題解決上的能力。該數據集包含多個日常生活相關的數學問題,能夠測試模型的邏輯推理與計算能力。而PaLM是Google開發的大型語言模型,我們可以看到採用思維鏈後,模型的答對機率提升很多。


raw-image


值得注意的是,思維鏈在越大的模型上表現得更好,見下圖

Y軸為模型能力,X軸為模型參數量,參數量越大時模型能力提升更多


raw-image


最新的GPT-4 o1 Performance

最新發表的GPT-4 o1 就是內部採用了思維鏈與其他技術,大幅增強了模型面對複雜問題的推理能力,連OpenAI都在採用Chain Of Thought增強他們的模型,你就知道這個方法有多強大了吧!接下來我們來看看實驗數據。


raw-image

註:同一個問題,分別測試只問一次、64次、1000次,取最優回答作為最終答案。

AIME(美國奧數選拔賽的數學題)

  • 1次:74%(11.1/15分)
  • 64次:83%(12.5/15分)
  • 1000次:93%(13.9/15分)
  • 這個成績足以進入全美前500名


GPQA Diamond(博士生級別的物理、化學和生物問題)

  • 超越了人類博士的表現
  • 1次:77.3%(答題正確率)
  • 64次:78%(答題正確率)
  • 在物理學科表現特別突出,達到92.8%的正確率


程式能力表現

raw-image

在資訊奧林匹亞競賽中,原本的gpt4o排名PR11,經過思維鏈調整過後的o1排名PR89


為什麼 CoT 很重要?提供了什麼價值

  1. 提升準確性: 通過將複雜任務分解為小步驟,確保模型按邏輯順序思考,減少遺漏重要中間步驟的可能性。特別適用於數學問題解決、數據分析等多步驟推理任務。
  2. 減少偏見: 要求模型提供透明的推理步驟,有助於及早發現和糾正偏見假設。這在法律推理、金融預測等領域特別重要,能產生更公平、平衡的結果。
  3. 類人決策過程: 模仿人類的思維方式,按步驟處理問題,使決策過程更容易理解。對商業分析、戰略規劃等需要理解決策原因的領域特別有用。
  4. 減少幻覺: 通過確保每個推理步驟的邏輯一致性,降低模型產生錯誤或不相關信息的可能性。這對醫療保健、法律分析等高風險領域尤為重要。
  5. 領域適應性強: 可以靈活應用於各種領域,從簡單的數學問題到複雜的文本和圖像任務,在 AI 輔導、法律研究、醫療診斷等領域都能發揮作用。


什麼時候應用思維鏈才有用?

應用思維鏈有三個前提,只有這三個假設同時被滿足時,使用思維鏈技巧才會有顯著的效益提升(推理能力的提升)。

  1. 你的問題足夠複雜,需要多步驟推理
  2. 模型的參數夠多(參數在100B以上時,才會有顯著的效果)
  3. 增加模型參數對表現沒有明顯提升時


如果你只是對模型提問很簡單的問題,用思維鏈不會提升表現。這個部分應該蠻直觀的,大型語言模型面對簡單的問題時,實驗表明證明了即使不需要多步驟推理模型的表現就很好了。


思維鏈的特性與優勢

  1. 思維鏈允許模型將複雜問題分解為多個步驟,透過拆解成多步驟,可以視情況為特別複雜的某步驟分配額外的運算資源。
  2. 思維鏈打開了黑盒子,展示模型的推理過程,讓我們可以基於專業知識與常識判斷模型是否產生幻覺。
  3. 思維鏈推理可用於數學應用題、常識推理和符號操作(symbolic manipulation)等任務,理論上可以適用於任何人類可以通過語言解決的任務。
  4. 只要在prompt中加上一些額外的簡單提示,就能夠在現有大型語言模型內引導模型使用思維鏈的推理方式。




總結

希望讀者看完這篇文章,在你下prompt的時候可以多想一下,要應用思維鏈不難,以Zero-Shot Chain of Thought來說,只要在你的prompt最後那邊加上"Think step by step"模型就會自動應用思維鏈的方法輸出答案了。如果你手上已經有一些範例了,你可採用Few-Shot Chain of Thought,給他幾個你自己的範例,模型的輸出會更好。


參考資料:

  1. https://openai.com/index/learning-to-reason-with-llms/
  2. https://yourgpt.ai/blog/general/chain-of-thought-prompting?t
  3. Chain-of-Thought Prompting Elicits Reasoningin Large Language Models
  4. https://aws.amazon.com/what-is/prompt-engineering/
留言
avatar-img
留言分享你的想法!
avatar-img
Gary的小小宇宙
15會員
8內容數
大家好我是Gary,這裡是一個分享投資理財、程式語言、個人成長、心靈健康、讀書心得的地方。
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
本文介紹「思維鏈」(Chain of Thought,CoT)的提問技巧,探討其如何影響ChatGPT等生成式AI工具的表現。由於「思維鏈」能使機器人模仿人類推理的過程,因此,建議在使用大型語言模型進行提示工程時加入類似「讓我們循序思考」等提示詞,以提高多步驟問題的解決能力。
Thumbnail
本文介紹「思維鏈」(Chain of Thought,CoT)的提問技巧,探討其如何影響ChatGPT等生成式AI工具的表現。由於「思維鏈」能使機器人模仿人類推理的過程,因此,建議在使用大型語言模型進行提示工程時加入類似「讓我們循序思考」等提示詞,以提高多步驟問題的解決能力。
Thumbnail
本篇文章是 以ChatGPT翻譯華頓商學院教授Ethan Mollick的文章,並且稍微加上修飾而來的,是一篇相當好的該如何使用AI的引言,分享給各位。 我們學到的就是,只要使用AI,你就會學會如何使用AI。你只需大量使用AI,直到你弄清楚它的優點和缺點,就可以成為你領域的AI應用專家。
Thumbnail
本篇文章是 以ChatGPT翻譯華頓商學院教授Ethan Mollick的文章,並且稍微加上修飾而來的,是一篇相當好的該如何使用AI的引言,分享給各位。 我們學到的就是,只要使用AI,你就會學會如何使用AI。你只需大量使用AI,直到你弄清楚它的優點和缺點,就可以成為你領域的AI應用專家。
Thumbnail
在生成式AI與大型語言模型(Large Language Model, LLM)蓬勃發展下,有許多工具可以幫助我們學習與撰寫程式,這篇文章提供了實作範例與一些經驗,分享如何使用ChatGPT(免費的GPT-3.5)協助程式語言的學習,並且完成屬於自己的程式。
Thumbnail
在生成式AI與大型語言模型(Large Language Model, LLM)蓬勃發展下,有許多工具可以幫助我們學習與撰寫程式,這篇文章提供了實作範例與一些經驗,分享如何使用ChatGPT(免費的GPT-3.5)協助程式語言的學習,並且完成屬於自己的程式。
Thumbnail
這篇文章詳細說明了「思考鏈」的概念以及如何應用在設計語言模型客服助理的過程中。使用分隔號和角括弧以設定步驟、區隔訊息和提供填充空間,這種方式可使語言模型更有效地處理和回應使用者的諮詢,包括在產品清單中找不到的諮詢。
Thumbnail
這篇文章詳細說明了「思考鏈」的概念以及如何應用在設計語言模型客服助理的過程中。使用分隔號和角括弧以設定步驟、區隔訊息和提供填充空間,這種方式可使語言模型更有效地處理和回應使用者的諮詢,包括在產品清單中找不到的諮詢。
Thumbnail
前一篇我們有提到「【Generative AI - Prompt篇】Ep.3 讓AI身歷其境的角色提示法」如何催眠AI成為專家,藉著該提示技巧讓AI可以針對該領域進行專業的回答,但…這還不夠,我們還希望AI可以更強大,可以根據我們設計的範本,進行相同規格的輸入與輸出。 我們在前面幾個篇章也玩過一些P
Thumbnail
前一篇我們有提到「【Generative AI - Prompt篇】Ep.3 讓AI身歷其境的角色提示法」如何催眠AI成為專家,藉著該提示技巧讓AI可以針對該領域進行專業的回答,但…這還不夠,我們還希望AI可以更強大,可以根據我們設計的範本,進行相同規格的輸入與輸出。 我們在前面幾個篇章也玩過一些P
Thumbnail
前面我們有介紹「【Generative AI — Prompt篇】Ep.1 什麼是Prompt Engineering?」相信對於下指令給AI應該已經具有基本知識,那麼這一次我們來介紹Prompt技巧中的其中一環「角色提示法」,這是什麼樣的一種魔法呢? 很簡單,我們就是讓AI變身成專家,賦予特定領域
Thumbnail
前面我們有介紹「【Generative AI — Prompt篇】Ep.1 什麼是Prompt Engineering?」相信對於下指令給AI應該已經具有基本知識,那麼這一次我們來介紹Prompt技巧中的其中一環「角色提示法」,這是什麼樣的一種魔法呢? 很簡單,我們就是讓AI變身成專家,賦予特定領域
Thumbnail
前面我們有介紹「【Generative AI — Prompt篇】Ep.1 什麼是Prompt Engineering?」相信對於下指令給AI應該已經具有基本知識了吧,在進入Prompt Engineering之前有一些Guideline是我們需要知道的,就如同線上遊戲一般,我們會先進到新手村學習一
Thumbnail
前面我們有介紹「【Generative AI — Prompt篇】Ep.1 什麼是Prompt Engineering?」相信對於下指令給AI應該已經具有基本知識了吧,在進入Prompt Engineering之前有一些Guideline是我們需要知道的,就如同線上遊戲一般,我們會先進到新手村學習一
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News