---
# System prepended metadata

title: ChatGPT 如何練成（李宏毅老師筆記）

---

# ChatGPT 如何練成（李宏毅老師筆記）
## 簡易版步驟
1. **透過網路資料學習如何做文字接龍**。
    input 輸入之後 gpt 模型會計算下一個 token 的機率大小，gpt 模型會隨機抽取機率較大的文字當作輸出，這是每次輸出結果都不同的原因。
    以下是輸入 input 到輸出 output 的過程：
    
    input：「台灣最高的山是哪一座？」
    （計算各種 token 的機率高低）
    「台灣最高的山是哪一座？ -> 選擇「玉」
    （計算各種 token 的機率高低）
    「台灣最高的山是哪一座？玉」-> 選擇「山」
    
    output：「玉山」
2. 人類給予特定模型問題以及答案，讓**模型了解人類偏好的問題以及答案**。
    不需要窮舉各種問題以及答案，因為模型已經有能力回答問題，只需要學習用人類偏好回答問題的方式即可。
3. **由人類評斷模型的答案好壞**。
    train 一個 teacher model 去學習人類的評斷標準，人類只需要將眾多答案排序，不需要給予最正確的答案。
5. **透過 teacher model 學習好的答案**。
    gpt 模型會將 input 與 output 都丟到 teacher model，由 teacher model 評斷是高分還低分，若是低分，則會回頭調整 gpt 模型的參數，這種方法稱作 增強式學習 Reforcement Learning


## 對 ChatGPT 的誤解
1. **ChatGPT 真的能讀懂人類的語言並且回答都是正確的**
    由於 ChatGPT 訓練資料包含網路資料，因此 ChatGPT 只是去學習文字接龍以及了解人類回答問題的偏好，ChatGPT 僅是    使用看過的資料去回答問題，並不是真的「讀懂」了。因此問 ChatGPT 沒看過的問題，它很有可能會答錯。
![](https://hackmd.io/_uploads/Bku_9kE42.png)

2. **ChatGPT 可以回答最近的資料**
    ChatGPT 的訓練資料只到 2021 年，因此問他 2022 年以後發生的事情，很有可能得到錯誤的答案。
![](https://hackmd.io/_uploads/HyOHcJ4Vn.png)

## ChatGPT 帶來的研究問題
1. **如何下更精準的 Prompt**
    模型並不是真的讀懂人類的語言，因此需要透過**具體**的指定來達成欲完成的任務。
    目前效果佳的 Prompt 格式為：［角色］＋［任務］＋［格式］
2. **資料洩漏問題**
    如果個人或是公司的敏感資料上傳到與 ChatGPT 的對話框中，很有可能造成資訊外洩
3. **偵測 AI 生成的物件**
    現在已經能夠透過 AI 生成大量的物件，同樣地，由人類手工生成的物件變的更稀缺，如何很好地判斷物件是否由 AI 生成，可能也是未來的研究問題。
4. **如何修正錯誤**
    只要餵給 ChatGPT 錯誤的資料，它就很有可能回答錯誤的答案，要如何改善這個問題也是有待研究。
