[自然語言處理](https://app.notion.com/p/3e6fc631b03081b4a9e8f91f3411f61f) › [W1(9/10)](https://app.notion.com/p/3e7fc631b0308199953aef38ee86b0ae) › 01|影片 [0:01:25–0:17:50](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=85s)|投影片 Syllabus p.1–9|上一章 無|下一章 [02 生成式 AI 帶來的改變(0:17–0:34)](https://app.notion.com/p/3e7fc631b03081b2aaf1c69c5df0bfaf) ## 重點 - NLP 就是「讓電腦理解並使用人類的語言」。以前這件事大多靠語言學家的人工知識,現在電腦處理的比重越來越高。 - 老師引用 Eduard Hovy 的演講:LLM 時代連專家都說不出它為什麼會、為什麼不會。學 NLP 有三條路:讓 LLM 好用(工程)、有用(應用)、看得懂(研究)。 - NLP 變重要,是因為網路每天產生大量文字、人工看不完。從 2000 年的搜尋引擎到今天的 LLM,都在解這個問題;AI 幫忙寫論文已經在發生。 ## Exam-ready - **NLP (definition)**: "NLP = enabling computers to “understand” and “use” language."(Syllabus p.8) - 中文:NLP 就是讓電腦能「理解」和「使用」語言。白話:不只看得懂人話,還能拿來回答、翻譯、寫東西。難字:enabling(讓……能夠)、understand(理解)。 - **Language**: "Language is the most natural way humans communicate."(Syllabus p.8) - 中文:語言是人類最自然的溝通方式。白話:人跟人講話、寫字最直覺,所以電腦要跟人合作,就得先學會語言。難字:natural(自然的)、communicate(溝通)。 - **Massive text**: "Every day, the world generates massive text: news, social media, research papers, and customer records."(Syllabus p.8) - 中文:世界每天都產生大量文字:新聞、社群媒體、研究論文、客戶紀錄。白話:文字資料多到爆。難字:massive(大量的)、generate(產生)、customer records(客戶紀錄)。 - **Manual processing**: "Manually processing this data is impossible and inefficient."(Syllabus p.8) - 中文:靠人工處理這些資料是不可能的,也沒有效率。白話:人看不完,所以要交給電腦。難字:manually(用人工)、inefficient(沒效率的)。 - **Worries in the LLM era (Hovy)**: "I have no idea / that’s future work / I’ve never thought about it"(Syllabus p.6) - 中文:「我不知道/那是以後的研究/我從來沒想過」。投影片上三種追問(LLM 為什麼會?為什麼不會?LLM 不是已經做得到了嗎?)得到的都是這個回答。白話:大家其實說不出原因。難字:future work(之後再研究的題目)。 - **NLP engineering**: "NLP engineering: make LLMs usable"(Syllabus p.7) - 中文:NLP 工程:讓 LLM 用得起來。白話:做得更小、更便宜、更好操作。難字:usable(可以用的、用得起來的)。 - **NLP applications**: "NLP applications: make LLMs useful"(Syllabus p.7) - 中文:NLP 應用:讓 LLM 真的有用。白話:接上特定領域、公司和個人的需求,產生真正的價值。難字:useful(有用的)、applications(應用)。 - **NLP research**: "NLP Research: make LLMs understandable"(Syllabus p.7) - 中文:NLP 研究:讓 LLM 變得可以被理解。白話:搞懂這個黑盒子為什麼這樣做,才能保證它的品質。難字:understandable(可以理解的)。 - **Why is NLP important**: "Everyday life: Google Translate, Siri/ChatGPT, speech-to-text."(Syllabus p.9) - 中文:日常生活:Google 翻譯、Siri 和 ChatGPT、語音轉文字。白話:你每天用的翻譯和語音助理都是 NLP。難字:speech-to-text(語音轉文字)。 ## [0:01:25](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=85s) 開場:直播、錄影與 Slido 這門課有線上直播,也有錄影可以回看,所以學校才讓老師在一百人的教室開給這麼多學生修。第一週大約上兩小時,中間會休息。 上課問問題統一用 Slido(一個線上提問板,大家把問題打上去,老師挑來回答)。投影片第一頁寫著代碼 9433372,TAICA 的 NTU COOL 課程頁也找得到連結。 ## [0:02:59](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=179s) 老師與課程定位 老師是清大資工系的高宏宇,研究以 NLP 為主,也做資料探勘和機器學習。這門課是 TAICA 開的第三年,往年每年約 300–500 人修,大約八成的人修完。內容跟十年前的 NLP 課完全不同,現在會放大型語言模型(LLM,像 ChatGPT 這種讀過大量文字、能對話的 AI)。 為什麼老師建議先修機器學習?因為這門課偏進階,作業會直接叫你寫模型訓練,不會從頭教機器學習或深度學習。 這幾個詞先用白話認識(我補充):機器學習(machine learning)是給電腦看很多例子,讓它自己找出規律,而不是由人把規則一條條寫死。深度學習(deep learning)是機器學習的一種,用很多層的「神經網路」(一層層把輸入加工、最後給出答案的計算結構)來學,LLM 就是用它做出來的。資料探勘(data mining)是從一大堆資料裡挖出有用的規律,例如從購物紀錄看出哪些商品常被一起買。 比喻:像直接報名進階料理班,第一堂就要你下廚,刀工最好先在基礎班練過。 注意:老師口頭說往年 300–500 人;投影片 p.3 寫「班級人數:1200人」,是今年的名額上限,兩者不衝突。p.3 也寫了開課級別是研究所、同步遠距上課時間是星期四 9:00–12:00。 投影片 p.3–4 的課程目標有三點:涵蓋 NLP 與 LLM 的基礎和前瞻技術、探討 NLP 在各領域的應用、同時給理論基礎和實際應用。p.4 的課程簡介(老師說這頁當初是給教育部長看的)寫的是:電腦如何理解和處理人類語言,以及大型語言模型時代的技術進化與挑戰。
老師原話是什麼? - 「其實如果你還沒有機器學習經驗的學生,其實你可以先修一下機器學習或是 Deep Learning 的課程」(0:04:31) - 「在這個 ChatGPT 還沒出來之前,它其實是一個算普通,也有點冷門的課的學問」(0:05:14) - 老師說後來大家發現,用深度學習、AI 來處理語言可以這麼厲害、這麼實用,所以 NLP 現在幾乎是解決很多問題的基礎。
## [0:06:21](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=381s) NLP=語言+處理 NLP 這個名字拆成兩半就懂了。Language 是你要處理的對象:中文、英文、翻譯,或資料很少的低資源語言(例如原住民語言)。Processing 是讓電腦去處理。以前大部分工作要靠語言學家的專業知識(domain know-how),電腦只做一點運算;現在電腦的比重越來越高,人越來越不需要介入。 下面這張圖把 NLP 拆成兩半,並標出「處理」這一半從以前到現在的變化。 ```mermaid flowchart LR L["Language:要處理哪一種語言"] --> N["NLP"] P["Processing:讓電腦來處理"] --> N O["以前:語言學家的人工知識+一點運算"] --> P M["現在:電腦的比重越來越高"] --> P ``` 看圖的重點:左下兩個方塊是同一件事的「以前」和「現在」,這門課教的是「現在」那一條路。 為什麼人可以慢慢退出?(我補充)因為深度學習能直接從大量文字裡學出規律,不用人先把文法規則一條一條寫好。 比喻:以前像老師傅把文法規則一條條教給學徒;現在像讓學徒自己讀完整座圖書館,自己抓出規律。 考試可能怎麼問:Explain what "Natural Language" and "Processing" each refer to in NLP.
要先懂什麼? - 低資源語言(low-resource language):網路上文字資料很少的語言,例如台灣的原住民族語。資料少,電腦就很難學,所以是 NLP 的難題之一(我補充)。 - domain know-how(領域知識):某個領域的專家才知道的經驗。在 NLP 裡,指語言學家對文法、詞彙的知識。
## [0:07:25](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=445s) Hovy:LLM 時代的焦慮 老師引用 NLP 前輩 Eduard Hovy(CMU)在 Rocling 2024(台灣的計算語言學研討會,我補充)的主題演講,老師覺得兩年後還適用。新聞天天說「不會 AI 就會怎樣」,所以學生焦慮,老師也焦慮。投影片列了三種情境,每一種都追問「為什麼」,得到的回答都一樣:I have no idea / that’s future work / I’ve never thought about it。 下表把三種情境、投影片上的追問、老師舉的例子放在一起看。 | 情境 | 投影片上的追問 | 老師舉的例子 | |---|---|---| | LLM 能做到的事 | Why can it do that? | ChatGPT、Gemini、Claude 什麼都會,但沒有任何定理解釋它為什麼做得到 | | LLM 做不到的事 | Why not? | 會出現幻覺、連簡單加法都做不好、寫報告要改一大堆 prompt | | 說自己不在乎 LLM 的人 | Can’t an LLM do it already? | 業界覺得很難的需求,用 Claude 或 Gemini 把 prompt 寫好一點就做到了 | 看表的重點:三種情境的追問,得到的都是同一個回答——我們還說不出原因。 為什麼連專家都答不出來?老師說,LLM 骨子裡就是一個語言模型,目前沒有任何定理能證明它為什麼做得到這些事。也有人說 LLM 只是把所有知識背在一起的「合法的抄襲者」(老師說之後會講 Chomsky 的這個說法);從訓練方式看的確如此,但它確實是現在最聰明、最能消化人類知識的系統,原因卻還是一堆問號。 兩個詞的白話(我補充):語言模型(language model)是一個「看前面的字,猜下一個字最可能是什麼」的程式,你手機打字時跳出的下一個字建議,就是很小的語言模型。定理(theorem)是數學上已經證明一定成立的結論;「沒有定理」的意思是,沒有人能用數學證明 LLM 為什麼做得到,只知道它做得到。 比喻:像一台很會做菜的機器,菜很好吃,但連廠商都說不出它怎麼調味;偶爾還會把鹽當成糖。 考試可能怎麼問:Describe the worries in the LLM era that Hovy raised.
要先懂什麼? - 幻覺(hallucination):LLM 很有自信地講出錯的、或自己編出來的內容。 - prompt(提示詞):你打給 LLM 的指令或問題。寫法不同,結果差很多。 - Transformer:現在 LLM 共同使用的模型架構,這門課之後會教。老師說不懂 Transformer 和深度學習,就會覺得 LLM 像「後面有一堆工讀生在回答你」一樣神奇。
老師原話是什麼? - 「但是也沒有任何的定理告訴你他為什麼可以做到這些事情」(0:08:44) - 「比如說幻覺的問題啊或是說連簡單的加法都做不好」(0:09:29) - 「其實以後我會講到那個 Chomsky,他也會說大語言模型就是一個合法的抄襲者」(0:09:52) - 「他做出來的東西其實很容易就被 LM 取代」(0:10:33)
## [0:11:10](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=670s) 學 NLP 的三個方向 Hovy 把 NLP 的未來分成三個方向,老師要大家先想好自己要站在哪個角色。工程(usable):讓 LLM 更小、更便宜、更好用。應用(useful):跟特定領域、在地資料、人的知識結合,產生真正的價值。研究(understandable):解釋 LLM 為什麼做得到,才能保證品質。 下面是投影片原圖,三個框就是三個方向,紅字是每個方向的關鍵字。 ![Hovy 的三個方向:usable、useful、understandable(Syllabus p.7)](file-upload://3e7fc631-b030-81df-a172-00b28e754f48) 圖上重點: - 標題 Three major directions for New NLP:新 NLP 的三大方向,出自 Eduard Hovy(CMU,美國卡內基美隆大學)在 Rocling 2024 的演講。 - 左框 NLP engineering: make LLMs usable(工程:讓 LLM 用得起來):做更小更便宜的 LLM、把寫 prompt 變成有系統的方法、把文字和圖片等媒體整合在一起。 - 中框 NLP applications: make LLMs useful(應用:讓 LLM 真的有用):針對特定領域和公司調整、讓它能在真實世界動手做事、替每個人量身打造成私人助理。 - 右框 NLP Research: make LLMs understandable(研究:讓 LLM 看得懂),括號 or at least, be solid engineering 是「至少要是紮實的工程」:修正 LLM 的問題、解釋它怎麼做到、描述得夠嚴謹,才能談自主運作、品質保證和倫理。 - 這張圖在講:面對同一個 LLM,你可以選工程、應用、研究三種角色之一。 看圖的重點:記住三個紅字 usable、useful、understandable,就記住了整張投影片。 為什麼「看得懂」這麼重要?老師舉例:把 LLM 放進飛彈系統,司令問你成功機率多少,你只能說「只要它沒有幻覺就會成功」。你不知道它怎麼運作,就沒辦法保證(guarantee)它的品質。 這裡常聽到的「黑盒子」(black box)是指:看得到放進去什麼、跑出來什麼,卻看不到中間怎麼算的東西(我補充)。LLM 就是這樣,所以「研究」這條路就是要把盒子打開來看。 比喻:像一台新發明的車。工程師讓它省油又便宜(usable),計程車行把它改裝成真的能載客賺錢(useful),研究員拆開引擎,搞懂它為什麼會跑、什麼時候會拋錨(understandable)。 考試可能怎麼問:Name Hovy's three major directions for new NLP and give one example of each.
投影片上每個方向各寫了哪三點? - NLP engineering(usable) - Build smaller and cheaper LLMs:做更小、更便宜的 LLM。 - Systematize prompt engineering:把「怎麼寫 prompt」變成有系統的方法。 - Integrate language, images, and other media and functions:把文字、圖片和其他媒體與功能整合在一起。 - NLP applications(useful) - Tune LLMs to domains and companies for enterprise processing:針對特定領域和公司調整 LLM,處理企業的工作。 - Add functionality and agency in the world:讓它能在真實世界裡動手做事。agency(能自己採取行動的能力)。 - Tailor LLMs to people to be their personal daemons / amanuenses in everyday life:替每個人量身打造,成為日常生活裡的私人守護靈或祕書。amanuenses(抄寫員、祕書)。 - NLP Research(understandable,or at least, be solid engineering:至少要是紮實的工程) - Fix the problems with LLMs:修正 LLM 的問題。 - Ger explanations how LLMs do what they do:解釋 LLM 是怎麼做到的。注意:投影片的 Ger 是錯字,應為 Get。 - Formalize them well enough for autonomy, assurance, and ethics:把它描述得夠嚴謹,才能支撐自主運作、品質保證和倫理。
老師舉了哪些例子? - 工程:老闆聽說某個 AI 工具很厲害,要你串進公司工作流。你說一個月要花五萬塊買 token(LLM 按使用量計費的單位),老闆說從你薪水扣。所以你得想辦法把成本降下來。 - 工程:也有做硬體的人設計 Transformer 加速晶片,就不用跟 NVIDIA 買那麼貴的東西。 - (我補充)NVIDIA 是做 GPU 的公司。GPU(顯示卡晶片)很擅長同時做大量簡單計算,訓練和執行 LLM 幾乎都靠它,所以很貴。 - 應用:報告老師一看就知道是 ChatGPT 寫的,好像有講到東西,但價值很低。要讓 AI 跟領域、在地、人的知識結合,才真的產生價值。 - 研究:「這個現在 AI 的發展是沒有任何理論基礎」(0:13:17),老師說很多學界大佬都這樣講。 - 「你應該把自己定位好你自己的角色」(0:11:21)
## [0:14:22](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=862s) 文字資料與搜尋引擎 回到務實的角度:文字是現在最普遍的資料。2000 年前後網路泡沫時期,大量網頁出現,文字跟著爆量;要讓電腦也能理解這些內容,NLP 就越來越重要。老師說,要判斷一個技術重不重要,可以回推到 Google、搜尋引擎興起的年代。 「網路泡沫」(dot-com bubble)白話是(我補充):1990 年代末大家一窩蜂開網路公司、架網站,2000 年前後很多公司撐不下去、股價大跌。公司倒了,但留下了大量網頁和上網的人,文字資料從此爆量。 下面這條因果鏈,說明文字爆量怎麼一步步把 NLP 推到重要位置。 ```mermaid flowchart LR A["2000 年網路泡沫"] --> B["大量網頁文字出現"] B --> C["人工看不完"] C --> D["搜尋引擎與資訊檢索興起"] D --> E["NLP 越來越重要"] ``` 看圖的重點:「人工看不完」是關鍵的一步,對應投影片說的 Manually processing this data is impossible。 為什麼資訊檢索(information retrieval,從一大堆文件裡找出你要的那幾篇)以前很冷門?它以前是圖書館系在學的東西,重點是把館藏的索引建好,讓人有效率地找到書。搬到整個網路上,資料量和雜亂程度暴增,才變成很有學問的研究題目,也帶出大量研究。 比喻:以前是替一間圖書館整理書目卡;網路出現後,變成要替全世界每天不停新增的傳單編目。 考試可能怎麼問:Why did the growth of the Web make NLP and information retrieval important?
老師原話是什麼? - 「以前是圖書館系的人會去學的東西」(0:15:13) - 「如何有效的管理知識」(0:15:16) - 「搜尋引擎在2000年時候就非常重要而且也看到它的價值」(0:15:36)
## [0:15:43](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=943s) NLP 的定義與重要性 投影片的定義是:NLP 讓電腦「理解」和「使用」語言。今天聽起來像常識,但 30 年前沒人敢這樣寫,因為電腦跟人類語言之間的差距還非常大。重要性老師說「看看就好」:你現在用的 LLM 和 AI,背後都是因為它讀過人類幾乎所有的文字,能回饋、能摘要給你。 下表是投影片 p.9 列的四個領域,左欄是領域,中間是投影片原文,右欄是中文。 | 領域 | 投影片上的例子 | 中文 | |---|---|---| | Everyday life | Google Translate, Siri/ChatGPT, speech-to-text | 翻譯、語音助理、語音轉文字 | | Industry | chatbots for customer service, medical record analysis, market sentiment detection | 客服聊天機器人、病歷分析、市場情緒偵測 | | Academia | automatic summarization, knowledge retrieval, scientific discovery | 自動摘要、知識檢索、科學發現 | | Future | human–AI interaction, intelligent assistants, cross-language communication | 人機互動、智慧助理、跨語言溝通 | 看表的重點:從日常生活到學術研究都用得到,而學術那一列正在發生:老師審稿時估計,約兩成的投稿是全自動或半自動產生的,數據清楚、頭頭是道,很難分辨 AI 的痕跡。頂尖會議一次就收一兩萬篇投稿。 表裡兩個詞的白話(我補充):market sentiment detection(市場情緒偵測)是讓電腦讀大量新聞和留言,判斷大家對某家公司或商品是看好還是看壞。「頂尖會議」是電腦科學界最重要的學術研討會,這個領域的新論文多半先投到這裡,再由專家審稿決定收不收;老師說的「審稿」就是他擔任這些會議的審查人。 為什麼「理解」要加引號?(我補充)投影片把 understand 加上引號,意思是電腦「表現得像理解」,但它是不是真的懂,還沒有定論。這跟老師說「用『消化』這個詞也不太對」是同一個意思。 比喻:像一個讀遍整座圖書館的超級助理,問什麼都答得出來,還能幫你摘要;但它到底懂不懂,連老師都不敢打包票。 考試可能怎麼問:Define NLP and give examples of why it is important in everyday life, industry, and academia.
老師原話是什麼? - 「但是如果到30年前,其實大家不會寫這句話,不敢寫這句話」(0:15:56) - 「其實我說消化可能也不太對了,因為他真的能消化我也不知道」(0:16:25) - 「以我審稿的經驗大概有百分之二十的paper都是全自動或者是半自動產生的」(0:17:25) - 「就是人機協作過程中的產物」(0:17:33)
## 補充:LLM 為什麼會有幻覺 老師這週只提到幻覺這個詞 (0:09:29),沒解釋原因,這段是我補充。LLM 骨子裡是語言模型,唯一的工作是看前面的字、猜下一個最可能的字(第 03 章的「接龍」)。它沒有另外一個查證真假的步驟,所以會寫出很通順、很有自信、卻是編出來的內容,例如作者、年份、期刊都寫得很正式,但根本不存在的論文。 比喻:像一個很會接話的人,只在乎聽起來順不順,不在乎是不是真的。 所以對你的影響:上面飛彈系統的例子就是這個風險;用 LLM 查資料時,引用和數字要自己再核對一次。 考試可能怎麼問:Why do LLMs sometimes hallucinate? ## Self-check
Q1. What is NLP, and why is it important today?(中文:什麼是 NLP?為什麼它現在很重要?) **Answer**: NLP means enabling computers to "understand" and "use" human language. It is important because the world generates massive text every day (news, social media, research papers, customer records), and processing it manually is impossible and inefficient. NLP powers everyday tools such as Google Translate and ChatGPT, industry uses such as customer-service chatbots and medical record analysis, and academic uses such as automatic summarization. 中文:NLP 是讓電腦能「理解」並「使用」人類語言的技術。它重要,是因為世界每天產生大量文字(新聞、社群、論文、客戶紀錄),靠人工處理不可能也沒效率。它已經用在日常生活(Google 翻譯、ChatGPT)、產業(客服機器人、病歷分析)和學術(自動摘要)。答題時先給定義,再講「資料太多、人工做不完」這個原因,最後舉兩三個領域的例子。
Q2. Describe Hovy's three major directions for new NLP.(中文:說明 Hovy 提出的 NLP 三大方向。) **Answer**: (1) NLP engineering makes LLMs usable, for example by building smaller and cheaper LLMs and systematizing prompt engineering. (2) NLP applications make LLMs useful, for example by tuning LLMs to specific domains and companies so they create real value. (3) NLP research makes LLMs understandable, for example by explaining how LLMs do what they do, so that their quality can be guaranteed. 中文:第一是工程,讓 LLM「用得起來」,例如做更小、更便宜的模型,把寫 prompt 變成有系統的方法。第二是應用,讓 LLM「真的有用」,例如針對特定領域和公司調整,產生真正的價值,而不是 AI 味很重、價值很低的東西。第三是研究,讓 LLM「看得懂」,例如解釋它為什麼做得到,這樣才能保證品質。三個關鍵字 usable、useful、understandable 要背熟。
Q3. Why does making LLMs "understandable" matter, even if they already work well?(中文:LLM 已經很好用了,為什麼還要讓它「可以被理解」?) **Answer**: Because there is no theory or theorem that explains why LLMs can do what they do, we cannot guarantee their quality. In high-stakes systems, such as a military system, we could only say "it will succeed as long as it does not hallucinate." Understanding the black box is needed for assurance, autonomy, and ethics. 中文:因為目前沒有任何理論或定理能解釋 LLM 為什麼做得到,所以我們沒辦法保證它的品質。老師的例子是飛彈系統:司令問成功機率,你只能回答「只要它沒有幻覺就會成功」。在這種不能出錯的地方,必須搞懂這個黑盒子,才能談品質保證、自主運作和倫理。
Q4. Compare how NLP was done in the past with how it is done today.(中文:比較以前和現在做 NLP 的方式。) **Answer**: In the past, most NLP work relied on human effort, especially linguists' domain knowledge, plus a little computation. Today, computers take a larger and larger share of the processing, and humans are needed less and less in the loop. The amount of text also grew hugely after the Web appeared, which made manual processing impossible. 中文:以前 NLP 大多靠人,尤其是語言學家的專業知識,電腦只負責一點運算。現在電腦處理的比重越來越高,人越來越不需要介入。再加上網路出現後文字量暴增,人工處理已經不可能,所以一定要靠電腦。
讀完了嗎?下一章:[02 生成式 AI 帶來的改變(0:17–0:34)](https://app.notion.com/p/3e7fc631b03081b2aaf1c69c5df0bfaf)|回到週頁:[W1(9/10)](https://app.notion.com/p/3e7fc631b0308199953aef38ee86b0ae)