淺談最近非常火紅的ChatGPT背後可能原理機制為何?

本篇文章聽完李弘毅老師的講解之後有感而發,再透過自己的想法寫下來,因為ChatGPT尚未公開詳細作法,所以事實上李弘毅老師是參考Instruction GPT的原理機制來講解,而Instruction GPT是與ChatGPT關係相近的模型,因此,可一窺ChatGPT的大概的原理為何?

首先一開始模型是基於GPT的模型所開發而成,什麼是GPT模型呢?

一般我們在開發AI模型的時候,都是從一個空白的模型,給定初始權重,輸入數據讓AI模型去學習訓練,這是一般的做法。但在很多的情況下,數據量有限,透過這樣的作法,也並非可以得到最好的AI模型。因為像是自然語言的領域,語言的情境太多了,只有給一些數據去訓練,難以讓AI模型有非常好的學習。

因此,OpenAI就開發了GPT的模型,這個叫做是預先訓練的模型,它的作法是輸入非常多筆的資料,先打造成很強大的模型,就算模型的用途跟我們的應用不同,也沒關係,再將這個模型根據我們的應用微調即可。

然後就會發現這樣的表現,其實會比從空白模型訓練還要來的非常好。

這就好像是我們將空白的AI模型視為嬰兒,預先訓練的模型視為成人。

從嬰兒訓練到成人的程度,甚至要比成人還厲害,很困難,幾乎不可能。

所以才直接從成人直接教它學習新的任務,效果就會學的比較好。

採用GPT預先訓練的模型,還需要針對我們的應用去將模型進行訓練調整。

而OpenAI採用的方式是增強式的學習,到底增強式學習是什麼呢?

增強式學習

為什麼要採用增強式學習呢?

因為以監督式學習的訓練方式,我們必須要給定數據,給定標準解答讓機器學習,可是這樣會有問題就是我們不可能用窮舉法給完所有數據才讓機器學習,這是因為在GhatGPT牽涉的情境變化很多,根本不太可能將輸入的數據考量到所有的情境,因此,才會使用增強式學習來進行訓練。

增強式學習是給機器一個環境,在這個環境當中,告訴它做那些行動,會獲得獎勵加分, 做哪些行動會被懲罰扣分。透過這種方式,就可以讓機器在這個環境當中,不斷自我學習。

而只要讓模型有充足的時間跟運算資源,不斷從許多情境當中學習,就可讓成人演化成萬事通,也就是各個領域專家,程式開發者,文學家,物理學家等等等。

[參考資料]:

1.ChatGPT (可能)是怎麼煉成的 – GPT 社會化的過程

[類神經網路基礎系列專文]:

1.類神經網路(Deep neural network, DNN)介紹

2.類神經網路—揭開網路架構調整秘辛

3.類神經網路—啟動函數介紹(一): 深入解析Relu與Sigmoid函數:如何影響類神經網路的學習效果?

4.類神經網路—啟動函數介紹(二): 回歸 vs. 分類: 線性函數與Tanh函數之原理探索

5.類神經網路—啟動函數介紹(三): 掌握多元分類的核心技術:不可不知的softmax函數原理

6.類神經網路—啟動函數介紹(四): 如何選擇最適當的啟動函數?用一統整表格讓您輕鬆掌握

7.類神經網路—前向傳播法

8.類神經網路—反向傳播法(一): 白話文帶您了解反向傳播法

9.類神經網路—反向傳播法(二): 淺談梯度

10.類神經網路—反向傳播法(三): 五步驟帶您了解梯度下降法

11.類神經網路—反向傳播法(四): 揭開反向傳播法神秘面紗

12.機器學習訓練原理大揭秘:六步驟帶您快速了解監督式學習的訓練方法

13.類神經網路—反向傳播法(五): 用等高線圖讓您對學習率更有感

[機器學習基礎系列專文]:

1.機器學習訓練原理大揭秘:六步驟帶您快速了解監督式學習的訓練方法

2.機器學習面臨的問題種類介紹:回歸與分類

[類神經網路延伸介紹]:

1.卷積類神經網路(Convolution neural network,CNN)介紹

2.遞迴類神經網路(Recurrent neural network,RNN)介紹

[ChatGPT系列專文]:

1.淺談最近非常火紅的ChatGPT背後可能原理機制為何?

2.從ChatGPT探索GPT的原理概念:少量數據的解方—遷移學習技巧

3.ChatGPT是什麼?探索GPT原理:遷移學習(transfer learning)的奧秘—微調(fine-tuning)技巧