ChatGPT的原理與應用 曾元顯 特聘教授 圖書資訊學研究所 國立臺灣師範大學 Yuen-Hsien Tseng National Taiwan Normal University 2023/09/06 2 國立臺灣師範大學 曾元顯 特聘教授 學歷 • 國立臺灣大學資訊工程學博士 經歷 • 2022 特聘教授 • 2020 優聘教授 • 2017臺灣師範大學, 圖書資訊所, 所長 • 2016中華民國計算語言學 學會, 理事長 • 2015臺灣師範大學,校務研究辦公室主任 • 2014臺灣師範大學, 資訊中心 主任 專長 資訊檢索、文字知識探勘、自動化資訊組 織與分析、自然語言處理、機器學習、 人工智慧、資訊計量學 • 2021、2022:全球前 2%頂尖科學家World’s Top 2% Scientists • 2017:專利文件探勘 論文被 ESI 蒐錄為引 用次數前1%之著作 • 2012年起主辦國際性 中文處理競賽 • 2011年起獲頒彈性薪 資獎勵 • 2006年起獲七項文字 探勘、AI 技術專利 • 1999年瑞士自動編目 與檢索競賽 第二名 會前提問一覽表 1. 如何有效使用ChatGPT,例如:如何下指令、提問方式等。 2. 我們是否需要學習程式語言,以更加精確使用ChatGPT。 3. 如何運用ChatGPT於教師教學備課及學生學習等,敬請分 享實際案例。 – – 教師可將ChatGPT當作助教,學生可將ChatGPT當作學伴 善用思考引導法(Socratic Questioning) • • 教師可向ChatGPT提問,針對教材如何進行Socratic Questioning 學生可向ChatGPT提問,閱讀教材時,如何進行批判性思考 4. 針對ChatGPT所生成的文本,該如何識別假資訊以及迅速 查證核實。 5. 於資安管理層面有哪些地方需要多加留意。 3 Bloom’s 2 sigma problem • Benjamin Bloom (1984), The 2 Sigma Problem: The Search for Methods of Group Instruction as Effective as One-to-One Tutoring, Educational Researcher • 進行一對一輔導的學生平均表現,比在課堂環境 中接受教育的學生,好兩個標準差的教育現象。 https://en.wikipedia.org/wiki/Bloom%27s_2_sigma_problem • 這種現象的相關問題是: https://corp.tutorocean.com/tutoroceans-solution-to-blooms-2-sigma-problem/ 找到與一對一輔導一樣 有效的小組教學方法。 • 現在,不用找了, AI可以進行一對一輔導 • 如何進行?老師、學生? 4 報告大綱 1. 初見ChatGPT 10分鐘 2. ChatGPT參加會考?! 5分鐘 3. ChatGPT改作文!? 5分鐘 4. GPT原理與應用實驗 15分鐘 5. ChatGPT進階使用案例 20分鐘 6. 偵測ChatGPT寫的文字? 5分鐘 7. 使用ChatGPT該注意什麼 3分鐘 8. 總結:ChatGPT的機會與挑戰! 2分鐘 9. 問答 5 5分鐘 可將本次演講錄影轉成英文發音與字幕 • Rask AI 網站入口:https://pse.is/rask_ai – Rask AI 可以直接把你中文口語輸入,變成你聲 調的英文口語直接輸出,然後還幫你配好字幕。 同樣支援法文/德文/西文/阿文...等。 • https://www.facebook.com/Reno.Dou/posts/pfbid02MT wf9E5GLAsFMGzQAJbDofi1Z7CTLK6SjuNvTx6Jrxor BiHqgt5Vk6fpKSSiLf9nl – 範例一:https://app.rask.ai/project/dc7cc226f3b9-4d33-a1b6-8b8a551f564a – 範例二: • 中文原片: https://youtu.be/Sf2CnnsFdjE • 套上 Rask AI 後之英文影片: https://youtu.be/UrsyZtg_jrA 6 初見ChatGPT 7 與ChatGPT的互動範例 Use Case Prompt Example question-answering How to say 5000 dollars informally? 文法與錯字改正 現場展示 (prompt usage: first example) classification 請依照下面情緒類別,判斷推文所屬之情緒類別。 推文:為什麼明天就要開學了 Task 情緒:負面 推文:明天終於要放暑假了 情緒:正面 Examples 推文:每天都被自己帥醒,壓力很大 情緒: rewrite 請改寫下面的推薦函,使其更正式、更吸引人。 {推薦函文字} 8 Context Brainstorming 請其分析、給意見 • 主辦系學會的會長選舉,有哪些事情要注意? • 協助產生常見問答 extract 問答型摘要:黃仁勳演講 convert • 參考書目擷取與格式轉換 • 輸出格式轉表格 ChatGPT的問答與摘要能力 • 案例來自:103年國中社會9上歷史課本-翰林版 • 使用者: – 1-1 西亞古文明 – 一 兩河流域民族 – 4. 加爾底亞人:擅長觀察天象與占星術,確立一週七天的制度,為 後世所沿用。 – 誰 確立一週七天的制度 • GPT-4: – 一週七天的制度是由古代的加爾底亞人確立的。 – 加爾底亞人是兩河流域的一個古代民族,他們擅長觀察天象與占星 術,並將這些知識應用於日常生活,包括時間的計算方式,從而確 立了一週七天的制度。這種制度至今仍被全世界廣泛採用。 • 完整的對話: https://chat.openai.com/share/78737025-a328-4f52-abb8-4d9855253798 • 小結: – GPT-4出的題目不完美,但能夠觸發老師的創意,或是改寫得更好。 9 思考引導法 • 案例改自:https://openai.com/research/gpt-4 – 完整對話: https://chat.openai.com/share/fc852be3-8a8a-49c4-a5d3-c1c7a1a8702b • 使用者: – 你是一位老師,總是以蘇格拉底式的回應,針對學生的問題提出你的回應。 你 “永遠”不會給學生答案,但總是提出正確的問題來導引學生自己想出解答, 以幫助他們學會獨立思考。 您要根據學生的興趣和知識調整您的問題,將問題 分解為更簡單的部分,直到適合學生的水平。 – 當使用者提出問題後,你才開始蘇格拉底式的提問,以協助學生解決其問題。 – 現在,請先簡介蘇格拉底式的回應為何?並舉實例說明。 • GPT-4: – 蘇格拉底式的回應,… 是一種教學方式,… – 舉例來說,假如學生問:“什麼是幸福?” 使用蘇格拉底式的回應,你可能會 這樣回答:“你認為幸福是什麼?”,當學生回答時,你可能再問:“你為什 麼認為這是幸福?有沒有可能其他的定義也可以代表幸福?” … • 小結: 10 – GPT-4容易在使用者堅持下道歉,容易被誤導 – 學生使用時需自行判斷、確認ChatGPT的正確性。 ChatGPT參加會考! 11 112年國中教育會考 國文科 • 資料來源:國中教育會考,歷屆試題: – https://cap.rcpet.edu.tw/examination.html – 112年國中教育會考題本及相關檔案 • 國文科選擇題:單題+題組:共 42 題 – GPT-4 錯4題,程度:A+ – (A++最高,錯3題以內) 12 GPT-4 答錯情形(1/4) • 4. 下列文句,何者語詞使用最恰當? – – – – • (A)你到底看見了什麼?豈非這樣驚訝 (B)並非我與他相識,這件事絕不可能善罷甘休 (C)你所說的無非是老生常談,他哪裡聽得進去 (D)若非我故意和你唱反調,實在是你的做法不合理 GPT-4的輸出: – 選擇 (D) "若非我故意和你唱反調,實在是你的做法不合理" 語詞使用最恰當 。 – 選項(A)的「豈非這樣驚訝」的用法不正確。"豈非"一詞用來提問,表疑問,不適合 用於這裡。應該改為「豈能這樣驚訝」或「怎麼會這麼驚訝」。 – 選項(B)的「並非我與他相識,這件事絕不可能善罷甘休」語句並不清晰,從語句 中無法確定「並非我與他相識」與「這件事絕不可能善罷甘休」之間的邏輯關係。 – 選項(C)的「你所說的無非是老生常談,他哪裡聽得進去」這裡的 "無非 " 的用法也 有問題 。"無非 "表示 "只不過,僅僅 "的意思 ,與 "老生常談 "的意思並不匹配 。 – 選項(D)的「若非我故意和你唱反調,實在是你的做法不合理」表達清晰,語句通 順,無語病,因此最為恰當。 13 GPT-4 答錯情形(2/4) – (A) 白底黑字隸書 (B) 黑底白字隸書 (C) 白底黑字楷書 (D) 黑底白字楷書 • GPT-4的輸出: – 根據上述描述,陽刻的方式是將非文字部分刻除 ,留下的文字部分是凸出來的 。 – 在使用這種方式製作的印章蓋在白紙上時,章蓋的部分是無墨的,也就是白色的 , 而非章蓋的部分(即印章的墨水部分)是黑色的。 – 因此,陽刻隸書章蓋在白紙上顯示出的樣子應該是 (B) 黑底白字隸書。 14 GPT-4 答錯情形(3/4) • 12. 「少室周為趙簡子之右,聞牛談有力,請與之競,弗勝,致右焉。 簡子許之,使少室周為宰,曰:『知賢而讓,可以為訓矣。』」根據 文意脈絡,下列何者最適合用來說明「訓」字的意義? – (A)典範 (B)順從 (C)教誨 (D)解釋 • GPT-4的輸出: – 根據文意脈絡,(C) 教誨 最適合用來說明「訓」字的意義 。 – 在此語境中,簡子稱讚少室周知道自己的不如,因此讓出地位,這種行為可以作為 一種教誨或指導,使他人學習或借鑒。因此,“可以為訓矣”在這裡的意思是“可 以作為教誨”。其他選項如典範、順從、和解釋在這個語境中都不符合文義。 15 GPT-4 答錯情形(不穩定的答案) • 17. 甲: 18% 全球曾有過伴侶的 15至49歲女性 在過去12個月 經歷過 來自伴侶的 身體或性暴力 乙: 女性占 全球 39% 勞動力 但是僅占 全球 27% 管理職位 丙: 全球國家議會女性占比 與2010年的19%相比上升至 16 24% 丁: 南亞20至24歲女性 仍有30% 在18歲前結婚 (2018年調查) • 以上是根據聯合國《2019年永續發展目標報告》 製作的圖表。下列關於圖表內容的推論,何者最 不恰當? – – – – • (A)甲:82%的全球女性未曾遭受來自伴侶的身體或性暴力 (B)乙 :全球女性在職場上擔任管理職位的比例較男性少 (C)丙 :全球女性的參政比例有所提升,但仍為少數 (D)丁:2018年至少有30%的20至24歲南亞女性結過婚 GPT-4的輸出: – 選擇 (D);根據給出的信息,南亞20至24歲女性中有30% 的人在18歲之前就已經結婚了。然而,選項 (D) 的表述誤 導了這個事實,它僅表示在這個年齡組的女性中,至少有 30%的人結過婚,但並未明確指出這30%的女性是在18歲 之前就結婚的。因此,選項 (D) 的說法不準確。 GPT-4 推論正確的情形(格式影響答案?) 甲:18%全球曾有過伴侶的15至49歲女性 在過去12個月經歷過來自伴侶的身體或性暴力 乙:女 性占全球39%勞動力但是僅占全球27%管理職位 丙:全球國家議會女性占比與2010年的19%相比上升至24% 丁:南亞20至24歲女性仍有30%在18歲前結婚(2018年調查) • 17. 以上是根據聯合國《2019年永續發展目標報告》製作的圖表。下列 關於圖表內容的推論,何者最不恰當? – – – – • (A)甲:82%的全球女性未曾遭受來自伴侶的身體或性暴力 (B)乙 :全球女性在職場上擔任管理職位的比例較男性少 (C)丙 :全球女性的參政比例有所提升,但仍為少數 (D)丁:2018年至少有30%的20至24歲南亞女性結過婚 GPT-4的輸出: – 選擇 (A) ;根據甲的信息,全球曾有過伴侶的15至49歲女性中,有18%在過去12個 月經歷過來自伴侶的身體或性暴力。然而,選項(A)的推論誤導了這個信息,它將 狹窄的樣本(曾有過伴侶的 15至 49歲女性)誤擴大為全球所有女性,且並未將經 歷暴力的時間範圍限定在過去 12個月內。 17 GPT-4 不算答錯的題目 • 27. 根據圖文,下列關於跳水比賽的敘述,何者最恰當? – (A)入水時水花的大小會影響分數高低 – (B)史上第一場跳水比賽是在室內舉行 – (C)奧運比賽的雙人賽必須配置7名評審 – (D)使用跳板起跳就可以獲得比較高的分數 • GPT-4的輸出: – 所有選項都不准確。無法選出最恰當的選項。 – 這怪不得GPT-4,因為我忘了輸入「入水」的說明。 18 GPT-4 答錯情形(無可厚非) • 38. 小銘畫了以下這張〈拿破崙的加冕禮〉的模擬圖,根據本文對雅克路易. 大衛原畫的描述,小銘的模擬圖與原畫相比後有明顯的錯誤,下列何者最可能 是這個錯誤? • 約瑟芬跪著接受站立的拿破崙手中的冠冕,拿破崙的母親在側面的台階上觀禮, 教皇則坐在拿破崙後面的王座上,王座後面有十字架。 – – – – • (A)十字架擺放的位置 (B)拿破崙加冕的對象 (C)教皇給予祝福的手 (D)拿破崙母親的出席 畫面的正中央是代 表神權的十字架 GPT-4的輸出: – 答案是(D)拿破崙母親的出席。根據上述短文,拿破崙的母親在實際加冕典禮中並 未出席 ,她選擇遠走米蘭,典禮結束後才回巴黎。然而在畫作中,大衛根據拿破崙 的要求,將其母親放入了場景之中 。但在小銘的模擬圖中,拿破崙的母親也出席 了加冕典禮,這與實際情況不符,因此這是一個明顯的錯誤。 19 GPT-4 答錯情形(4/4) • 42. 下列文句,何者最能呼應文中「吞舟之魚,不游支流; 鴻鵠高飛,不集汙池」的涵義? – (A)狡兔死,良狗烹;高鳥盡,良弓藏 – (B)高飛之鳥,死於美食;深泉之魚,死於芳餌 – (C)騏驥千里,一日而達;駑馬十駕,旬亦至之 – (D)剖三寸之蚌,難得明月之珠;探枳棘之巢,難求鳳凰之雛 • GPT-4的輸出: – (C)騏驥千里,一日而達;駑馬十駕,旬亦至之 – 這段話與"吞舟之魚,不游支流;鴻鵠高飛,不集汙池"的意涵最接 近,都是強調那些有遠大目標或特殊才能的事物,不會去做那些 與自身能力或目標不符的小事 。 – "騏驥千里,一日而達"這句話說的是一匹出色的馬可以在一天之內 跑完一千里,而一匹普通的馬即使用上十天也只能走那麼遠,這就 像吞舟之魚不游支流,鴻鵠高飛不集汙池一樣 ,各自選擇了與自 己能力相符的事情去做 。 20 答案正確,但理由錯誤 • 5. 下列選項「」中的字,何組讀音相同? – (A)「迄」今未成/「屹」立不搖 – (B)金鑲玉「嵌」/命運「坎」坷 – (C)寂「寥」冷清/「謬」誤百出 – (D)千叮萬「囑」/引人「矚」目 • GPT-4 輸出: – 選擇 (B) 「嵌」和「坎」兩字的讀音相同,都是 "kǎn"。 – 選項 (A) 中「迄」的讀音為 "qì",「屹」的讀音為 "yì"。 – 選項 (C) 中「寥」的讀音為 "liáo",「謬」的讀音為 "miù"。 – 選項 (D) 中「囑」的讀音為 "zhǔ",「矚」的讀音為 "zhǔ"。 尽管這兩個詞的讀音相同,但是由於問題中明確表示選項 內兩個詞的讀音相同,因此選項(D)並不正確。 21 ChatGPT改作文! 22 ChatGPT改作文 • 評分標準來自臺灣國中會考 – https://cap.rcpet.edu.tw/exam3-1.html – 完整對話: https://chat.openai.com/share/e6bfbf5f-a031-48c9-a0df-d6fa5b5ba498 • 作文範例分別有: – 1.新年新希望 • 性質:國小五年級學生作文 • 網址:http://ww2.dyes.tyc.edu.tw/~105ebs/35.html – 2. 如果我有一座新冰箱 • 性質:補習班老師所寫學測範文 • 網址:https://www.chenti-chinese.com/【110學測】國文作文範文|學測作文題 目與範文|/ – 3.我所知道的康橋(第一段落) • 性質:朱自清的『背影』 • 網址:https://www.edb.gov.hk/attachment/tc/curriculum-development/kla/chiedu/resources/primary/lang/culture/03_040.pdf 23 初見ChatGPT小結 • ChatGPT的知識淵博,讀完全部的Wikipedia, 而且記憶能力超強 – 所有領域的靜態知識,可以完全記憶並提取 • ChatGPT具備理解、推理能力 – 文意理解能力強大 – 推理邏輯達大學程度!? – 讀完一大堆文字就具備? • ChatGPT能將知識融會貫通!? – 能回答問題,又能出題 – 懂數學原理,又會寫程式 24 GPT原理與應用實驗 25 可以從其原理學到什麼 • 如何人機協作,產生創意文字! • 光是訓練機器「預測下個字」,就可以理解文 意,並生成文字!? • 機器的語文理解與生成原理這麼簡單,人類如 何向其學習? 26 ChatGPT 是什麼? • ChatGPT = Chat + GPT – GPT = Generative Pretrained Transformer • 基於人工神經網路的一種「生成式預訓練語言模型」 • 語言模型 的 實作利器 • ChatGPT 家族 – GPT、GPT-2、GPT-3、GPT-3.5、GPT-4 • OpenAI 公司於2022/11/30日發佈ChatGPT – 網頁:https://chat.openai.com/chat – 一般使用者可免費註冊使用 – 付費使用者(每月20美元)可使用GPT-4 27 語言模型的實作利器: 人工神經網路 GPT Transformer - Encoder: BERT - Decoder: GPT BERT 疊 出 N 個 區 塊 28 GPTs: large Language Models • GPT: 2018/06/11, https://cdn.openai.com/research-covers/languageunsupervised/language_understanding_paper.pdf – Improving Language Understanding by Generative Pre-Training • GPT-2: 2019/02/14, https://cdn.openai.com/better-languagemodels/language_models_are_unsupervised_multitask_learners.pdf – Language Models are Unsupervised Multitask Learners • GPT-3: 2020/05/28, https://arxiv.org/abs/2005.14165 – Language Models are Few-Shot Learners 29 Block Input Dimension Parameters (M) Training Data Size GPT 12 512 117 1 GB GPT-2 Small 12 768 117 40 GB GPT-2 Medium 24 1024 345 40 GB GPT-2 Large 36 1280 762 40 GB GPT-2 Extra Large 48 1600 1,542 40 GB GPT-3 96 2048 175,000 45 TB (570GB) GPTs: large Language Models • InstructGPT: 2022/01/27, https://arxiv.org/abs/2203.02155 – Training language models to follow instructions with human feedback – Additional data for supervised training: 13k, 33k, 31k training prompts • ChatGPT: 2022/11/30, https://openai.com/blog/chatgpt • GPT-4: 2023/03/14, https://openai.com/research/gpt-4 30 Layers Input Dimension Parameters (M) Training Data Size InstructGPT (GPT 3.5) 96 2048 175,000 570GB? ChatGPT 96? 2k~4k? > 175,000 ? ? GPT-4 ? 2k~32K >8*175,000? ? List of Large Language Models 31 Name Release date Developer GPT-2 2019 OpenAI 1.5 billion[22] 40GB (~10 billion tokens) MIT GPT-3 2020 OpenAI 175 billion[11] 499 billion tokens[24] public web API Ernie 3.0 Titan Dec-21 Baidu 260 billion[33] 4 Tb Proprietary Claude Dec-21 Anthropic 52 billion[35] 400 billion tokens[35] Closed beta GLaM Dec-21 Google 1.2 trillion[37] 1.6 trillion tokens[37] Proprietary LaMDA Jan-22 Google 137 billion[40] 1.56T words, 168 billion tokens Proprietary Chinchilla Mar-22 DeepMind 70 billion[42] 1.4 trillion tokens Proprietary PaLM Apr-22 Google 540 billion[43] 768 billion tokens[42] Proprietary OPT May-22 Meta 175 billion[44] 180 billion tokens[45] Non-commercial research[d] BLOOM Jul-22 Hugging Face 175 billion[14] 350 billion tokens (1.6TB) Responsible AI Galactica Nov-22 Meta 120 billion 106 billion tokens[50] CC-BY-NC-4.0 AlexaTM Nov-22 Amazon 20 billion[51] 1.3 trillion[52] public web API LLaMA Feb-23 Meta 65 billion[54] 1.4 trillion[54] Non-commercial research GPT-4 Mar-23 OpenAI Unknown[f] Unknown public web API BloombergGPT Mar-23 Bloomberg L.P. 50 billion 363 billion Proprietary PanGu-Σ Mar-23 Huawei 1.085 trillion 329 billion tokens[60] Proprietary Number of parameters Corpus size License Data are from: https://en.wikipedia.org/wiki/Large_language_model 大型語言模型的進展 2023/04 “Harnessing the Power of LLMs in Practice: A Survey on ChatGPT and Beyond”, Yang, Jin, Tang, Han, Feng, Jiang, Yin, and Hu, https://arxiv.org/abs/2304.13712 32 GPT 原理 33 電腦如何自動生成語言文字 • 電腦如何知道正確的詞語文句? – 很… • 很好、很土 (都是有意義的詞彙,電腦可事先記錄) – 天氣很… • 天氣很好 (正確的語句) • 天氣很土 (不正確的語句) • ChatGPT為什麼不會生成「今天天氣很土」的文句? • 不可能用死記硬背法記住所有的詞彙、文句, 以用來產生新的文句 34 語言模型(Language Model) • 語言模型(language model):在獲知前t個字詞後, 需要準確的估計下一個字詞的條件機率: 𝑃( 𝑤(𝑡+1) | 𝑤(𝑡), 𝑤(𝑡−1), …, 𝑤(1) ) • • 語言模型只是數學上簡單的條件機率,但如何實作一個語言模型,是研究重點。 建構語言模型的問題,稱為「語言建模」(Language Modeling) • 應用範例:從語音訊號辨識出「mao zhuo lao shu」四個音以及前三 個字「貓捉老」之後,下面的條件機率應該要符合: • 𝑃( 鼠 | 老, 捉, 貓 ) > 𝑃( 樹 | 老, 捉, 貓 ) • 亦即「貓捉老鼠」應有較大的機率,雖然其音跟「貓捉老 樹」一樣(音調不計),但依照常識在自然語言的表達上 更為常見、更為合理 • 我們希望建立出一個很好的語言模型,供電腦運用 35 語言建模(Language Modeling) • 語料庫C=(貓跳, 狗躍, 貓奔, 狗跑, 跑車) – 用極小(五個字句)的 C 擬訓練出𝑃(跳|貓)等條件機率 – 最大似然估計(maximum likelihood estimation)可得: 𝑃(跳|貓) = P(貓跳) / P(貓) = 1/2 = 0.5 𝑃(奔|貓) = P(貓奔) / P(貓) = 1/2 = 0.5 – 因為在C中貓出現2次,而貓跳、貓奔各出現1次 – 但是條件機率: 貓 跳 𝑃(跳|狗) = P(狗跳) / P(狗) = 0/2 = 0.0 𝑃(奔|狗) = P(狗奔) / P(狗) = 0/2 = 0.0 • C訓練出來的語言模型,幾乎不會產生(狗跳, 狗奔)的詞句 • 但事實上,不僅C中有類似的概念(狗躍, 狗跑),於一般 語言常識上也應該允許該詞彙的出現。 36 改進語言建模的方式 • 傳統統計方法:離散空間的字詞表達方式 (discrete space word representation) • 2003年神經機率語言模型:連續空間的字詞表 達方式(continuous space word representation) Embedding:相似的概念,有相似的向量 狗(-0.9, 1.0) 貓 (-1.1, 0.8) 躍(1.1, -0.8) 跳(1.2, -1.1) 車(-0.8, -1.1) 37 奔(0.9, -1.3) 跑 . (0.8, -1.2) 語料庫中未出現的: 狗跳、狗奔等詞 可以因為鄰近: 貓跳、貓奔 而推論出現高機率。 優點: 1. 減緩了訓練語料無論大小,都 無法窮舉所有語言現象的困擾; 2. 透過神經網路的學習,可以學 出「類似概念有近似向量」。 One-hot Encodings vs Embedding Vectors 貓 = (1, 0, 0, 0, 0, 0, 0) <=> (-1.1, 0.8) 狗 = (0, 1, 0, 0, 0, 0, 0) <=> (-0.9, 1.0) 奔 = (0, 0, 1, 0, 0, 0, 0) <=> ( 0.9, -1.3) 跑 = (0, 0, 0, 1, 0, 0, 0) <=> ( 0.8, -1.2) 跳 = (0, 0, 0, 0, 1, 0, 0) <=> ( 1.2, -1.1) 躍 = (0, 0, 0, 0, 0, 1, 0) <=> ( 1.1, -0.8) 車 = (0, 0, 0, 0, 0, 0, 1) <=> (-0.8, -1.1) One-hot encoding (獨熱編碼): • 每個位置代表一個詞彙、概念 • N個詞彙、N個維度 • 每個詞彙(維度)由一個neuron表示 • Neuron擅長於表示 0到1 (或 -1到1)的值 38 Embedding vector (嵌入向量): • 每個詞彙、概念由一組較 低維度,但連續的值表示 • 相似的概念有相似的向量 語言模型運用範例(based on GPT-2) https://demo.allennlp.org/next-token-lm 39 如何選擇下一個字的方法,稱為 解碼演算法 (Decoding Algorithm) 解碼演算法(Decoding Algorithms) • 貪婪法(Greedy): – 選擇概率最大的單詞輸出 • 純採樣法(Pure sampling): – 從所有詞彙中,依照單詞的機率,採樣出一個單詞輸出 • Top-K Sampling: – 前 K 個機率最高的詞彙,純採樣出一個單詞 • Top-p Sampling / Nucleus Sampling: – 前X個機率最高的詞彙,累計其「機率和」超過門檻 p , • Beam Search: – Given a k for number of words to keep when generating the output – Select the path that is most likely – When k=1, it reduces to the greedy algorithm – Good for translation, but bad for text generation 1. https://medium.com/voice-tech-podcast/visualising-beam-search-and-otherdecoding-algorithms-for-natural-language-generation-fbba7cba2c5b 2. https://www.youtube.com/watch?v=3oEb_fFmPnY&t=1084 40 電腦生成語言 = 應用 語言模型 + 解碼演算法 • 電腦生成文字,可以有隨機性,每次生成都不同 • 應用 語言模型 要先做 語言建模 • 有效的語言建模: – 以 神經網路 學習文字順序(預測下個字) – 電腦需要閱讀 高品質 的 極大量 文字 • 如何讓電腦吐出符合人類福祉的文字順序 – 需要進一步訓練電腦,讓其輸出與人類福只對列 (alignment),也就是要「教育電腦」 41 神經機率語言模型的元件 神經網路(Neural Networks) • 人工神經網路(Artificial Neural Networks) • 人工神經網路的理論 – 科學家證明:只要在輸入層與輸出層中間多加一層隱藏 層,就可以學習出任意的函數 • Hornik, K. (1991). Approximation capabilities of multilayer feedforward networks. Neural Networks, 4(2), 251-257. doi:https://doi.org/10.1016/0893-6080(91)90009-T – 但是,為了解決某一問題,隱藏層中要有多少神經元, 卻沒有答案 • 工程師的經驗是:一層一層的疊出神經網路, 較容易進行訓練,解決問題 – 每一層都在進行某種轉換,一直到最後一層,問題被轉 換到容易分類、預測的狀態 42 A Single (Artificial) Neuron (神經元) • Prove to solve any linear separable problem • Using gradient descent to learn to adjust the weights 1 w0 X1 Inputs, (stimuli) X2 . . . Source: Wikimedia Commons w1 𝒏 w2 ! 𝒙𝒊 𝒘𝒊 O 𝒊"𝟎 wn Xn Weights, (synapses) Sum of the total stimuli Activation function, non-linear http://playground.tensorflow.org/ 43 A Layer of Neurons A connection from neuron i to neuron j has a weight called wji 1 w01 w11 w1i X1 Xi Xn Z1 . . . wji Zj wmi w1n Zm wmn g(z) z 𝑧$ 𝑤$$ ⋮ = ⋮ 𝑧% 𝑤%$ Z = WX Y= 𝑔 𝒁 = 𝑔 ⋯ 𝑤$& 𝑥$ ⋱ ⋮ × ⋮ ⋯ 𝑤%& 𝑥% 𝑧$ ⋮ 𝑧' ⋮ 𝑧% 𝑔(𝑧$ ) ⋮ = 𝑔(𝑧' ) ⋮ 𝑔(𝑧% ) 神經網路的運算,主要是矩陣的運算 GPU (Graphical Processing Unit)可以快速進行矩陣運算 44 • Latent Semantic Indexing for embedding Assume there are n=5 movies viewed and rated by m=7 persons, as below, the Singular Value Decomposition (SVD) of the input matrix yields 2 majors groups (topics): 𝐴!×# = 𝑈!×$ Σ$×$ 𝑉#×$ % ≈ 𝑈!×& Σ&×& 𝑉#×& % P1 𝟏 𝟏 𝟏 0 0 0.13. 0.02Person to Topic 0.41. 0.07 P2 𝟑 𝟑 𝟑 0 0 Topic to Topic 0.55. 0.09 P3 𝟒 𝟒 𝟒 0 0 12.4 0 0 0 𝟓 𝟓 𝟓 ≈ × 0.68 . 0.11 P4 0 9.5 0.15 −0.59 0 𝟐 0 𝟒 𝟒 P5 0.07 −0.73 P6 0 0 0 𝟓 𝟓 0.07 . −0.29 Topic to Movie P7 0 𝟏 0 𝟐 𝟐 星 駭 美 電 海 0.56 0.59 0.56 . 0.09 . 0.09 × 際 客 國 子 角 0.12 −0.02 0.12 −0.69 −0.69 大 任 隊 情 七 戰 務 長 書 號 P8= 5 0 0 0 0.56 0.59 0.56 0× 0.12 −0.02 0.12 Cosine similarity is 0.0 in 5-d vector P9= 0 45 4 5 0 0.56 0.59 0.56 0× 0.12 −0.02 0.12 0.09 −0.69 0.09 ! = 2.81 −0.69 0.63 0.09 −0.69 0.09 ! = 5.18 −0.69 0.52 Cosine similarity is now 0.99 Data are from: https://www.youtube.com/watch?v=K38wVcdNuFc Learning Embeddings from Data 𝟏 𝟑 𝟒 𝟓 0 0 0 𝟏 𝟑 𝟒 𝟓 𝟐 0 𝟏 1 𝟏 𝟑 𝟒 𝟓 0 SVD_NN 0 Input0 Layer 5 -0.28,-0.26 4 3 -0.31,-0.29 前一層網路計算結 果(嵌入、轉換) -0.17,-0.12 讓下一層網路較簡 單完成任務 -0.06, bias 0 0 0 0 𝟒 𝟓 𝟐 46 2 0.36,0.28 [0, 0, 0, 5, 0] [0, 0, 0, 0, 3] 0.33,0.34 -0.06 7 6 tanh tanh -0.97,-0.84 For all the weights in the network, see the output of SVD_NN.py 0 0 0 0 input 𝟒 Test Input: 𝟓 [5, 0, 0, 0, 0] 𝟐 [0, 4, 5, 0, 0] 0.10 8 tanh Output Layer Target Actual Output: Output: [ 1] [ 0.9354 ] [ 1] [ 0.9525 ] [-1] [-0.9166 ] [-1] [-0.8322 ] 1 1 1 1 -1 output -1 -1 透過資料的訓練,可以找出嵌入向量 星際大戰 = (1, 0, 0, 0, 0) <=>(-0.28, -0.26) 駭客任務 = (0, 1, 0, 0, 0) <=>(-0.17, -0.12) 美國隊長 = (0, 0, 1, 0, 0) <=>(-0.31, -0.29) 電子情書 = (0, 0, 0, 1, 0) <=>( 0.33, 0.34) 海角七號 = (0, 0, 0, 0, 1) <=>( 0.36, 0.28) One-hot encoding: • 每個位置代表一個詞彙、概念 • N個詞彙、N個維度 • 每個詞彙(維度)由一個neuron表示 • Neuron擅長於表示 0到1 (或 -1到1)的值 47 Embedding vector: • 每個詞彙、概念由一組較 低維度,但連續的值表示 • 相似的概念有相似的向量 嵌入向量: 將相似的概念轉換成相似的向量 文字、圖片、語音、視訊皆可轉成 嵌入向量 GPT-4 可以接受文字與圖片的輸入 Zineng Tang, Ziyi Yang, Chenguang Zhu, Michael Zeng, Mohit Bansal, Any-to-Any Generation via Composable Diffusion https://arxiv.org/abs/2305.11846 48 Transformer Graph is from the 2017 paper: Attention Is All You Need • Self-Attention • Multi-head attention • Byte Pair Encoding (BPE):解決詞彙 量不夠與未知詞問題 • Positional Encoding: 學習詞彙的順序與距離 • Layer Normalization, Residual Connection: 增進網路的學習效率 和穩定性 49 GPT的訓練方式 • 自我監督(self-supervised),不必人工標記 • 內部遮罩機制,確保在預測第i個輸出字詞時,只用到輸入 的第1到第i個字詞,不會用到(i+1)以後的字詞資訊 從眾多中文字中,要預測出「初」。 亦即,給定輸入「人之」要學習到「初」有最大機率 每個輸出位置都是 1-out-of-N 編碼 從眾多中文字中, 要預測出「之」。 亦即,給定輸入 「人」,要學習到 「之」有最大機率 50 之 初 1 2 , 性 本 … 512 GPT (Transformer Decoder) 1 2 人 之 512 初 , 性 … Attention: 公式與效果 • 𝐴𝑡𝑡𝑒𝑛𝑡𝑖𝑜𝑛 𝑄, 𝐾, 𝑉 = 𝑠𝑜𝑓𝑡𝑚𝑎𝑥 ()! *" 𝑉 • 𝑀𝑢𝑙𝑡𝑖𝐻𝑒𝑎𝑑 𝑄, 𝐾, 𝑉 = 𝐶𝑜𝑛𝑐𝑎𝑡 ℎ𝑒𝑎𝑑$ , … , ℎ𝑒𝑎𝑑& 𝑊 + • ℎ𝑒𝑎𝑑, = 𝐴𝑡𝑡𝑒𝑛𝑡𝑖𝑜𝑛(𝑄𝑊,( , 𝐾𝑊,- , 𝑉𝑊,. ) 代名詞注意 到其所代表 的主詞而緩 和指代消解 Coreference Resolution 的問題 51 注意力關注 在動詞與其 發起者或是 作用對象 GPT 的應用實驗 52 GPT-2 與 BERT 運用於情感對話 使用者發話後,可以 選擇希望電腦回應的 情緒,請電腦回應 與選擇的 情緒 • 53 • 楊德倫, 曾元顯*, "建置與評估文字自動生成的情感對話系統", 教育資料與圖書館學, Vol. 57, No. 3, Nov. 2020, pp. 355-378. 曾元顯, 楊德倫, 情緒回話系統, 中華民國發明專利,專利號 : I 776589. 54 語言生成範例 55 語言生成範例 56 真新聞有多真、假新聞有多假 30萬篇經濟新聞訓練GPT-2 下面甲、乙兩篇新聞,請問: (1)甲是電腦寫的新聞、乙是記者寫的新聞 (2)兩篇都是記者寫的新聞 (3)甲是記者寫的新聞、乙是電腦寫的新聞 (4)兩篇都是電腦寫的新聞 註:內容大致是關於2010到2013年的新聞。 57 https://www.facebook.co m/yuenhsien.tseng/post s/10219986012864961 曾元顯, 林郁綺, " 電腦生成的新聞有多真?─文字自動生成技術運用於經濟新聞的 評估", 圖書資訊學刊, Vol. 19, No. 1, June 2021, pp. 43-65. 甲是記者寫的、乙是電腦寫的新聞 以45247筆英文論文訓練GPT-2 Medium 01. 無錯誤篇數統計(30篇) 02. 平均錯誤數統計 生成方式 人類 撰寫 4 訓練5回 之模型 生成方式 訓練10回 訓練50回 之模型 之模型 前導文 0 8 6 標題 4 7 5 標題+第1句 2 2 5 標題+前2句 7 6 9 標題+前3句 註:數字越高越佳 人類 撰寫 3.17 訓練5回 之模型 訓練10回 訓練50回 之模型 之模型 前導文 2.60 1.47 2.20 標題 1.70 2.07 1.90 標題+第1句 2.27 1.90 2.10 標題+前2句 1.83 2.10 2.03 標題+前3句 註:數字越低越佳 張悅倫, 文字生成技術應用於學術論文寫作之評估─以人工智慧領域論文摘要為例, 2022, 臺師大圖資所碩士論文 58 以45247筆英文論文訓練GPT-2 Medium 03. 平均分數統計 生成方式 人類 撰寫 80.03 訓練5回 之模型 訓練10回 訓練50回 之模型 之模型 前導文 81.87 85.80 82.20 標題 84.20 82.00 81.97 標題+第1句 80.60 83.83 80.57 標題+前2句 81.17 78.03 79.27 標題+前3句 電腦生成摘要成效佳, 能與人類撰寫摘要相仿。 綜合以上三種統計結果, 「訓練10回之模型搭配標題做為前導 文」之組合表現最佳 註:數字越高越佳 張悅倫, 文字生成技術應用於學術論文寫作之評估─以人工智慧領域論文摘要為例, 2022, 臺師大圖資所碩士論文 59 以45247筆英文論文訓練GPT-2 Medium • 生成的摘要文字中,與訓練資料重複的比例:62/130≈0.477 60 張悅倫, 文字生成技術應用於學術論文寫作之評估─以人工智慧領域論文摘要為例, 2022, 臺師大圖資所碩士論文 GPT擅長:移花接木,再加潤飾 政治衝突事件不僅對全球股市造成衝擊,根據lipper統計,債券市場中偏 向風險性資產的高收益債、新興市場債,在經歷政治事件衝突後一個月, 平均表現亦難逃疲軟命運。摩根富林明債券產品策略長劉玲君指出,全 球央行持續寬鬆政策,資金持續流入收益率較高的投資等級債券,加上 企業獲利穩健且違約率維持低檔,將有助於債券價格續漲。劉玲君分析, 目前全球央行的貨幣政策,主要是維持寬鬆政策,不會讓美國公債殖利 率維持在目前水準,且在美國經濟溫和成長環境下,資金可望持續流向 收益率較高的債券。劉玲君認為,在低利率環境下,投資級債券具備相 對較佳的收益率,且利率風險相對較小,投資人若想在震盪環境中,尋 求較佳的收益率,將是最佳選擇。 「目前全球央行的貨幣政策」、「主要是維持寬鬆政策」、「劉玲君認為,在低利 率環境下」等這些語句,根本沒有出現在30萬篇新聞語料中。 「全球央行的貨幣政策」則出現在3篇新聞中、「維持寬鬆政策」出現在76篇中、 「劉玲君認為」出現48篇,「在低利率環境下」出現78篇 61 曾元顯, 林郁綺, " 電腦生成的新聞有多真?─文字自動生成技術運用於經濟新聞的評 估", 圖書資訊學刊, Vol. 19, No. 1, June 2021, pp. 43-65. 工商時報-名家評論 • AI寫新聞的技術與風險,曾元顯,2021/03/02 62 Lessons Learned • GPT-2生成的文字,拼字或文法上的錯誤比人類低 • 針對學習過的文字內容,GPT生成文字時的「移花接木、 再加潤飾」的能力非常強,可以生成通順且創新的文字。 • 對於訓練資料裡面較為稀少的主題與內容, GPT生產出來 的文字可能會有不連貫的內容、甚至前後矛盾、或是無中 生有的故事(hallucinations ) • 電腦生成文字時,需要前導文的輸入刺激,所以我們輸入 的發話文字長短與內容,會大幅影響GPT生成的文字 • GPT的文字理解能力,令人驚艷,但是在語言小地方的微 妙之處,可能還不能掌握的很好。所以諷刺文字、一字之 差的反轉文字,其可能會誤解。 • 輸入時,內容描述的越精確詳實(但不必冗長), GPT的 回答就會越符合預期。 63 ChatGPT 多了什麼? 64 訓練資料中前後文呈現的提示(Prompt) • 訓練資料中自然發生的 法語到英語翻譯的示例 – French: ‘xxx’, translate • 很多情況都大致符合: – P(output | input, task) • GPT有機會作任何任務 – 但輸出不見得符合人 的期待 From GPT-2, 2019, Language Models are Unsupervised Multitask Learners • ChatGPT於焉誕生 65 InstructGPT: Aligning language models to follow instructions GPT-3以為要接續產出更多類似的話題 強調 Explain 的任務後,InstructGPT可以接續產出解釋給6歲小孩懂 https://openai.com/research/instruction-following 66 預訓練 + 微調訓練 世界第一高峰是亞洲的屋脊,位於… 亞洲的屋脊 -3 Foundation Model InstructGPT 世界第一高峰是 Fine-tuned Model 喜馬拉雅山 2023,李宏毅,https://drive.google.com/file/d/1Ue4J-Kk4ScFTq-UIs8hW9E2h5BAbu-oo/view 67 預訓練 + 微調訓練 + 增強式學習 -3 InstructGPT InstructGPT 2023,李宏毅,https://drive.google.com/file/d/1Ue4J-Kk4ScFTq-UIs8hW9E2h5BAbu-oo/view 68 Overall quality of InstructGPT 2022/03 Ouyang et at. Training language models to follow instructions with human feedback https://arxiv.org/abs/2203.02155 3 69 3 用於 微調訓練 大語言模型 的 指令任務 Figure 2: The top 20 most common root verbs (inner circle) and their top 4 direct noun objects (outer circle) in the generated instructions. Despite their diversity, the instructions shown here only account for 14% of all the generated instructions because many instructions (e.g., “Classify whether the user is satisfied with the service.”) do not contain such a verb-noun structure. Self-Instruct: Aligning Language Model with Self Generated Instructions 70 https://arxiv.org/abs/2212.10560 Performance of GPT-4 in various Languages 同時學多種語言,可以讓訓練資料多的語言的能力,彌補資料少的語言的能力 Massive Multitask Language Understanding( MMLU): 57 tasks including elementary mathematics, US history, computer science, law, and more. https://arxiv.org/ abs/2009.03300 71 https://openai.com/research/gpt-4 GPT-4 Performance on Academic and Professional exams. https://openai.com/research/gpt-4 72 為什麼要用大型語言模型? 73 四個分類測試集 主題分類實驗結果 WebDes_1686 News_914 Models Features MicroF1 MacroF1 NB SVM RF NN CNN RCNN fastText BERT Word Count Char N-gram TFxIDF Char N-gram Word Embedding Word Embedding Word Bi-gram 0.7444 0.7851 0.6111 0.8037 0.6444 0.6518 0.7518 0.7963 0.6244 0.7388 0.3648 0.7400 0.4231 0.4135 0.6186 0.8283 CTC_27320 Models Features NB SVM RF NN CNN RCNN fastText BERT Word Count TFxIDF Char N-gram Char N-gram Word Embedding Word Embedding Word Bi-gram 74 MicroF1 MacroF1 0.4243 0.4963 0.3507 0.4559 0.3605 0.3559 0.4557 0.4217 0.1669 0.3706 0.1560 0.3312 0.1709 0.1699 0.2838 0.3394 Time (secs) 0.01 0.16 0.07 3.98 27.69 27.94 <1 4106 Time (secs) 0.96 32.12 18.37 94.51 3580 3579 <5 Models Features NB SVM RF NN CNN RCNN fastText BERT Word Count TFxIDF Word Count Word Count Word Embedding Word Embedding Word Bi-gram MicroF1 MacroF1 0.8004 0.8346 0.8044 0.8245 0.7943 0.7883 0.8024 0.8730 0.6129 0.7160 0.6203 0.6856 0.6124 0.6001 0.6281 0.7684 Reuters_9130 Models Features NB SVM RF NN CNN RCNN fastText BERT Word Count TFxIDF TFxIDF TFxIDF Word Embedding Word Embedding Word Bi-gram MicroF1 MacroF1 0.8824 0.9513 0.8450 0.9482 0.9396 0.9377 0.9369 0.9124 0.4112 0.7573 0.3556 0.7541 0.6906 0.6885 0.6784 0.4581 Time (secs) 0.01 0.07 0.06 5.15 8.91 8.56 <1 3332 Time (secs) 0.08 1.42 0.94 25.44 175 175 <3 16223 107890 Yuen-Hsien Tseng, " The Feasibility of Automated Topic Analysis: An Empirical Evaluation of Deep Learning Techniques Applied to Skew-Distributed Chinese Text Classification," Journal of Educational Media & Library Sciences, Vol. 57, No. 1, pp. 121-144 (March 2020). Train Test Category ID for News Number of documents Number of documents 四個分類測試集的類別分布 Train Test Category ID for WebDes 3000 4000 3500 3000 2500 2500 Train Test 2000 Train 2000 Test 1500 1500 1000 1000 500 500 0 1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61 64 67 70 73 76 79 Category ID for CTC 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 Category ID for Reuters 75 Yuen-Hsien Tseng, " The Feasibility of Automated Topic Analysis: An Empirical Evaluation of Deep Learning Techniques Applied to Skew-Distributed Chinese Text Classification," Journal of Educational Media & Library Sciences, Vol. 57, No. 1, pp. 121-144 (March 2020). 大語言模型的理解能力較佳,分類效果好 推文心理狀態11種面向的分類,每種心理面向都區分為 -2, -1, 0, +1, +2 五類; 3300筆資料中,0的類別有3060筆(佔 92%),類別分布非常不平均。 BERT (vinai/bertweet-base) Facet M1 M5 M10 R1 R2 S1 S2 HA1 HA2 HE1 HE2 76 MicroF1 0.9556 0.9680 0.9505 0.9461 0.9538 0.9529 0.9574 0.9197 0.9544 0.9485 MacroF1 0.5568 0.7685 0.5755 0.4743 0.5718 0.5987 0.6000 0.2968 0.5502 0.6289 0.9266 0.567 GPT 3 (API) Facet M1 M5 M10 R1 R2 S1 S2 HA1 HA2 HE1 HE2 MicroF1 0.9719 0.9689 0.9586 0.9793 0.9763 0.9556 0.9734 0.9467 0.9630 0.9719 0.9393 MacroF1 0.8053 0.8110 0.6906 0.8337 0.8363 0.7044 0.7997 0.6205 0.7678 0.8322 0.6865 語 言 模 型 越 大 ̅ 文 件 理 解 能 力 越 好 需要大型語言模型的理由 • 訓練資料需求少 – 僅需要給指示(Instruction)或是提示(Prompt)! – 最多僅少數展示範例 • Zero shot: no examples, only instruction • Few shot: 1-60 examples • 一個模型可以執行多種任務 • 很多能力在大型語言模型才能觀察得到 (湧現能力!?) 77 湧現能力Emergent Abilities – Large Models The ability to perform a task via few-shot prompting is emergent when a language model achieves random performance until a certain scale, after which performance significantly increases to well-above random. 78 2022, Emergent Abilities of Large Language Models, https://arxiv.org/abs/2206.07682 Emergent Abilities – Large Datasets 也有要大數據才能創造出湧現能力 • 大型預訓練模型獲得語言理 解改進的主要驅動力 • 只需要大約 一千萬或 一億 個單詞,即可學習多數的句 法和語義 • 需要大量的數據,如30B字 符,以獲得足夠的常識、知 識和掌握下游任務所需的其 他技能 Yian Zhang, Alex Warstadt, HaauSing Li, Samuel R. Bowman, “When Do You Need Billions of Words of Pretraining Data?” https://arxiv.org/abs/2011.04946, 2020 Nov. 79 語言知識 其他,如世界常識 大資料與大模型的平衡 • Chinchilla(龍貓) • LLaMA(駱馬) • LLaMA 2 可商業 應用 模型小 資料大 80 模型大 資料小 2022, DeepMind, Training Compute-Optimal Large Language Models https://arxiv.org/abs/2203.15556 ChatGPT進階使用案例 81 Prompt 寫作的重要性 • AI 時代的 圖書館員 (與咒語召喚師)年薪這 麼高: – 17.5萬到33.5萬元美金! – 已提高: • The expected salary range for this position is $280k $375k. – https://jobs.lever.co/Anthropic/e3cde481-d446460f-b576-93cab67bd1ed (accessed on 2023/05/28) 82 Prompt Tricks - 提示詞撰寫策略 1. Task Definition / Instruction – Explicit instruct LLM to do one thing at a time – Ex: 請幫我改寫下面的推薦函,使其更正式、更吸引人 2. Context – Provide the text required by the task, e.g., for rewriting or analysis 3. 4. 5. 6. 7. 8. Examples / demonstrations Answer format Role Assignment / Role Playing Self-criticize/ self-reflect Grounding/Alignment Chain of Thought guidance 1. 2. “When was Google founded? Answer: Let's think step by step. Google was founded in 1998. The final answer: 1998. 9. Use instructions and examples to reduce hallucination 10. Ask ChatGPT how to prompt 83 Chain of Thoughs (思維鏈) • • • 思維鏈推理允許模型將復雜問題分解為單獨解決的中間步驟。 思維鏈提示可以提高各種推理任務的性能. A CoT prompt:「Let’s think step by step」 只有足夠數量的模型參數(大約 100B,千億級別)才能實現思維鏈提示的好處 84 https://ai.googleblog.com/2022/05/language-models-perform-reasoning-via.html Chain of Thoughts • 在數學推論的問題上,採用思 維鏈,跟沒有採用,成效有巨 大的差別 – combining chain of thought prompting with the 540B parameter PaLM model leads to performance of 58%, surpassing the prior state of the art of 55% achieved by fine-tuning GPT-3 175B on a large training set and then ranking potential solutions via a specially trained verifier. • • Chain of thought actually hurts performance for most models smaller than 10B parameters The gains from chain of thought did not transfer perfectly among models https://ai.googleblog.com/2022/05/l anguage-models-perform85 reasoning-via.html ChatGPT進階使用案例 • 國科會科學教育計畫 – https://chat.openai.com/share/473301dd-4920-4dee-929eb7742b0925bc • 三元組知識擷取與視覺化 – Original prompt is from: https://github.com/hwchase17/langchain/blob/master/langchain/indexes/prompts /knowledge_triplet_extraction.py – https://chat.openai.com/share/9d836385-829b-4107-8e52-78a67ae851ba • 斷詞、情緒分類、意圖標記 – https://chat.openai.com/share/4fe58344-b42e-4711-8407-aa414292eb21 • 作文批改 – https://shareg.pt/dWP03ky 86 Learn English with ChatGPT (1/2) • Prompt https://awesome-english.com/如何用-chatgpt-學英/, 2023/05/09 – ChatGPT, please assume the roles of a psychologist and an English teacher. – When I write a message, please correct any grammatical mistakes and suggest a more native way to express the same idea. – Afterward, please provide a response as a psychologist in English. As a psychologist, please don’t advise for seeing other consulting, just answer the question. – Additionally, please introduce some advanced vocabulary words that might be challenging for me based on my English level. Please provide the English word along with its Traditional Chinese 繁體中文 meaning with no 拼音. – Each response will have four sections: • • • • 87 1. Grammar/word corrections (title:錯誤糾正), 2. More native expressions (title:美國人會這樣說), 3. Psychologist response (title:心理諮詢師的回應), and 4. Advanced vocabulary (title:高級詞彙介紹).” – All responses should be in English except section 4. – That’s it. Please get ready for my questions and inputs. https://awesome-english.com/如何用-chatgpt-學英/, 2023/05/09 Learn English with ChatGPT (2/2) • Prompt: i feel boring and life so hard, work so hard • ChatGPT: 88 More Tasks that can be done by ChatGPT/LLM 89 Personal Tutor • Question Answering style of summary • Socratic Questioning • Explanation – Explain XXX like I am five – Step by Step explanation • Counseling / Consoling • Consultant • Code explanation • Code debugging 90 Question Generation • Given the context, ask ChatGPT to generate questions for helping – yield a set of test items – generate FAQ – interview – fortify the argument in the context – criticize on the text – review on a paper/report 91 Text Expansion • Brain Storming (腦力激盪) • Write a scientific paper, book, … • Write a report (for an assignment) • Write a recommendation letter • Write a news story • Write a speech, joke, poem, email, acknlgmnt • Write a program code (Python, R, C/C++, Java, …) • Design a web page (HTML, CSS, JavaScript) • Suggest Excel functions, SQL commands • Writes codes for illustration, to draw a function, … • Write a new game 92 Text Shrinkage • Summarize a text • Give an title • Suggest keywords • Name a baby, an activity, new stores, … • Itemize a text • Tabulate a text 93 Text Transformation • Rewrite paper paragraphs • Rewrite recommendation letter • Correct spelling and grammatical errors • Translation (from Chinese to English or vice versa) 94 Zero-shot Text Analysis / Text Mining • Word Segmentation • Part-of-Speech Tagging • Name Entity Extraction • Keyword Extraction • Coreference Resolution(指代消解) • Sentiment analysis • Topic classification • Text Clustering 95 ONE MORE THING 96 當你不知道Prompt怎麼下的時候… • 對!就是去問 ChatGPT! – 它會告訴你怎們跟ChatGPT對談最有效率 – 還是要先遵循之前的原則,不要無腦的詢問 – Ex: https://chat.openai.com/share/b37544d6-5409-46d4-bdb249848a3532e1 Large Language Models Are Human-Level Prompt Engineers https://arxiv.org/abs/2211.01910 97 跟自己的文件對話 98 大型語言模型(Large Language Models) • Foundation Models 基底模型 – Ex: GPT-3, LLaMa, BLOOM, … – 以巨量資料訓練出來的LLM – 任務目標:預測下個字 P( word | “input text” ) – 更好的嵌入向量:語意相似的文字,對應到相似的向量 • Fine-tuned Models 微調模型 – Ex: ChatGPT, Vicuna, OpenAssistant … – 以數萬筆(提問、較佳回應)訓練出來的LLM – 任務目標:遵循指示,輸出符合人類福祉的回應 • 同一系列的上述兩個模型,神經網路架構完全一樣 – 權重數量相同,權重內容稍微不同 – 如何問,非常重要! 99 請問:GPT-4屬於哪一種? 跟自己的文件對話: 大型語言模型(LLM)、向量搜尋引擎 在語意比對、回應生成的應用 2 使用者 3 1 LLM2 (ChatGPT) 自己的語料 N篇文件 提問文句q 嵌入向量q 文字段落i 嵌入向量i 嵌入向量 語意比對 文字段落k 嵌入向量k 向量搜尋引擎 文字段落1 嵌入向量1 文字段落2 嵌入向量2 文字段落m 100 LLM1 LLM1 嵌入向量m 向量資料庫 跟自己的文件對話─程式 101 from PyPDF2 import PdfReader from langchain.embeddings.openai import OpenAIEmbeddings from langchain.text_splitter import CharacterTextSplitter from langchain.vectorstores import FAISS from langchain.chains.question_answering import load_qa_chain from langchain.llms import OpenAI import os; os.environ['OPENAI_API_KEY'] = 'Your Key' reader = PdfReader('/path/to/thesis.pdf') Text = ''.join([page.extract_text() for page in reader.pages]) text_splitter = CharacterTextSplitter( separator = “\n”, chunk_size = 1000, chunk_overlap = 200, length_function = len) texts = text_splitter.split_text(text) embeddings = OpenAIEmbeddings() docsearch = FAISS.from_texts( texts + faq, embeddings) chain = load_qa_chain(OpenAI(), chain_type="stuff") query = "這篇論文的作者是誰?" docs = docsearch.similarity_search(query) chain.run(input_documents=docs, question=query) 跟自己的文件對話─好處 • 可以探索自己的文件庫 • 可以用自己的文件資料庫做研究 • 可以讓ChatGPT幫忙融會貫通自己的文件知 識?! 102 使用ChatGPT該注意什麼 紐約律師被工具騙了 • Here’s What Happens When Your Lawyer Uses ChatGPT – Schwartz律師,在紐約從事法律工作已有30年。 – 其向法院提交一份辯護狀,引用了6個相關的法院判決, 結果6個都是虛假的,全都是ChatGTP生成的! – 從沒用過ChatGPT,沒有意識到它生成的內容是假的。 – 為了驗證這些案件的真實性,他讓ChatGPT驗證這些案 件的真實性。 – ChatGPT先是為之前的表述不清道歉,但還是堅稱這些 案件都是真實的,可以在Westlaw和LexisNexis上找到。 – https://www.nytimes.com/2023/05/27/nyregion/aviancaairline-lawsuit-chatgpt.html 104 使用ChatGPT的注意事項 • ChatGPT會生出幻覺、錯誤、誤導的資訊 – Ex:對 ChatGPT 進行提問(Prompt)時,要交代什麼, 才可以讓ChatGPT比較不會編造故事 • https://chat.openai.com/share/b37544d6-5409-46d4-bdb249848a3532e1 • 偶而會有偏見 (bias)、產生有害的 (toxic) 訊息 • 可能會洩漏個人、公司的資安、秘密 – 試探ChatGPT是否透露訓練資料中可能留存的個資、機敏 資料 – 個人使用ChatGPT時,是否提供個資、機敏資料 – 請Google:「prompt attack ChatGPT」以找出更多案例 105 現代老師應該知道的三件事 • 運用 ChatGPT協助寫出長篇論文、文章 1. 2. 3. 根據某個主題或描述,請 ChatGPT 列出十項相關的文章標題。 選擇其中一個標題,請 ChatGPT 列出符合該標題的文章目次。這樣 通常就會得出很棒的目次,如果不行,自己再加修改或是請 ChapGPT 重新產生。 https://youtu.be/WizoCwjEKsg 根據列出的目次,就每一章節,請 ChatGPT 撰寫相關的說明、論述。 • AI文字偵測器,用以自動偵測運用AI生成的文字 • 人工偵測AI生成文字的小技巧: 1. 2. 3. 106 AI會生出無中生有、甚至錯誤的資訊,可以據此判斷。 ChatGPT生成的 參考文獻、參考書目 不可靠,常是移花接木、再加 潤飾而來,在Google或是學術期刊資料庫中可能都找不到該文獻。 學生的文筆突然出現轉變。 偵測ChatGPT寫的文字? 107 GPT文章偵測器 (Off-the-shelf GPT Detectors) • 1. Originality.AI: https://app.originality.ai/api-access • 2. Quil.org: https://aiwritingcheck.org/ • 3. Sapling: https://sapling.ai/ai-content-detector • 4. OpenAI: https://openai-openai-detector.hf.space/ • 5. Crossplag: https://crossplag.com/ai-content-detector/ • 6. GPTZero: https://gptzero.me/ • 7. ZeroGPT: https://www.zerogpt.com/ Weixin Liang, Mert Yuksekgonul, Yining Mao, Eric Wu, and James Zou, Stanford University GPT detectors are biased against non-native English writers https://arxiv.org/abs/2304.02819 108 GPT detectors are biased against non-native English writers • • ChatGPT prompt for refining real TOEFL essays: – “Enhance the word choices to sound more like that of a native speaker: <TOEFL essay text>” ChatGPT prompt for adjusting real US 8th grade essays: – “Simplify word choices as of written by a non-native speaker: <8th essay text>” GPT detectors are biased against non-native English writers https://arxiv.org/abs/2304.02819 109 總結:ChatGPT的機會與挑戰! 110 挑戰 • 老師用ChatGPT出作業 • 學生用ChatGPT寫作業 • 只有ChatGPT認真學習 111 機會 • ChatGPT閱讀大量文章,並預測下一個字,就 能理解、生成有意義的文字!? – 在教育上: • 學生可不可以? • 有意義的學習? • 如何藉助AI引起學習動機? • 如何藉助AI管理情緒? 動機:影響長期的努力; 情緒:影響一時的決定。 – 在研究上: • 學習並應用知識的機制是什麼? • AI跟腦神經的關係,如何互相輔助? 112 By 曾元顯 ChatGPT的應用 - 提示詞撰寫策略 1. 任務定義/指示(Task Definition / Instruction) – 明確的要求(Explicit instruct LLM to do one thing at a time) – Ex: 請幫我改寫下面的推薦函,使其更正式、更吸引人 2. 前後文/相關文字(Context) – Provide the text required by the task, e.g., for rewriting or analysis 3. 4. 5. 6. 7. 輸入與輸出範例(Examples / demonstrations) 回應或是答案的格式(Answer format) 角色指派(Role Assignment / Role Playing) 自我批評/自我反思(self-criticize/self-reflect) 定錨、對齊(Grounding/Alignment) – 讓ChatGPT與你有共識後,再要求其回答問題 8. 思考鍊引導(Chain of Thought guidance) – “第44任美國總統的祖父其國籍為何? Let's think step by step. 9. 明確指示或使用範例已降低產生幻覺 113 10. 向ChatGPT詢問如何撰寫提示語 ChatGPT更多使用案例 • 心理輔導、伴讀、自學 • 英文、外語的學習 • 以適合某一年齡層、某一程度的方式解釋概念 • 活動命名、發想標題 • 設計遊戲、引起動機 • 撰寫新聞稿 • 幫忙起草、撰寫公文、比賽辦法 • 幫忙分析報告、評點不足之處(審查文章) 114 ChatGPT對老師、學生的直接幫助 • 將課本知識,轉換成生活上的問題與應用方式 – 讓學生覺得有用、學得有趣 – 讓學生將知識內化為技能 – 學習運用AI合作解決問題,改變以往獨自的學習型態 • 幫助教師進行課程教學 – 根據學生能力、興趣和性格訂定學習大綱、出題 – 協助分析學生學習的困難點 – 協助教師擬定課綱,減少行政時間 • 提升學生找出問題、描述問題的能力 • 教會學生思考ChatGPT提供的資訊正確性 115 ChatGPT與教育相關新聞 • 從臺灣第一線教學現場實驗,看教育界如何擁 抱ChatGPT浪潮 – https://www.ithome.com.tw/news/157509 • 英國羅素(教育)集團Russel Group發佈 採用 ChatGPT的五項原則 ─ 2023/07/04 – 大學將支持學生和教職員工具備人工智能素養。 – 工作人員應有能力支持學生在學習過程中有效、適當地使用生成式 人工智能工具。 – 大學將調整教學和評估,以納入生成人工智能的道德使用並支持平 等機會。 – 大學將確保學術嚴謹性和誠信得到維護。 – 隨著技術及其在教育中的應用的發展,大學將合作分享最佳實踐。 116 ChatGPT融入教學(1/2) • 讓ChatGPT當「助教」,課堂使用並融入教學 – 老師上課方式的改變,請ChatGPT加入討論 – 出作業前,先輸入到ChatGPT,測試回答內容 • 不好的作業範例: – 請學生分析紅樓夢的某一篇文章 • 改進的作業範例: – 請學生分析紅樓夢的某一篇文章,若使用ChatGPT生成, 請點評其內容的優缺點 • 如果非常完美不需要修改,要「詳述」這內容好在哪?並且也 要列出學生是「如何提問」ChatGPT • 作業改為團隊分組,ChatGPT較難一次完成 117 ChatGPT融入教學(2/2) • 同時使用同時測試Google 與ChatGPT,訓練 如何提問、搜尋資料、驗證資訊的正確性 • 到達一個程度,「提出問題」,比「解決問 題」重要! • 減少作業比例,改增加隨堂測驗/提問,實際訓 練學生的反應力 • 上課方式將會大翻轉 • 你覺得使用ChatGPT或是AI系統融入教學,還 有哪些可以改進教學的地方? 118 值得收藏的Prompt範例網站 • Top 30 Prompts for Teachers – • • https://flowgpt.com/collections/L4VkHGady TC1TGTDA8nF5 FlowGPT – https://github.com/Moonvy/OpenPromp tStudio • – https://flowgpt.com • AIshort – https://www.aishort.top • Snackprompt 提示語交易平台 LearningPrompt • PromptBase – https://promptbase.com • PromptHeroes • PublicPrompts – https://publicprompts.art • 119 AIArt – https://www.ai-art.com.cn/?prompt/ ChatGuide #中文调教指南 – https://chatguide.plexpt.com • ChatGPT学习宝典 – https://gpt.candobear.com/prompt • ChatGPTShortcut – https://ai.newzone.top • – https://promptheroes.cn • ImiPrompt – https://www.imiprompt.com/ – https://learningprompt.wiki • AIArt – https://www.ai-art.com.cn/?prompt/ – https://snackprompt.com • OpenPromptStudio LearnPrompting – https://learnprompting.org/zh-Hans/ • ChatGPT角色扮演 #TDChat – https://www.tdchat.com/playing.html 問答 120