第三章:增強式學習
ChatGPT這種語言模型,是屬於監督式學習,例如訓練英翻中的時候,輸入一個英文句子“I have been expecting you.”,一定要同時輸入它的中文翻譯“我恭候您多時了”,用以計算其損失函數,做為回饋修正模型權重之用。模型訓練完成可以回答提問者的問題了,就是到了模型預測的階段。
但我們在不同時間點,問ChatGPT同一個問題,常常會得到有所差異的答覆。這是因為,模型一般是利用(exploit)學習經驗回答問題,但有時會探索(explore)隨機答案,目的是想增加回答內容的多樣性。
如此一來,在預測階段所提的問題,加上不同評分的答覆內容,就可以再放進模型裡面,當作另一筆訓練的資料和標記值。這樣的學習訓練方式,讓ChatGPT在往後的答覆更加合理,並且文字益形通順。
例如,“You should have studied harder.”,如果翻譯成“你原本應該更用功讀書”給予5分,如果翻成“你應該更用功讀書”給予3分,如果翻成“你應該用功讀書”給予1分。這樣的獎懲方式是「增強式學習」的基本概念,搭配上既有的監督式學習,是OpenAI公司迎頭趕上Google的重要關鍵。
圖3-1. 增強式學習(Reinforcement Learning, RL),其獎勵或懲罰(Reward),是建立最佳行動策略的重要因素。
增強式學習,和監督式及非監督式學習,並稱是人工智慧的三大學習方式。但這種學習方式有其獨特的地方。
它在建立其內部神經網路時,資料集是由自己計算所得,不需要再從外部蒐集資料;它應用的範圍甚廣,包括遊戲策略、自動駕駛、機器人控制、金融投資策略…………。
OpenAI早期喜用增強式學習來訓練遊戲,看似不務正業,實則在蓄積能量,待時機成熟即一鳴驚人。有志於這方面研發的工作人員,建議應先打好程式及理論基礎。
圖3-2. 捉迷藏遊戲,是OpenAI相當著名的增強式學習遊戲。