想要徹底理解思維鏈(CoT),請(qǐng)看此篇!

0 評(píng)論 1722 瀏覽 1 收藏 12 分鐘

隨著人工智能語(yǔ)言模型的不斷進(jìn)步,如何引導(dǎo)它們提供更透明、邏輯性強(qiáng)、可驗(yàn)證的輸出成為了一個(gè)重要課題。思維鏈(Chain of Thought,簡(jiǎn)稱CoT)作為一種Prompt提示技術(shù),通過模擬人類解決問題的逐步思考過程,顯著提升了模型在復(fù)雜任務(wù)中的表現(xiàn)。本文將深入探討CoT的概念、應(yīng)用場(chǎng)景以及實(shí)際案例,幫助讀者徹底理解CoT的底層邏輯和實(shí)踐價(jià)值。

隨著人工智能語(yǔ)言模型變得越來越高級(jí),引導(dǎo)它們產(chǎn)生更透明、邏輯性強(qiáng)、可驗(yàn)證的輸出的需求日益增加。CoT提示通過鼓勵(lì)模型展示其工作過程,類似于人類處理復(fù)雜問題解決任務(wù)的方式,來滿足這一需求。這種技術(shù)不僅提高了AI響應(yīng)的準(zhǔn)確性,還使它們更具可解釋性和可信度。 思維鏈(CoT)

記得第一次看到CoT的時(shí)候,還以為是一種大模型底層的訓(xùn)練方案,實(shí)際了解過之后,才發(fā)現(xiàn)這個(gè)更像是一種思路,一種寫好Prompt的思路?!?/p>

CoT(Chain of Thought)從定義上來說是一種Prompt提示技術(shù),用于指導(dǎo)大型語(yǔ)言模型(LLMs)在復(fù)雜推理任務(wù)中表現(xiàn)出更好的性能。它通過在問題和答案之間插入中間推理步驟,模擬人類解決問題時(shí)的逐步思考過程,以提高模型在算術(shù)推理、常識(shí)推理和符號(hào)推理等任務(wù)中的表現(xiàn)?!?/p>

CoT的作用一般有三點(diǎn): 

提升復(fù)雜問題解決能力:CoT通過將復(fù)雜問題分解為多個(gè)子問題,提高模型解決復(fù)雜問題的能力。

增強(qiáng)模型可解釋性:CoT提供了模型推理過程的可見性,使得模型的決策過程更加透明。

促進(jìn)學(xué)習(xí)和進(jìn)化:CoT幫助模型更好地理解問題本質(zhì),促進(jìn)模型的學(xué)習(xí)和進(jìn)化。

通過CoT的三種能力,我們會(huì)發(fā)現(xiàn),CoT一般被應(yīng)用于需要復(fù)雜推理的場(chǎng)景,比如: 

數(shù)學(xué)問題解決

常識(shí)推理

符號(hào)推理

邏輯謎題

語(yǔ)言理解

在實(shí)際寫法上,一般是將“讓我們一步一步思考”、“讓我們逐步思考”等方式融入到提示詞中,下面我根據(jù)上面的5種應(yīng)用場(chǎng)景,分別舉例分析一下。 案例1: 數(shù)學(xué)應(yīng)用題

Prompt:  Plain Text 請(qǐng)舉例說明Kappa系數(shù)是怎么計(jì)算的,請(qǐng)一步一步思考,嚴(yán)謹(jǐn)認(rèn)真地對(duì)待每一個(gè)過程

分析: 經(jīng)過上面的思考過程的引導(dǎo),模型能夠正確理解并解決數(shù)學(xué)問題,后面再提問這類問題,模型就會(huì)按照這個(gè)思考過程給出期望的數(shù)學(xué)結(jié)果了?!?/p>

比如在單獨(dú)問這道題,大模型會(huì)有數(shù)據(jù)計(jì)算的不準(zhǔn),比如下面,在計(jì)算醫(yī)生A診斷糖尿病和醫(yī)生B診斷糖尿病的交叉數(shù)據(jù)時(shí),正確的應(yīng)該是4,但是大模型給出的是5: 

加上思考引導(dǎo)之后,大模型計(jì)算的精度就提升了,不會(huì)出現(xiàn)上面明顯的計(jì)算錯(cuò)誤: 

案例2: 常識(shí)推理

Prompt:  Plain Text問:一個(gè)農(nóng)夫帶著一只羊站在河邊。河上有一條船,可以容納一個(gè)人和一只羊。那么農(nóng)夫帶著一只羊渡河所需的最少渡河次數(shù)是多少?答:1次。問:一個(gè)農(nóng)民帶2只雞過河,一只船只能容納一個(gè)人和2個(gè)動(dòng)物,那么農(nóng)夫帶著兩只雞渡河所需的最少渡河次數(shù)是多少?

分析: 經(jīng)過上面的思考過程,模型能夠正確理解并解決數(shù)學(xué)問題,后面再提問這類問題,模型就會(huì)按照這個(gè)思考過程給出期望的數(shù)學(xué)結(jié)果了?!?/p>

比如在單獨(dú)問這道題,大模型就開始自以為是的用錯(cuò)誤邏輯分析了: 

當(dāng)提供思考案例后,大模型有一個(gè)思維路徑后,就會(huì)按照正確的思路去分析數(shù)學(xué)問題: 

案例3: 符號(hào)推理

Prompt: Plain Text 將單詞‘Apple’和‘Banana’的最后一個(gè)字母連接在一起。讓我們一步一步思考:‘Apple’的最后一個(gè)字母是‘e’,‘Banana’的最后一個(gè)字母是‘a(chǎn)’,所以連接起來是‘ea’。

分析: 通過告訴大模型如何連接符號(hào),可以正確完成字符串連接任務(wù)?!?/p>

比如:在沒有使用CoT之前 

使用了CoT之后 

案例4: 邏輯謎題

Prompt: 

Plain Text

問題:

學(xué)生小趙、小錢、小孫、小李和小周,他們都想選某老師作為自己的指導(dǎo)老師,現(xiàn)已知:

①5名學(xué)生中有3名屬于20歲以下年齡段,2名屬于20歲及以上年齡段

②有2名學(xué)生的專業(yè)是哲學(xué),其他3名學(xué)生的專業(yè)是文學(xué)

③小趙和小孫的年齡段相同,小李和小周的年齡段不同

④小錢和小周的專業(yè)相同,小孫和小李的專業(yè)不同

最終結(jié)果為,該老師選擇了一名年齡大于20歲的哲學(xué)專業(yè)學(xué)生。

由此可以推出,這名學(xué)生是:

A.小趙

B.小錢

C.小孫

D.小李

試題解析:

第一步,確定題型。

題干有需要匹配的對(duì)象和信息,確定為分析推理。

第二步,進(jìn)行推理。

根據(jù)“小趙和小孫的年齡段相同,小李和小周的年齡段不同”和“有3名屬于20歲以下年齡段,2名屬于20歲及以上年齡段”,可知小李和小周必有一個(gè)大于20歲、有一個(gè)小于20歲,可以推出錢大于20歲,趙孫一定小于20歲,排除A、C項(xiàng);根據(jù)“小錢和小周的專業(yè)相同,小孫和小李的專業(yè)不同”和“有2名學(xué)生的專業(yè)是哲學(xué),其他3名學(xué)生的專業(yè)是文學(xué)”,可以推出錢、周是文學(xué)專業(yè),排除B項(xiàng)。

因此,選擇D選項(xiàng)。

問題:一個(gè)班共有18人,他們分別來自S省、J省、Z省、A省和F省五省。在18

人中,每個(gè)省至少有1人,且來自各省的人數(shù)均不相同。已知:

(1)S省和J省共有5人;

(2)J省和Z省共有6人;

(3)Z省和F省共有7人。

根據(jù)以上信息,可以推出以下哪項(xiàng)?

A.18人中來自S省的有1人

B.18人中來自Z省的有2人

C.18人中來自F省的有5人

D.18人中來自A省的有6人

分析: 通過引導(dǎo)模型按步驟思考邏輯題,從而根據(jù)引導(dǎo)解決邏輯題?!?/p>

如果直接給出問題,AI思考鏈路會(huì)非常單一,得出錯(cuò)誤的答案,比如: 

當(dāng)我們給出思考鏈路后,AI會(huì)根據(jù)正確的思考鏈路給出答案: 

案例5: 語(yǔ)言理解

Prompt: Plain Text請(qǐng)首先把每個(gè)選項(xiàng)中成語(yǔ)的含義與適用場(chǎng)景分析出來,最后再聯(lián)系問題的場(chǎng)景一步一步的分析哪個(gè)成語(yǔ)最符合場(chǎng)景。

分析: 模型通過逐步解釋,正確理解并解釋了成語(yǔ)?!?/p>

比如在下面我們常見的成語(yǔ)填空問題中,如果沒有思維鏈的搭建,模型對(duì)于成語(yǔ)在哪種語(yǔ)境使用是會(huì)有誤差的,會(huì)得出錯(cuò)誤的結(jié)論: 

當(dāng)我們加上了思維鏈的提示,大模型就能一步一步的理解成語(yǔ)與語(yǔ)境,得出正確的答案?!?/p>

自動(dòng)思維鏈(Auto-CoT)

當(dāng)我們體驗(yàn)到思維鏈的好處之后也發(fā)現(xiàn)一個(gè)問題,生活中的場(chǎng)景這么多,如果每個(gè)場(chǎng)景我們都寫個(gè)思維鏈,豈不要累死,于是Amazon Science團(tuán)隊(duì)提出了自動(dòng)思維鏈(Auto-CoT)的概念,它通過自動(dòng)化流程構(gòu)建“讓我們一步步思考”的思維過程,以提高模型在復(fù)雜推理任務(wù)中的表現(xiàn)?!?/p>

自動(dòng)思維鏈的實(shí)現(xiàn)方法主要有2個(gè)階段: 

問題聚類:將給定數(shù)據(jù)集的問題劃分為幾個(gè)簇。

示例抽樣:從每個(gè)簇中選擇一個(gè)代表性問題,并使用簡(jiǎn)單的啟發(fā)式方法使用零樣本CoT生成其推理鏈。

簡(jiǎn)單理解就是提前把問題分類,然后自動(dòng)生成每個(gè)問題分類下的思維鏈。 

如果有技術(shù)團(tuán)隊(duì)當(dāng)前遇到了無(wú)法一個(gè)一個(gè)寫思維鏈的困擾,可以嘗試用這個(gè)方法,

項(xiàng)目地址:https://github.com/amazon-science/auto-cothttps://github.com/amazon-science/auto-cot

拿走不謝~ 

總結(jié) 

思維鏈在寫Prompt初期的確會(huì)獲得比較好的表現(xiàn),不過有些項(xiàng)目只靠讓AI進(jìn)行啟發(fā)式推理并不能得到我們想要的結(jié)果,所以思維鏈只是寫好Prompt的一個(gè)小環(huán)節(jié),所以千萬(wàn)不要一招鮮,吃遍天,后面我還會(huì)分享更多Prompt相關(guān)的知識(shí),敬請(qǐng)期待! 

本文由人人都是產(chǎn)品經(jīng)理作者【宋恒達(dá)】,微信公眾號(hào):【產(chǎn)品自由之路】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于 CC0 協(xié)議。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 目前還沒評(píng)論,等你發(fā)揮!