# 章節包:自然語言處理(NLP)W1(9/10)第 05 章「預訓練模型改變 NLP 做法」
影片 1:13:25–1:35:36,YouTube ID EEbwXXoVQPY。Notion 章節頁 https://app.notion.com/p/3e7fc631b03081c69424e055b260badc(頁 ID 3e7fc631-b030-81c6-9424-e055b260badc),頁面標題「05 預訓練模型改變 NLP 做法(1:13–1:35)」。
## 1. 第一行(直接照抄,不要改)
[自然語言處理](https://app.notion.com/p/3e6fc631b03081b4a9e8f91f3411f61f) › [W1(9/10)](https://app.notion.com/p/3e7fc631b0308199953aef38ee86b0ae) › 05|影片 [1:13:25–1:35:36](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=4405s)|投影片 Syllabus p.34–42|上一章 [04 課程安排、評分與同學問答(0:48–1:13)](https://app.notion.com/p/3e7fc631b0308153ba81da585f28e341)|下一章 [06 課後問答:浮水印與 AI 界線(1:35–1:47)](https://app.notion.com/p/3e7fc631b0308154af87df0a9af15134)
## 1b. 最後一行(直接照抄,放在 Self-check 後面,當全頁最後一行)
讀完了嗎?下一章:[06 課後問答:浮水印與 AI 界線(1:35–1:47)](https://app.notion.com/p/3e7fc631b0308154af87df0a9af15134)|回到週頁:[W1(9/10)](https://app.notion.com/p/3e7fc631b0308199953aef38ee86b0ae)
## 2. 各段標題(照順序;每段一個 ## 標題,直接照抄連結)
- `## [1:13:25](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=4405s) 起手式:預訓練語言模型` 老師講什麼:現在做 NLP 一定從預訓練語言模型(PLM)下手,而且直接從 Transformer 開始。老師把傳統 NLP 壓在前兩週半講完,後面全部是 PLM。
- `## [1:14:51](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=4491s) 轉移學習:預訓練+微調` 老師講什麼:從零訓練的空氣汙染模型只會回答空汙,換問題就要重新訓練。轉移學習像讓學生先讀懂一本英文字典,之後比照辦理解決新問題;LLM 先預訓練看懂文章,再微調到自己的領域。
- `## [1:17:23](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=4643s) LLM 發展圖與台灣模型` 老師講什麼:介紹 LLM 發展圖網站;台灣沒有從零訓練的 PLM,TAIDE、Breeze 等是拿開源模型做在地資料微調。成本在下降,但資料仍是問題。
- `## [1:18:56](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=4736s) LLM 家族樹:Transformer 主導` 老師講什麼:幾乎所有模型都從 Transformer 長出來,Mamba 等替代架構沒成為主流,硬體加速也針對 Transformer。選模型時能力差不多,要看大小和 token 的 CP 值。
- `## [1:20:25](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=4825s) LLM 之前的一條龍流程` 老師講什麼:以前要自己收集並標註語料、做斷詞/去停用詞/剖析樹/詞性、NER 與關係擷取,再用 one-hot、TF-IDF、word2vec 表示文字,還要建知識圖譜。TF-IDF 至今仍是很強的 baseline。
- `## [1:25:37](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=5137s) LLM 加下游模型微調` 老師講什麼:BERT 之後約 2019–2020 年,大部分研究是接上自己的下游模型,用成對的監督式資料(例如文章加摘要)微調,重點在怎麼設計下游模型。
- `## [1:27:38](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=5258s) 不微調,直接下 prompt` 老師講什麼:模型夠強後,直接把文件餵進去並寫好 prompt 就能摘要或問答,這要歸功於預訓練加 Instruction Fine-tuning。限制是 context 長度,以及 lost in the middle:模型只記得開頭和結尾。
- `## [1:31:05](https://www.youtube.com/watch?v=EEbwXXoVQPY&t=5465s) 這門課講什麼、不講什麼` 老師講什麼:傳統的詞彙、語法分析和情感分析不太講,但仍有用(例如在 prompt 加詞性資訊)。會從 RNN/LSTM、Seq2seq 講到 Transformer、BERT,提到 LoRA 等 PEFT 與 reasoning、test-time scaling;不教怎麼下 prompt。
## 3. 老師強調/會考/不考的地方(原句已驗證;寫進筆記時 ASR 錯字要改正)
- (1:25:17) [強調] 「TFIDF,這個真的很重要,因為他很簡單沒錯但是他是一個,非常萬用的Baseline」 → TF-IDF 是簡單又很強的 baseline,現在做分析仍常拿來比較
- (1:31:26) [不考] 「所以前面一二呢我們現在其實,不太帶了」 → 傳統的詞彙分析、語法分析現在不太講
- (1:33:00) [強調] 「但是,他其實非常重要,尤其是,你可以從RN跟LSTM去了解」 → RNN/LSTM 雖然舊,但能讓你理解序列資料怎麼訓練
- (1:33:14) [強調] 「Sequence to sequence Model其實,非常重要」 → Seq2seq 奠定了現在 LLM「輸入一段序列、輸出一段序列」的用法
## 3b. 數學段候選(程式抓的,只是提示;寫「跳過提示」行用)
0 段候選(門檻 3.0 字/30 秒)
## 4. 這章摘要與重要度
現在做 NLP 的起手式是預訓練語言模型:用轉移學習的預訓練+微調,或完全不微調直接下 prompt;對照以前從收集語料、前處理、向量化到建知識的一條龍流程,最後說明這門課講什麼、不講什麼。(核心)
## 5. 整堂課的提醒(ASR 錯字、老師口誤、投影片缺公式等;只用跟這章有關的)
- 0:00:00–0:01:25 還沒開始上課;0:00:36 那串「志願自由生涯、紅色教堂…」是語音辨識幻覺,不是老師講的。
- 下課在 1:07:53,錄影裡只剩約 1 分半(1:07:53–1:09:19),老師說休息 10 分鐘,實際休息時段應該沒錄進去(推測,沒看影片確認)。
- 老師講 Syllabus-115.pdf 不是照頁碼順序:先講 p.1–33,接著跳到 p.43–51(課程內容、評分)和 Slido 問答,下課後才回頭講 p.34–42。所以第 04 章是 p.43–51、第 05 章是 p.34–42。
- 本週投影片是 Syllabus-115.pdf,加上 1:47:14 起的 W1_NLP_brief_v2.pdf p.1–3(檔名的 W1 不等於上課週)。brief p.3 那張「NLP 四階段」圖,W2 一開頭又講了一次。
- Slido 上有幾則助教的文字回覆,影片裡沒講到:考試可以用英文作答;作業有 2–3 週可以交;各校考試由 TAICA 在各校安排考場;清大實體教室在台達館 103;問問題可寄助教信箱 nthuikmlab@gmail.com;「會講 PEFT(LoRA),但 RL 不會講」。
- 第 06 章是下課後第二輪 Slido 問答,裡面有幾則行政回答(可重複提交、遲交扣分、作業調分),因為時間在第 04 章之後,所以留在第 06 章,不併進第 04 章。
- ASR 錯字對照:高鴻宇→高宏宇;自然源處理→自然語言處理;Edward Harvey→Eduard Hovy;LockedIn→Rocling;TradeGPT/TrackGP/ChangeGPT/ChangeBee/trekGPT/checkgpt→ChatGPT;Cloud→Claude;Entropy→Anthropic;Media→NVIDIA;game/GAME→GAN;Tronsky、Transcript 的 hierarchy→Chomsky(hierarchy);Benji→Bengio;Wall-to-Vector/Vault to Vector/what vector/water vector→word2vec;Transformer Learning→Transfer Learning;Transformer Scratch→from scratch;Sleep/Sleepless→Syllabus;slide/SIDEL(指問答平台時)→Slido;Tica/臺卡/Tiger→TAICA;ntu庫/NTU酷→NTU COOL;摩克斯→MOOCs;持交→遲交;RIL→RL;Prong/PROM→prompt;勸/Chain/圈(指訓練時)→train;PFT→PEFT;Numeration→Normalization(Named Entity Normalization);構制→構詞;Passing Tree→Parsing tree;Stop War→Stop word;One-Half Vector→One-hot vector;科技大學(0:38:25)→科技大擂台;國客會→國科會;黃淑駿→黃舒駿;regret→reject;deskregent→desk reject;dispution→distribution;Garantee→guarantee。
- 不確定的 ASR:0:50:37「Bloodbath的一系列的東西」推測是 BERT 家族(對照 Syllabus p.44 W9 BERT and its Family);1:18:49「像中國大陸一樣用針灸的方式」推測是「蒸餾」(distillation);1:18:00「Tide/Breeze/白龍」應是台灣模型 TAIDE、Breeze、Bailong;0:48:33「K3」不確定是哪個模型;1:34:55「Income」推測是 in-context learning。
- 考試名稱不一致:老師口頭說「期末考」,Syllabus p.44–45 寫 Exam/Midterm Exam(week 14, tentative)。是同一場,排在 W14,不在期末考週。
- 評分舊資料:Slido 同學提到 9/7 郵件寫「作業 70%+Term Project 30%」,老師 0:59:29 說那是舊資料,現在是作業 75%+考試 25%,沒有期末專題;p.45 另寫每份作業比重會微調 -3%~+3%。
- 考試算式:W1 老師 1:44:22 說「也許會有一題叫你們算一下 TFIDF」但隨即說好像沒意義;課程頁已寫「不考算式(例如 BM25 公式)」(來自之後的週次)。以課程頁較新的說法為準,筆記不要寫成「會考 TF-IDF 計算」。
- RL 說法不一致:老師 1:42:02 說 RL 設計「會提到啦但是不太會叫你們做」,Slido 助教回覆「會講 PEFT (LoRA), 但 RL 不會講」。理解成:不會有 RL 作業,最多概念帶過。
- 作業時間:老師 1:45:35 說作業「通常是一個月前會公佈」,Slido 助教回覆「作業會有 2~3 個禮拜的時間可以繳交」;兩者說的是不同事(公布時間 vs 繳交期限),寫筆記時不要混在一起。
- 投影片錯字:Syllabus p.38 寫「TD-IDF」,應為 TF-IDF(老師 1:23:49 口頭也說「這打錯了」);p.7「Ger explanations」應為 Get explanations。
- 修課人數:老師口頭說往年 300–500 人,Syllabus p.3 寫班級人數 1200 人(今年上限),兩者不衝突。
- Syllabus p.47(TAICA 運算資源:100/500 運算元帳號)老師說「有一張投影片我沒有放」,只口頭說會當作業 bonus 發給前十名;投影片上的名額與金額以公告為準(p.47 寫 Wait for announcement)。
## 6. 投影片文字(這章範圍)
**這幾頁的公式或內容只在圖裡(文字檔抓不到),寫 Exam-ready 與公式前先用 Read 看這幾張圖:**
- Syllabus p.34 → C:\D槽\TAICA課程\_work\notes-v2\nlp-w1\img\brief_Syllabus_p034.png
- Syllabus p.38 → C:\D槽\TAICA課程\_work\notes-v2\nlp-w1\img\brief_Syllabus_p038.png
--- Syllabus p.34 ---
34
[IMAGE-ONLY]
--- Syllabus p.35 ---
35
“pre-train (預訓練), fine-tune(微調)” paradigm
轉移學習
Transfer Learning
--- Syllabus p.36 ---
36
https://github.com/Mooler0410/LLMsPracticalGuide
--- Syllabus p.37 ---
37
https://jjanes.ca/llm-tree/
LLM Family Tree
--- Syllabus p.38 ---
Traditional NLP applications (text)
38
文字語料
Collection, annotation, …
前處理
Segmentation, stopping
word removal, stemming,
parsing tree, …
前處理 - 2
NER, NEN, Relation
extraction, ….
Operation I
One-hot vector, TD-IDF,
Word2Vec
Operation II
Similarity measurement,
LSI, semantics
representation
Operation III
Domain knowledge
--- Syllabus p.39 ---
Large Language Model (LLM) enabled NLP applications
39
Pre-train
BERT
GPT
ChatGPT
GPT-4
.
.
.
Fine-tune
doc summary
文件摘要模型
doc Question/ answer
問答系統
xB ~ xxxB 參數
+
docs
知識問答系統
Retrieval / QA
--- Syllabus p.40 ---
Large Language Model (LLM) enabled NLP applications (no
fine-tune)
40
Pre-train
BERT
GPT
ChatGPT
GPT-4
.
.
.
prompt-usage
Prompt: doc, 摘要
Summary
Prompt: doc, Question
xB ~ xxxB 參數
docs
Retrieval / QA
Answer
Answer
Length limitation
--- Syllabus p.41 ---
自然語言處理
基本概念與方法
將介紹NLP的核心概念,包括字詞表示、文字處理、字詞向量表示 、 語意
意分析和情感分析等。
1
詞彙分析
分析文字結構,將句子拆
解為詞彙並標記詞性。
2
語法分析
解析句子的文法結構,理
解詞彙之間的關係。
3
語意理解
理解文字的含義,並分析
語句之間的邏輯關係。
4
情感分析
識別文字的情緒和主觀性
,了解作者的立場和態度
。
--- Syllabus p.42 ---
深度學習與
大型預訓練語言模型的應用
例如BERT、GPT-3等,解決不同語言處理任務。
1
Transformer
重要基礎模型原理。
BERT :雙向編碼器表示模型,善
於理解上下文資料。
2
序列類神經網路
RNN, LSTM, Seq2seq 。
3
生成式AI
T5
GPT
4
大型語言模型系統架構流程與應用
預訓練
微調
PEFT
提示學習 / In-context learning
將探討大型預訓練語言模型 (LLMs) 如何革新NLP領域,並展示其在各項應用中的優勢。
## 7. 逐字稿(1:13:25 前後各多 1 分鐘,原始行)
[01:12:25] 講的東西或是有一些
[01:12:27] 行政上的東西也都可以問這樣子喔
[01:12:30] 好
[01:12:36] 拜託
[01:12:38] 好啦這個
[01:12:40] Do your best
[01:12:44] 不要在slide上哈拉啦
[01:12:46] 那個
[01:12:47] 這個要filter有點辛苦這樣子
[01:12:50] OK
[01:12:51] 好啦我們就
[01:12:53] 把他拉到一個
[01:12:55] 一個標準這樣研究所課程的標準
[01:13:06] 好
[01:13:07] 這個投影片在
[01:13:09] 在NTU COOL或者是說在GitHub上都有
[01:13:13] PDF檔可以下載這樣子
[01:13:15] 那我
[01:13:16] 大家上去看可能可以看到一些
[01:13:18] 舊的就是去年的但是我可能都會
[01:13:21] 陸續的有一些
[01:13:22] 小小的更動這樣子
[01:13:24] 好
[01:13:25] 那
[01:13:26] 這個從剛才提到這些歷史啊
[01:13:28] 大家可以想像從這邊過後基本上所有的起手式都是
[01:13:34] 都是model了都已經是
[01:13:36] 而且尤其是
[01:13:37] 直接從Transformer
[01:13:38] 開始下手了這樣子所以
[01:13:41] 你可以想像這件事情
[01:13:43] 好像是
[01:13:45] 必要的
[01:13:46] 所以以前在一些場合啊有些
[01:13:49] 老師也問我說那你現在NLP課程怎麼教
[01:13:52] 我說我就把以前NLP的要教的東西
[01:13:56] 在
[01:13:57] 前面
[01:13:58] 兩週上完
[01:14:00] 可能多一點三週兩週半上完這樣子
[01:14:03] 然後後面的就全部都是
[01:14:05] Pretrained Language Model的東西這樣子
[01:14:08] 是有一點
[01:14:09] 怪啦就是說如果有些人想學一些語言學的東西
[01:14:13] 卻沒有在這邊cover到這樣子
[01:14:15] 但是你會發現現在做NLP一定
[01:14:18] 標準起手式一定是從
[01:14:20] Pretrained Language Model下手這樣子
[01:14:23] 當然這邊如果你還沒有修過AI或是Deep Learning的時候
[01:14:27] 你可能會不太知道
[01:14:29] 這些圖表的意思啊基本上
[01:14:31] 它就是一個Transformer Bash然後透過一個Pretraining的部分
[01:14:36] 訓練出來然後再
[01:14:37] 你要
[01:14:38] 做你的微調的東西這個我們之後會再帶一下會講這部分啊
[01:14:43] 只是
[01:14:44] 再用這個圖告訴你說現在大家看的東西
[01:14:48] 就是從Pretrained Language Model下手
[01:14:51] 當然這裡面有一些
[01:14:53] 機器學習的基礎沒錯所以
[01:14:56] 你雖然知道Pretrained Language Model但是你不太知道說這個就是以前在做
[01:15:01] Machine Learning的時候提到的Transformer Learning
[01:15:04] 就是做轉移學習
[01:15:06] 所以轉移學習就是
[01:15:08] 你會覺得好像現在Pretrained Language Model好像很
[01:15:11] 直覺嘛就是哪有
[01:15:13] LM然後fine-tune一下他就可以做我的問題
[01:15:15] 或是說LM本來就可以做很多事情
[01:15:18] 但是如果你以前從一個簡單的
[01:15:21] 小顆的NN Transform Scratch說我要做一個空氣汙染
[01:15:27] 預測的模型
[01:15:29] 那是參數都是空的然後
[01:15:31] 做監督室學習學習完之後這個模型的確會
[01:15:35] 回答你Yes No
[01:15:36] 你給他一些參數他會回答Yes No這邊有沒有空汙這樣或是說
[01:15:40] 他可以告訴你空汙的指數多少
[01:15:42] 你可以做出
[01:15:42] 這樣的事情
[01:15:44] 你只要有監督室的
[01:15:46] 資料就可以做這件事情
[01:15:48] 但是你會發現你的模型做出來
[01:15:49] 只能回答空汙啊
[01:15:51] 他也沒辦法回答說那對健康有沒有影響
[01:15:55] 你就要拿另外的資料再去勸
[01:15:58] 那這個當然就是一般以前在做機器學習的
[01:16:02] 基本的做法就是會遇到這樣所以
[01:16:04] 有很多的方式包含
[01:16:06] Transformer Learning當然這個
[01:16:08] 可能會在機器學習課程
[01:16:10] 比較後面會談到的
[01:16:12] 就是說
[01:16:14] 舉個例子你就知道就是叫一個學生
[01:16:18] 去拿一本英文字典讀一讀
[01:16:20] 然後讀完之後他就會發文了這樣
[01:16:22] 這個就是Transformer Learning的精神
[01:16:24] 就是
[01:16:24] 你學會一件事情你就可以比照
[01:16:28] 你當初的這個
[01:16:30] 資料所學到的東西比照辦理去
[01:16:33] 去解決另外一個問題
[01:16:35] 他這個問題是你沒有Training Data或者是說
[01:16:38] 你沒有Supervised Training Data
[01:16:40] 這個在當初在Transformer Learning
[01:16:42] 可以講到這些
[01:16:43] 當然Transformer Learning其實也是一個大的東西
[01:16:46] 它裡面可以分很多很細
[01:16:48] 有沒有資料跟沒有資料的這樣子
[01:16:51] 所以
[01:16:53] 這個如果你有點
[01:16:55] 機器學習基礎是可以比較瞭解的
[01:16:57] 不過Anyway
[01:16:59] 這個
[01:17:00] 大型語言模型基本上它就是透過一個預訓練
[01:17:04] 預訓練完預訓練只是看懂文章啊
[01:17:06] 但是他為什麼可以做QA
[01:17:08] 可以幫我寫報告
[01:17:10] 他可能需要一點微調啊這文章是什麼文章啊
[01:17:11] 他可能需要一點微調啊這文章是什麼文章啊
[01:17:12] 微調的東西就是把原案的模型呢
[01:17:14] 校正一下到我的Domain去解決我的問題
[01:17:18] 這是Transformer Learning的概念
[01:17:20] 不過這個我們會再提
[01:17:23] 那這邊秀一下這個LM的發展圖
[01:17:26] 這個這張圖有點舊了
[01:17:28] 不過大家有興趣可以去這個網站上看
[01:17:31] 他其實
[01:17:32] 講了蠻多的東西
[01:17:34] 而且這張圖還在他的Github上
[01:17:37] 所以他好像也沒有繼續update
[01:17:39] 但是他的資料是有一直update啦
[01:17:41] 但是他的資料是有一直update啦
[01:17:42] 那這個
[01:17:43] 中國大陸的模型也是舊的
[01:17:45] 現在有更多的
[01:17:47] 現在這個
[01:17:49] 這個Kimi的東西蠻強的
[01:17:51] 這是臺灣
[01:17:52] 臺灣當然沒有基礎從自己Transformer Scratch的
[01:17:55] PLM
[01:17:56] 但是有Based on這些
[01:17:59] Open Model做的
[01:18:00] 像Tide或者是Breeze
[01:18:02] 或是
[01:18:02] 這個
[01:18:03] 白龍
[01:18:05] 不過
[01:18:05] 其實
[01:18:07] 都不太容易啊
[01:18:08] 老實說我們就等於跟著這些Open Model跑啊
[01:18:11] 我們只能做
[01:18:12] 我們的在地資料的微調
[01:18:14] 或在地資料的CP
[01:18:15] 我覺得會比較辛苦
[01:18:17] 當然這個
[01:18:19] 當初是覺得我們
[01:18:22] 以臺灣的Resource不太可能自己做一個PLM
[01:18:26] 但是我覺得這件事情可能慢慢的可行
[01:18:30] 因為
[01:18:31] 現在的
[01:18:32] 現在的運算成本
[01:18:34] 比較低一點
[01:18:35] 當然還是很大
[01:18:36] 但是另外一個問題是
[01:18:39] 資料量
[01:18:40] 資料的問題這樣子
[01:18:42] 不過
[01:18:43] 另外一個還有一個問題就是說
[01:18:45] 我們能不能像
[01:18:47] 中國大陸一樣用
[01:18:49] 針灸的方式來做這件事情
[01:18:51] 這個就是另外一個故事
[01:18:56] 網路上有很多這樣資料
[01:18:58] 多擺一張這樣的圖
[01:19:00] 就是
[01:19:01] 一個Family Tree
[01:19:03] 就是
[01:19:04] 你看到都是Transformer長出來的這樣子
[01:19:08] 當然如果你自己有研究過一些模型
[01:19:11] 你就知道說Transformer也不是唯一的選擇了
[01:19:13] 其實有什麼
[01:19:15] 比較著名的
[01:19:17] 像Mamba這樣的東西
[01:19:18] 但是
[01:19:19] 就是沒有辦法成為
[01:19:21] One of
[01:19:22] 的
[01:19:23] 選項這樣子
[01:19:25] 所以是基本上還是Transformer
[01:19:27] 所以現在
[01:19:28] 幾乎所有的
[01:19:29] 硬體加速
[01:19:30] 都是Based on Transformer
[01:19:32] 在
[01:19:33] 做特別設計這樣子
[01:19:35] 那你可以
[01:19:36] 你可以去
[01:19:36] 你可以去這個網站這其實是可以動的
[01:19:39] 這個圖是可以動可以拉的
[01:19:40] 而且
[01:19:41] 點下去它可以告訴你那個模型的一些詳細資料之類的
[01:19:43] 這樣子
[01:19:45] 不過看起來
[01:19:48] 也沒有很新
[01:19:49] 因為最新的也都沒在上面這樣
[01:19:52] 那你就知道說這些
[01:19:54] 這些初步玩
[01:19:55] 大概每一個Quarter
[01:19:57] 都有一個新的Model會說他們是最強的這樣子
[01:20:01] 當然對我們來講
[01:20:02] 我們要考量的不是他的能力因為現在這些能力其實已經
[01:20:07] 不會差太多了就是以你解決你的問題來講
[01:20:11] 他們都足夠只是說
[01:20:13] 他的大小啊
[01:20:15] 他的這個
[01:20:16] 這個Token的CP值是多少
[01:20:19] 你大概反而會考量這些東西這樣子
[01:20:24] 好
[01:20:25] 那接下來秀一下畢竟我們還是NLP的課我來想一下說
[01:20:30] 以前沒有大語言模型的時候
[01:20:32] 這些
[01:20:33] 這些NLP的人都在幹什麼事啊
[01:20:37] 那
[01:20:38] 以前的做法
[01:20:39] 你一定要先有語料
[01:20:42] 包括說我要做醫院的問題
[01:20:44] 我一定要跟醫院談說你有沒有
[01:20:46] 這個醫囑啊
[01:20:47] 有沒有病歷資料啊
[01:20:49] 我一定要有這些資料因為沒有一個
[01:20:51] 沒有一個
[01:20:52] 像現在的大圓
[01:20:54] Pretrained Language Model一樣
[01:20:56] 他已經有一些common的knowledge在裡面
[01:20:59] 我一定從空的開始做
[01:21:01] 從空的開始做我就一定要
[01:21:04] Domain的
[01:21:05] 知識
[01:21:05] 我就一定要有一些Collection
[01:21:07] 那這Collection呢
[01:21:08] 包含annotation
[01:21:10] 這些都是非常昂貴的
[01:21:11] 就是都是要人進去的
[01:21:13] 只要有人進去
[01:21:14] 都是貴
[01:21:15] 雖然你說老師沒有那個他們說
[01:21:19] 做VLA
[01:21:20] 都是
[01:21:21] 去非洲
[01:21:22] 叫他們帶一個
[01:21:24] 這個
[01:21:24] 那個
[01:21:25] 那個
[01:21:26] 那個
[01:21:27] 眼部的camera
[01:21:28] 然後就叫他們不斷在那邊折衣服這樣
[01:21:30] 然後就有一大堆折衣服的影片這樣
[01:21:33] 的確有一些Training Data都是來自於這種
[01:21:37] 這種國家啦
[01:21:39] 所以以前我們說這是血汗模型
[01:21:42] 這個
[01:21:43] 以前一部電影叫
[01:21:44] 血鑽石嘛
[01:21:45] 他們都叫這個
[01:21:46] 這個血模型
[01:21:47] 因為就是
[01:21:49] 但是後來
[01:21:50] 後來去看一看他們其實沒有這些
[01:21:53] 這些去非洲做這樣的工作的
[01:21:55] 的人其實在那邊
[01:21:57] 過得蠻舒服的
[01:21:57] 因為你要做這件事情在冷氣房
[01:22:00] 然後又做這些非勞力的動作
[01:22:02] 只是
[01:22:03] 操作一下電腦做一些動作而已
[01:22:04] 其實對他們來講是個不錯的工作
[01:22:07] 當然我不是在貶逼他們
[01:22:09] 而是說這件事情
[01:22:11] 的確是需要大量人力
[01:22:12] 尤其是現在在做Action model
[01:22:14] 做這種機器人的東西
[01:22:16] 像有一條訓練的方式就是要靠不斷的
[01:22:20] 產生人類這個Action的影片讓他去學習
[01:22:24] 當然以文字來講也同樣有
[01:22:26] 需要很多annotation
[01:22:28] 那
[01:22:29] 這些
[01:22:31] 我們拿到的東西我一定要全處理不然就是一堆垃圾不然就是一堆
[01:22:36] 也不知道在寫什麼東西所以我們要做
[01:22:38] Segmentation 斷字處理Stop War
[01:22:41] 然後呢做Passing Tree做Stemming
[01:22:43] 這英文有時候去
[01:22:44] 需要詞性的處理
[01:22:46] 需要做這些東西甚至再往前一步
[01:22:49] 我需要知道說
[01:22:50] 這個裡面的Entity到底是什麼
[01:22:53] 這個關係到底是什麼
[01:22:55] 這一句話到底取什麼
[01:22:57] 為什麼要做這些事情呢
[01:22:58] 因為你整句話未給模型他看不懂
[01:23:01] 你一定要事先幫他截取出來這樣子
[01:23:05] 那如果以你們現在有做過一點
[01:23:08] 大型元模型就覺得
[01:23:10] 以前人為什麼這麼
[01:23:12] 做這麼多
[01:23:13] 多餘的事情
[01:23:14] 為什麼要做這麼多餘的事情
[01:23:19] 整篇文章餵給人
[01:23:21] 他就可以知道這個
[01:23:23] 某個Entity叫什麼
[01:23:25] 這樣子
[01:23:26] 所以
[01:23:27] 這是大家Based on這個巨人肩膀上可以做很多事但是以前沒有這個巨人的時候我們都要自己
[01:23:33] 做這些事情
[01:23:35] 不然你喂進去電腦是完全不懂你的東西
[01:23:39] 接下來就要去
[01:23:40] 表示這個文字
[01:23:42] 你可能就要把它
[01:23:44] 向量化
[01:23:45] 那以前最簡單的One-Half Vector
[01:23:47] 或是說你算一點權重的
[01:23:49] 這打錯了
[01:23:50] TFIDF
[01:23:54] 那或者是
[01:23:56] 把它直接有一個已經Change好的Base的東西把它轉換成一個Vector
[01:24:00] word2vec的東西
[01:24:02] 或者是說你有沒有把它轉換成更復雜一點
[01:24:06] 語義的Semantic Label的東西
[01:24:10] 這些都是
[01:24:12] 其實老實說在
[01:24:14] 在BERT還沒出來之前這些都還是一個
[01:24:17] 很大的研究重點
[01:24:20] 那當然你要怎麼建Domain Knowledge
[01:24:23] 這個不是說叫人來標註一下就好
[01:24:26] 你這些知識怎麼讓
[01:24:28] 怎麼讓電腦去Access
[01:24:29] 你是要建
[01:24:30] 建出一個結構
[01:24:32] 所以就會所謂的知識圖譜
[01:24:34] 就會一個Tree一個Graph的結構怎麼去Access怎麼讓
[01:24:39] 人只要輸入
[01:24:41] 這個
[01:24:42] 實比資料他可以自動
[01:24:44] 想出實物比的Knowledge
[01:24:46] 這邊就有很多的這樣的Extension
[01:24:48] 會在做
[01:24:49] 所以你可以想像這個
[01:24:51] 好像
[01:24:52] 去博物館看到以前這些原始人在
[01:24:55] 操作這些器具然後留下一些工具這種感覺
[01:25:00] 但是呢
[01:25:02] 有些方法
[01:25:03] 跟有些東西其實你們現在在做一些大語言模型分析的過程中
[01:25:10] 也會用到
[01:25:12] 或者說你要做一些
[01:25:14] 你要做一些Baseline的比較
[01:25:16] 比如說
[01:25:17] TFIDF
[01:25:19] 這個真的很重要
[01:25:20] 因為他很簡單沒錯但是他是一個
[01:25:23] 非常萬用的Baseline
[01:25:25] 也是一個非常Strong的Baseline
[01:25:28] 就搞不好用TFIDF比你在那邊
[01:25:30] 轉換什麼Dense Vector在那邊算老半天都還好這樣子
[01:25:37] 那
[01:25:38] 有LM之後大家想像說那我就可以用這些模型啊
[01:25:42] 然後呢
[01:25:43] 自己在fine-tune我這邊畫兩個東西就是這是一個大語言模型這是你自己的下游模型
[01:25:49] 然後你把它串起來這樣子以後我們就會教你怎麼用BERT然後自己再做一個下游模型
[01:25:53] 做這件事情
[01:25:54] 然後
[01:25:56] 你再透過你自己的資料
[01:25:58] 我這邊的標
[01:25:59] 標註資料就是這樣這是兩個不同顏色就是
[01:26:02] Input跟Output這樣子
[01:26:04] 就是你這是一個supervised的Data
[01:26:07] 比如說QA
[01:26:09] 我就會有原來的文章
[01:26:11] 跟問題就會有答案這樣子
[01:26:12] 就是
[01:26:13] 你一定有Input跟Output你是一個supervised的Data
[01:26:18] 所謂supervised的Data就是
[01:26:19] 我是在做問答系統
[01:26:21] 或是說我是做摘要的
[01:26:23] 我一定有原來的文章跟摘要出來的文章
[01:26:27] 我一定要這些東西
[01:26:29] 然後才能去fine-tune我自己小顆的模型
[01:26:31] 然後我可以利用BERT或是更大的模型
[01:26:34] 來做我這件事情
[01:26:37] 這個做法大概是在
[01:26:41] BERT大概2019
[01:26:43] 2020年之後
[01:26:44] 的
[01:26:45] 一大票大概90%的
[01:26:48] 大概
[01:26:51] 這個六七十的
[01:26:52] BERT的
[01:26:54] NLP的研究
[01:26:55] 就是follow這個路徑
[01:26:57] 因為發現BERT進來之後可以把原來的效果翻上一番這樣子
[01:27:02] 所以就會做這樣的事情
[01:27:04] 重點就會在你怎麼去微調這個模型這個模型要怎麼設計
[01:27:07] 才能搭配原來的BERT Transform能夠
[01:27:10] 做出
[01:27:11] 更好的摘要模型
[01:27:13] 更好的QA這樣子
[01:27:15] 當然以你們現在角度來看這個東西又好像是去博物館看到這些原始人留下這些工具一樣
[01:27:21] 以前人家做這樣的事
[01:27:23] 就是為什麼要鑽木取火為什麼不在瓦斯路上直接按個開關火就出來了這樣子
[01:27:29] 你們的感覺就會像這個樣子
[01:27:31] 但是現在其實這個
[01:27:32] 這樣的一個flow
[01:27:33] 還是會
[01:27:34] 還是在特定的領域會做
[01:27:38] 但現在可能大家會這樣反正也能夠強了
[01:27:41] 我就不用做這樣一件事
[01:27:43] 我就不用勸了
[01:27:44] 我就用原來的PROM
[01:27:45] 原來的PLM來做
[01:27:48] 然後我直接把他PROM
[01:27:49] 就這樣
[01:27:50] 請幫我摘要今天的
[01:27:53] 老師上課的重點
[01:27:54] 然後
[01:27:56] 這個只要PROM寫好把今天投影片喂進去他就會告訴你
[01:28:00] 一頁的摘要這樣子
[01:28:01] 就本來的這些
[01:28:03] 這一顆
[01:28:04] 就能做這些事情
[01:28:07] 而不用再去微調
[01:28:09] 做這些事情
[01:28:11] 但是你想說哇這個
[01:28:12] 這一顆這麼萬人這樣他當初怎麼訓練
[01:28:15] 那
[01:28:16] 我們這堂課就會告訴你說當初在做這個Pretrain
[01:28:20] 或是在做最後他Pretrain完之後
[01:28:22] 做一些
[01:28:23] Instruction Fine Tuning的時候
[01:28:25] 怎麼會做好這件事情
[01:28:27] 為什麼
[01:28:28] 好像萬用一樣
[01:28:29] 就是
[01:28:31] 給他不同任務他就可以回答出不同問題
[01:28:35] 是不是當初他有一大堆的Torago的這些監督師資料幫他勸
[01:28:41] 某種程度上
[01:28:42] 是有一點點但是不全然對這樣子
[01:28:45] 就是他是透過
[01:28:47] 透過
[01:28:48] 當初他對文獻的理解跟
[01:28:51] 透過Instruction Fine Tuning的時候
[01:28:53] 他可以理解說原來你現在要做摘要
[01:28:55] 所以我要去看以前的東西做什麼樣的
[01:28:58] 輸出這樣子
[01:28:59] 他並不見得有
[01:29:01] 完整的摘要的supervised data
[01:29:04] 好不過anyway這個這個其實就會有一些問題就是包括所謂的input
[01:29:09] 就是你所謂的context
[01:29:11] 你位給他的這個
[01:29:13] 長度是多少
[01:29:15] 所以你會發現現在的模型的readable看出來
[01:29:18] 他會有個column
[01:29:20] 在描述說這個模型的context有多寬
[01:29:24] 他可以處理多大的
[01:29:25] 的內容
[01:29:26] 當然有些模型很大
[01:29:29] 但是有些模型可能沒那麼大但是他其實比較厲害
[01:29:32] 這不見得因為他可能本來的
[01:29:35] 裡面的
[01:29:36] 這種
[01:29:37] 我們叫
[01:29:38] Positional embedding的
[01:29:40] 處理方式不同
[01:29:41] 或是說他特別有處理所謂的
[01:29:44] 位置的這種lost in the middle的問題啊這個我們之後可能會提到
[01:29:49] 就是模型在看
[01:29:51] 文章
[01:29:52] 這麼長的時候
[01:29:53] 他不是equal weight
[01:29:55] 他不是equal weight就是
[01:29:57] 你一開始給他的東西跟最後提到的東西對他講可能選中比較重要
[01:30:02] 中間的東西他就不見了
[01:30:04] 中間的東西他覺得算了看看就好
[01:30:07] 就像各位同學在上課一樣
[01:30:09] 一進來教室覺得
[01:30:10] 誒這個
[01:30:11] 聽聽看老師啊後來就體力不支睡著
[01:30:14] 然後一直到快下課的時候誒感覺要吃飯
[01:30:16] 精神又來了這樣子
[01:30:18] 所以你只有在頭跟尾的時候
[01:30:20] 對老師講的東西比較清楚
[01:30:22] 中間的東西都忘記了這樣子
[01:30:24] 這個就是模型的
[01:30:26] Lost in the middle的問題
[01:30:27] 這個問題現在其實
[01:30:29] 有被解決一些但是其實還是有
[01:30:31] 還是有還是有一些研究在探討說
[01:30:34] 他為什麼對中間的東西
[01:30:36] 這麼不sensitive這樣子
[01:30:38] 好不過anyway
[01:30:39] 這個只是另外一種做法就是完全不fine tune完全就只是靠prime或是in context learning的部分
[01:30:45] 直接
[01:30:46] 做我要的任務的問題
[01:30:49] 那或者說誒這個
[01:30:50] 當然就是說
[01:30:51] 哦原來
[01:30:52] 這只是one of我們好像都
[01:30:54] 都是這樣做然後把它包成A群然後做什麼事情
[01:30:57] 沒有
[01:30:58] 這個是演變下來
[01:31:00] 模型的能力變強之後他就變成這樣做這樣子
[01:31:05] 好啊
[01:31:06] 這本來是擺在前面啦不過我通常show這個目的是
[01:31:09] 就是說
[01:31:10] 我沒有要講這些這樣子
[01:31:12] 因為NLP以前的課程會講這些東西
[01:31:15] 我會講
[01:31:17] 文字結構
[01:31:18] 詞性
[01:31:19] 然後呢
[01:31:20] 做
[01:31:21] 做這種語法的分析啦
[01:31:24] 然後去理解跟情感分析
[01:31:26] 所以前面一二呢我們現在其實
[01:31:29] 不太帶了因為基本上
[01:31:33] 講的你們也不用
[01:31:34] 對雖然他還是很有用
[01:31:37] 還是很有用
[01:31:38] 這個
[01:31:40] 這個經驗我有口試過一個學生
[01:31:42] 他裡面LM裡面的參數或是input裡面有用到
[01:31:47] POS tagging的東西
[01:31:48] 對我眼睛為之一亮
[01:31:50] 這個
[01:31:52] 這個學生
[01:31:54] 不一樣
[01:31:55] 然後發現有用
[01:31:57] 這個東西有用這樣子
[01:31:59] 就是其實你會發現如果你只是告訴
[01:32:03] LM
[01:32:04] 文章的東西
[01:32:06] 然後就要回答
[01:32:07] 這個就是大家的做法
[01:32:08] 如果你
[01:32:09] 想要知道
[01:32:10] 你要告訴他說我現在比較重視什麼
[01:32:13] 你就會多放一些東西在你的prong裡面
[01:32:16] 但這prong可能是自動生成或是讓他學來的東西
[01:32:20] anyway
[01:32:21] 但這東西如果是多一點句子裡面的特性包含說我的結構
[01:32:26] 或是詞性
[01:32:27] 可能LM就會覺得好原來你在意這些
[01:32:30] 那我就
[01:32:32] 我就會
[01:32:32] focus
[01:32:33] 更多一點在這個
[01:32:35] 那就看你的應用有些時候
[01:32:37] 這樣的效果就會好很多
[01:32:39] 所以變化在個人因為工具就在那裡
[01:32:45] 那這比較像是我們會講到的Transformer跟
[01:32:48] 我會從RN開始
[01:32:50] 應該是
[01:32:52] Transformer應該在這後面
[01:32:53] 從RN跟LSTM開始
[01:32:55] 雖然這個
[01:32:56] 這已經非常老了這個在Deep Learning以前就有的NN的Model這樣子
[01:33:00] 但是
[01:33:01] 他其實非常重要
[01:33:03] 尤其是
[01:33:04] 你可以從RN跟LSTM去了解
[01:33:07] 這種Sequential的
[01:33:09] Data進去怎麼去Train的過程這樣子
[01:33:13] 然後
[01:33:14] Sequence to sequence Model其實
[01:33:16] 非常重要但是
[01:33:18] Google提出這個之後
[01:33:20] 後來因為
[01:33:21] 太多有名的東西出來之後大家就忘了它的重要性但其他
[01:33:25] 我覺得他是比較
[01:33:26] 奠定現在
[01:33:28] 現在這種
[01:33:32] 這種Large Language Model使用的
[01:33:35] 生態的一種
[01:33:36] 的做法的一種
[01:33:38] 創始者
[01:33:39] 就是給你一段序列你要output一段序列
[01:33:43] 而且是
[01:33:44] 任何的配對這樣子
[01:33:47] OK
[01:33:48] 那當然講完這些Transformer之後從BERT打完之後我們就會帶到它延伸的
[01:33:54] 但是我不會講到細部的
[01:33:56] 其實
[01:33:57] 有一個網站
[01:33:58] 蠻有趣的
[01:33:59] 他就講到所有尤其是很新的模型
[01:34:03] 他會給你一個架構圖
[01:34:05] 每一個模型的架構圖
[01:34:06] 當然是Open Model的
[01:34:08] 他就會更新的模型
[01:34:09] 告訴你這個模型做什麼
[01:34:11] 他的
[01:34:13] 他的什麼
[01:34:14] Positional Embedding是用什麼
[01:34:16] 然後他是有做額外的Filter
[01:34:19] 這個我再把連接擺上
[01:34:21] 我覺得這個蠻有趣
[01:34:23] 那當然會講一下這個如果你想做一些fine-tune
[01:34:27] 或是想做一些CP就是
[01:34:29] 繼續continuous pretraining的時候
[01:34:32] 大概
[01:34:33] 怎麼樣情況可以適合做或是
[01:34:36] 你做得動這樣子
[01:34:37] 當然會提一下Lora
[01:34:39] 像這種PFT的方式
[01:34:42] 但是這個其實也都需要資源
[01:34:44] 所以
[01:34:45] 以前本來希望有一些Lora的
[01:34:47] Homework
[01:34:49] 但是後來發現
[01:34:52] 需要一點Resource
[01:34:53] 就是比較不容易設計
[01:34:55] 那或是Income但是這個可能就會牽扯到
[01:35:02] 不會教你做Prong但是可能會帶你說現在大家重視像Reasoning
[01:35:07] 或是Test Time Scaling的想法
[01:35:09] 他們怎麼去
[01:35:11] 不再
[01:35:12] 調整模型的情況下讓模型變厲害
[01:35:15] 的概念這樣子
[01:35:18] 好
[01:35:19] 這個就介紹我們
[01:35:20] 上一節課講的部分
[01:35:23] 好
[01:35:24] 那我們Sleepless大概就帶到這邊了那這個這個投影片其實都在這兩個網站
[01:35:30] 那
[01:35:31] 這個大家可以去assets
[01:35:36] 有沒有問題
[01:35:39] 好
[01:35:41] 作業可以反覆提交優化嗎
[01:35:45] 應該是可以只要在截止之前
[01:35:48] 可以在截止之前
[01:35:50] 我們應該
[01:35:51] 沒有限制上傳次數
[01:35:54] 我們的作業比較沒有
[01:35:57] 不像有一些沒有
[01:36:00] 沒有標準單
[01:36:01] 然後就用Leaderboard去排這樣子
[01:36:03] 所以
[01:36:03] 通常是
[01:36:05] 還好但的確也會有一些Performance的數據
[01:36:08] 那我們會有一個
[01:36:10] 可能會有一個
[01:36:11] 標準告訴你一定要做到多少以上這樣子
[01:36:16] SLM
[01:36:17] 你講的是small language model嗎
[01:36:20] 應該是不會
[01:36:21] 應該是不會
[01:36:22] 不會特別講啦
[01:36:24] 不會特別講
[01:36:28] 通常我們講SLM的情況底下是希望說
[01:36:32] 探討說怎麼做出這個SLM
[01:36:35] 或是說
[01:36:36] 怎麼用一個比較笨的
## 8. 寫作規則
(這是 `_筆記SOP.md` 第 3.1、4、5、6 節的濃縮版。兩者衝突時以 SOP 為準。)
讀者:碩士生,兩門課期末是英文考試。要只看筆記就能學會,講得比老師好懂。畫面要簡潔。
**概念優先(2026-09-26 主理人)**:主理人只想懂概念,不想補數學、不想看程式碼和座標圖。兩門課的考試也都是問答題、不考算式(AI W1 1:16:52;NLP W3 1:47:41、2:48:36)。所以:
- 每段預設看得到的只有:白話摘要(2–4 句)+**一句生活比喻**(例:模擬退火像投資理財,年輕時敢冒險、越老越保守)+「考試可能怎麼問」一句。
- 數學推導、公式、手算、程式碼、座標圖,全部收進標題寫「(進階,可跳過)」的摺疊,例如「它到底怎麼運作?(進階,可跳過)」。每段最多一個進階摺疊,不要寫長篇計算。
- 演算法要能「用文字說出步驟」(考試可能要你描述),這一點放在預設看得到的地方,不用數字。
- **重心比例**:白話理論與概念模式(它在解決什麼問題、核心想法、跟別的方法差在哪、優缺點、生活比喻)占主要篇幅;數學與程式細節只用一兩句帶過,細節收進進階摺疊。
**圖文並茂(2026-09-26 主理人:不要只有文字)**:
- 每章至少 2–3 個圖,放在**預設看得到**的地方,每個圖前後各用一兩句白話說明「這張圖在看什麼」。
- 流程、步驟、因果、比較 → 用 mermaid 流程圖(```mermaid,flowchart LR 或 TD;節點文字用中文、加雙引號;一張圖不超過 10 個節點)。
- 投影片上的示意圖、架構圖 → 用 [[IMG: …]] 放投影片圖。
- 仍守「每個 ## 段落最多一種視覺元素」。
### 輸出兩個檔
1. `chNN.md`(Notion 寫法,不含頁面標題),結構固定:
- 第一行:章節包第 1 節那行,原樣照抄。
- 第二行起(有數學段才寫):**跳過提示**,每段一行,讓主理人看影片時知道從哪跳到哪。用章節包第 3b 節的候選當提示,對照第 7 節逐字稿確認(只標老師連續講公式、推導、矩陣、微積分、機率計算、程式細節超過約 1 分鐘的段落;概念講解和比喻不算):
`跳過提示:(1:31:02–1:35:40) 老師在推導梯度公式,聽不懂可以直接跳到 [1:35:40](YouTube 連結),接著講「步長 α 怎麼選」。`
- `## 重點`:三點中文,每點一到兩句。
- `## Exam-ready`:3–10 行英文,**從章節包的投影片文字逐字抄**,每行 `- **Term**: "原句"(Ch3 p.14)`。老師有明確證據才在行尾加 `【老師強調】(h:mm:ss)`。
**每一行下面一定要有一行縮排的中文解釋**(主理人英文不好,看不懂的英文等於沒用):
```
- **Hill climbing**: "It keeps track of one current state and on each iteration moves to the neighboring state with highest value."(Ch4 p.5)
- 中文:爬山法只記住「現在這一個狀態」,每一輪都移到分數最高的鄰居。白話:一直往比較高的地方走一步。
```
中文要先把句子意思講清楚,再補一句白話;最後用「英文(中文)」列出這句裡 1–3 個難字,例:sparse(稀疏)、distinct terms(不重複的字)。
**一行只放一句投影片原句**。同一頁有多句要考就拆成多行,每行各接一行中文;不要用分號串三句以上,不要把計算量 O(...) 塞進去。
- 章節包第 2 節的每一段:`## [h:mm:ss](連結) 標題`(照抄),下面 2–4 句白話摘要,其餘全部收進摺疊:
```
問句(例:用生活例子講,BFS 在做什麼?)
內容
```
摺疊種類(需要才放):用生活例子講?/它到底怎麼運作?/要先懂什麼?(老師假設你會的數學或概念,短版教學)/老師原話是什麼?(「原話」(h:mm:ss),只放重要的,最多 5 句)。
- 「它到底怎麼運作?」要用一組小數字把這段的演算法**真的跑 1–3 步**(例:算出梯度、更新一次、比較兩個 α),不是只示範定義的加減乘除。全章盡量沿用同一組數字,讓前一段的答案能在下一段被驗證。
- 每段正文要回答讀者最可能卡住的一個「為什麼」。投影片公式方向跟題目相反、或投影片說「解不出來」時,用一兩句講出原因,自己補的標(我補充)。
- 投影片句子停在公式前(公式在圖裡)時:Exam-ready 在粗體詞條上補公式、引號內保持原句;正文寫出同一條式子。公式圖看章節包第 6 節列出的 PNG。
- `## Self-check`:2–4 題英文考題,答案收摺疊。**至少一題考老師強調的內容**;只出 explain/why/compare 這類問答題,**不出要代數字計算的題目**(考試不考算式);不出「老師和投影片哪裡不同」這類不會考的題目。每題格式:
```
Q1. English question?(中文:中文題目)
**Answer**: English answer.
中文:把答案完整講一遍(不是只翻一句),讓看不懂英文的人也知道要怎麼答。
```
- **最後一行**:章節包第 1b 節那行(下一章連結),原樣照抄。讓讀完的人直接點下一章。
- 不要把章節包或這份規則裡的指示句寫進筆記(例如「寫筆記時照投影片寫」「已改正 ASR 錯字」)。
- 長度:全文不超過 16,000 字元(跟 check_note.py 同一個數字)。**不要為了壓字數反覆刪改**(實測一章最多花 12 輪在刪字);超過時只刪進階摺疊裡的第二組算例,比喻、比較表、圖說、「老師說不用背」的提醒都不刪。
- 預設看得到的正文不放計算量 O(...)、代號對照(例如 SMART 字母)、課本出處考據,一律移進進階摺疊。
2. `chNN.concepts.json`:JSON 陣列,4–12 個考試可能問的術語,每個物件:
`name`(英文)、`zh`、`type`(概念/演算法/公式/人物事件/前置知識/行政)、`signal`("老師說會考"/"老師強調"/"核心(我判斷)"/"")、`evidence`(有 signal 前兩種時必填:原句+時間)、`definition_en`(投影片原句;沒有就註明 (textbook)/(lecture)/(my wording))、`plain`(一句中文)、`a4`(≤150 字元英文,可夾極短中文;期末拼貼用的小方塊)、`time`、`slides`、`prereq`(英文名陣列)。
### 風格鐵律
- 不用 emoji 或裝飾符號(✓✗★⚠ 都不要;→ 可以)。不用 callout。不用 `$`。時間不要用 code 樣式。
- 每個 `##` 段落最多一種視覺元素:一張圖、或一個表格、或一個 mermaid。
- 摺疊標題是問句,前面不加符號。
- 圖片最多 3 張,只放文字取代不了的圖。放法:單獨一行 `[[IMG: | 中文圖說]]`,PNG 用 `slides_to_png.py <圖片資料夾> <頁> --dpi=110` 產生。
- 考試訊號只在老師明確說時標。老師只說「不用背」「不講」就寫「注意:……」。
- 老師口誤或跟投影片不同:照投影片寫,加「注意:老師口頭說的是……」。
- 引用老師的話時,ASR 錯字改成正確的字。
### 沒有投影片時
不要憑記憶逐字重現課本段落或數值表。英文定義用自己的話寫、句尾標 (my wording);Exam-ready 每行標「(自擬,投影片待補)」。例子只用老師講的。
### 寫完之後(只做一次)
跑檢查:
`C:\Users\user\.cache\meeting-record\venv\Scripts\python.exe C:\Users\user\.claude\scripts\check_note.py --transcript <逐字稿> --slides <投影片 txt …> --start <起> --end <訖> --vid <影片 ID>`
- STYLE/VISUAL/TIME/FORMAT:全部改掉。
- QUOTE:確認是不是你改正了 ASR 錯字(是就保留),不是就改成原文或拿掉引號。
- ENGLISH:確認是不是投影片斷行造成的(是就保留),不是就改成投影片原句。
**省額度守則**:章節包裡已經有你需要的全部資料。不要再去讀整份逐字稿、整份投影片、segments.json 或手冊。一次寫好整個檔(Write 一次),檢查後集中修改。