ChatGPT 是什麼? ChatGPT 的原理

ChatGPT 是什麼? ChatGPT 的原理

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

說明:

這文章其實也是李宏毅老師 2023 年機器學習課程的個人一些學習整理,李老師上課的內容&口吻很精彩,很建議大家直接看李老師的課程影片: 完整的所有課程在這裏


ChatGPT 是什麼

ChatGPT 是一個 底層使用 GPT 技術的(文字接龍)對話機器人,它可以讓你使用你熟悉的自然語言來與它互動,例如,你可以直接請它來幫你規劃你的課程大綱。

raw-image

它甚至可以知道和你對話的前後文來與你對話。

raw-image

ChatGPT 不是什麼

因為這麽神奇的功能,所以最近各路人馬都對它有各種的想像,例如,它這麽會回答問題,是不是被裝了很多的罐頭文?

不過其實不是! 你實際要它說幾個笑話給你,你會發現有很多的笑話的笑點根本不是正常人的笑點。

raw-image

又,這樣 ChatGPT 回答你的,是不是網路上搜尋後的回覆?

也不是! ChatGPT的答案不是從網路上搜尋而來的,它其實是一個經過使用大量網路語料訓練後的大型語言模型。

ChatGPT 的原理

基本上 ChatGPT就是一個大型的語言模型,而它做的事情其實就是文字接龍。

raw-image

文字接龍是什麼意思?

例如,你詢問它【什麼是機器學習?】它就會透過它的語言模型來判斷接下來的字有哪些,以及每個字的正確機率是多少,然後再經過某種判斷機制選擇最有可能的字來回覆你。

ChatGPT 的關鍵技術

ChatGPT 裏面的 GPT 就是 Generative Pre-trained Transformer 的縮寫。

而 ChatGPT 的關鍵技術,Pre-trained,又叫做自監督式學習(Self-supervised Learning),也因為對於一般大眾比較好理解,所以也常被稱為基石模型(Foundation Model)

raw-image

那 ChatGPT 那文字接龍的能力是怎麼被訓練出來的呢?

ChatGPT 成體的運作機制,簡單來說,我們可以將它想像成一個就像數學函數的大黑盒。當使用者跟 ChatGPT 對話時,就像我們把對話內容輸入給這個黑盒,這黑盒子就挑選最有可能的字,然後一一(吐出)回覆。

而這個神奇的函數,則是由大量的網路資料以及人類指導老師來訓練並且調教出來的。

raw-image

所謂的由大量的網路資料來訓練是什麼意思呢?我們使用傳統英翻中的機器學習為例:

傳統的機器學習需要蒐集大量成對的中英文成對例句來餵給機器,讓機器自己尋找那個可能的函式,當機器透過這樣的學習後,例如它已經學會了:

I = 我, You = 你, apple = 蘋果, orange = 橘子

然後我們將【You eat an apple】輸入到機器,機器則會回覆【你吃蘋果】給我們

raw-image

但是使用這種方式,需要準備大量的資料,所以在人力有限的狀況下,我們用這種方式來窮舉所有人們可能詢問的問題簡直是不可能的。

所以就有了自督導式學習(Self-supervised Learning)這種方式來幫我們無痛製造成對資料。

使用自督導式學習,網路上的每一段文字都可以自動化來拆解成前後兩段文字來訓練機器做文字接龍,例如

世界第一高峰是喜馬拉雅山,可拆解為【世界第一高峰是】【喜馬拉雅山】
今天天氣真好,我要出去玩,可拆解為【今天天氣真好】【,我要出去玩】

上面第二句的拆解不是筆誤,常常使用 ChatGPT 的朋友有時會發現它的回答為什麼開頭第一個字是逗點?

其實就是因為這樣預訓練的原因。
raw-image

大型語言模型

而這樣的訓練方式要訓練成 ChatGPT 到底需要多少資料呢? 其實在 ChatGPT 之前,GTP 已經有很多代的演進。從2018年的第一代 GPT,模型參數數量為117M 個,資料量只有 1GB。GPT-2 的1542M 個模型參數到 GPT-3 的 175B 個模型參數, 570GB 的資料量,這差異性到底是有多大? 我們直接按照比例放大給大家看:

這是 GPT VS GPT-2,GTP-2 與 GTP 相比,模型參數量與資料量夠大吧!?

raw-image

GTP-2 VS GTP-3 的比例更驚人! GTP-3 訓練的資料量換算成哈利波特全集的話,大概是閱讀哈利波特全集 30 萬遍這麽多。

raw-image

而且 GTP-3 這 570GB 資料量,還是所有 45T 的網絡資料優化篩選出來的,最精華的 570GB。

然而,GPT 在經過這麽大量資料以及這麽多參數的學習後,它在問答功能上的成效如何呢?

raw-image

上圖是 GTP-2 模型與其他模型/人類的比較,縱軸上的 F1 大家可以簡單把它看作正確率。

從這圖表可以看出,GTP-2 與一些其他模型比較,的確還不錯,可以證明只是簡單從網路上的資料訓練出來的語言模型,已經可以勝過例如 PGNet, DrQA 這類模型了。只是當然跟人類的正確率相比,GTP-2 的正確性還是很不堪入目。

那 GTP-3 呢?

raw-image

上圖是從 GTP-3 的論文截取出來的圖表, GTP-3 選擇出來 42 類問題來做問答正確率的分析圖表,橫軸上代表的參數數量,可以看出來,參數量越大,模型的正確性的確越高,但是大家可以看出即使連 GTP-3 這麽大的模型,似乎它的正確性也比亂猜(50%)好一點而已。所以當初甚至也有一些人看衰大型語言模型,它即使使用了這麽大的運算資源做訓練,好像也是白做工。

不過也多虧有人不灰心繼續進化,所以最後也才有了,最近驚呆了全世界的 ChatGTP(GTP 3.5)的出現,至於 ChatGTP 的訓練還有什麼其他的關鍵技術?

我們下回再跟大家介紹~


我們這篇文章內的圖表都是由李宏毅老師的課程投影片中選錄截取出來的,原始投影片可參考李老師課程首頁內連接: Machine Learning 2023 Spring

很感謝李宏毅老師無私的分享以及同意使用。

avatar-img
Ted Chen的沙龍
18會員
19內容數
留言
avatar-img
留言分享你的想法!
Ted Chen的沙龍 的其他內容
由于 ChatGPT 的出現讓我們看到了聊天機器人的新可能性,我們這篇文章的目的,就是要來製作第一個屬於自己的聊天機器人。 我們先來準備範例的程式碼,並且稍後會再跟大家介紹要設計自己的 ChatGPT 聊天機器人的重要概念。 初始專案與環境設定 下載程式碼 請先使用下面這一段指令下載我們的範例程式碼
這篇其實就是 Andrew Ng 大大與 OpenAI 合作的一門免費課程【Chatgpt Prompt Engineering For Developers - Guideline】章節的第二段筆記。很建議大家直接看原本的課程影片,內容蠻淺顯易懂的。 第一段筆記在這:開發者的 ChatGPT 提示
這篇其實就是 Andrew Ng 大大與 OpenAI 合作的一門免費課程【Chatgpt Prompt Engineering For Developers】的筆記。很建議大家直接看原本的課程影片,內容蠻淺顯易懂的。 另外因為篇幅有限,所以我們會將他的第一堂課的內容(Guidelines),拆分成
在正式以比較技術面角度來認識 ChatGPT / GPT 之前,我們先用幾個簡單的例子來認識 ChatGPT 以及語言模型可以做到怎樣的事情。 什麼是 ChatGPT? 簡單來說明,ChatGPT 是一個背後使用 GPT 語言模型的對話機器人,而它可以做什麼事情了?我們先來使用幾個常見的語言相關的任
63 個省,嗯...好多啊,可能記得起來嗎?不過開玩笑的,記憶也沒有太多意義,今天和大家分享這影片主要是因為,這影片的取景跟配樂實在是太精彩了 另外這位 Youtuber 其實關注他很久了,很喜歡他表現出來的自豪、熱愛的態度,一定是位很熱愛自己國土的人,才能堅持到現在。 比較可惜的是這部影片沒有字幕
這次看完這影片後,發現了一個蠻有趣的越南網站 - Gody。它是一個專門設計給背包客、自由行旅客的一個旅行工具平台(For 越南人)。大致上行程規劃、旅程經驗分享、甚至交友/語言交換似乎都可能在上面實現? 另外也在想,不知道下次要不要深入了解後跟大家仔細拆解、說明如何使用這個網站呢? 如果有這個興趣
由于 ChatGPT 的出現讓我們看到了聊天機器人的新可能性,我們這篇文章的目的,就是要來製作第一個屬於自己的聊天機器人。 我們先來準備範例的程式碼,並且稍後會再跟大家介紹要設計自己的 ChatGPT 聊天機器人的重要概念。 初始專案與環境設定 下載程式碼 請先使用下面這一段指令下載我們的範例程式碼
這篇其實就是 Andrew Ng 大大與 OpenAI 合作的一門免費課程【Chatgpt Prompt Engineering For Developers - Guideline】章節的第二段筆記。很建議大家直接看原本的課程影片,內容蠻淺顯易懂的。 第一段筆記在這:開發者的 ChatGPT 提示
這篇其實就是 Andrew Ng 大大與 OpenAI 合作的一門免費課程【Chatgpt Prompt Engineering For Developers】的筆記。很建議大家直接看原本的課程影片,內容蠻淺顯易懂的。 另外因為篇幅有限,所以我們會將他的第一堂課的內容(Guidelines),拆分成
在正式以比較技術面角度來認識 ChatGPT / GPT 之前,我們先用幾個簡單的例子來認識 ChatGPT 以及語言模型可以做到怎樣的事情。 什麼是 ChatGPT? 簡單來說明,ChatGPT 是一個背後使用 GPT 語言模型的對話機器人,而它可以做什麼事情了?我們先來使用幾個常見的語言相關的任
63 個省,嗯...好多啊,可能記得起來嗎?不過開玩笑的,記憶也沒有太多意義,今天和大家分享這影片主要是因為,這影片的取景跟配樂實在是太精彩了 另外這位 Youtuber 其實關注他很久了,很喜歡他表現出來的自豪、熱愛的態度,一定是位很熱愛自己國土的人,才能堅持到現在。 比較可惜的是這部影片沒有字幕
這次看完這影片後,發現了一個蠻有趣的越南網站 - Gody。它是一個專門設計給背包客、自由行旅客的一個旅行工具平台(For 越南人)。大致上行程規劃、旅程經驗分享、甚至交友/語言交換似乎都可能在上面實現? 另外也在想,不知道下次要不要深入了解後跟大家仔細拆解、說明如何使用這個網站呢? 如果有這個興趣