昨天(手寫字 · 2026-10-16)寫「Zenodo 原始資料今天沒下載到」,今天拿到了。Zenodo 紀錄 19485897 的四個 Excel 檔(UNO、NUM 各有印刷體與草寫體,每檔一列一位受試者,授權 CC BY 4.0)加一份指標說明檔,經由網頁抓取工具存成本機暫存檔;環境沒有 openpyxl,我用 Python 寫了一個只讀工作表與共用字串的小解析器把四個檔讀進來。所以今天的數字有兩種:標明「資料」的是我在這批孩子的公開資料(各檔 674 到 701 列)上算的,標明「論文」的是論文頁面公布的值。昨天留下的待驗項目,除了 Lacquaniti、Terzuolo 與 Viviani 1983 的原文,今天都能對帳:那篇的原文仍然沒取得(只在搜尋結果裡確認了卷期頁碼 Acta Psychologica 54:115–130,以及它被後續研究大量引用),所以三分之二冪次律這條線維持待驗,不再重試。

今天做四件事:一,用資料與指標說明檔逐項核對昨天讀到的數字,並更正一處推論;二,檢驗「空中時間是主要訊號」這句話在資料裡到底成立到什麼程度;三,用最普通的邏輯迴歸去重現論文的篩檢結果,看它多少歸功於模型、多少歸功於指標;四,拿論文的指標定義改寫昨天的錄音程式,並用資料裡真實的筆畫時間分布重測它。

📖 學

一、對帳:昨天讀到的數字

**樣本與年齡全部對上。**資料裡一到八年級的人數(UNO 印刷體)是 111、105、98、97、114、80、54、42,共 701 人;一年級年齡 6.64 ± 0.34 歲、八年級 13.63 ± 0.25 歲,與昨天引用的論文頁面一致。印刷體「有風險」(Z ≤ −1.5)UNO 57 人、NUM 86 人,佔 8.1% 與 12.3%,與論文頁面一致;NUM 的無風險人數資料裡是 614,昨天我讀到論文頁面寫 613,差 1,我沒查到原因。

**草寫體的 575 與 569 是「二到八年級」。**草寫檔各有 680 與 674 列,扣掉一年級的 105 列剛好是 575 與 569。論文頁面沒有說為什麼草寫分析排除一年級,這是我從人數倒推的,不是論文的說法。二到八年級的有風險人數,資料算出 265 與 286,論文是 266 與 288;差的 1 與 2,剛好等於這兩個子集裡 Z 分數缺值的人數(1 人與 2 人)。這個吻合可能只是巧合,我看這幾位孩子的筆畫數與時間都是平常值,沒有證據顯示他們該被歸為有風險。

**178 個指標的缺口補上了。**指標說明檔逐項列出領域:時間 15、力量 7、平滑度 16、動作振盪 21、頻率 116,還有昨天漏掉的「筆傾斜」3 個,加起來剛好 178。昨天的 175 就是少了這一類。

**空中時間與筆畫的定義,這次有原文了。**說明檔寫的是:筆畫數是「與紙張連續接觸」的次數;平均空中時間是筆離紙瞬間的平均長度;空中超過 2 秒的算「停頓」,另外有一組「扣除停頓的平均空中時間」。這份說明檔沒寫怎麼從力感測訊號判斷接觸,論文正文我讀到的片段也沒有,所以接觸門檻仍是待驗。我昨天說「論文沒有說明力訊號切筆的門檻」,現在可以補一句更準的:定義有了,判定演算法沒有。

**要更正的一處:印刷體相關「接近 1 是算術結果」。**昨天我推論印刷體每個字母固定幾筆,所以相對筆畫數與字母數的相關接近 1 是算術。資料裡只有 Z 分數,沒有原始字母數,所以論文的 ρ 無法重算;但 Z 已經把年級的效果拿掉,我可以算「同一年級內」的相關(把每個指標與 Z 各自在年級內轉成百分位再算相關,含一年級):

指標與 Z 的同年級內相關UNO 草寫NUM 草寫UNO 印刷NUM 印刷
相對筆畫數0.330.600.810.83
平均落筆時間−0.23−0.43−0.57−0.53
平均空中時間(扣停頓)−0.37−0.57−0.73−0.67
落筆占比0.100.160.120.22

印刷體的相對筆畫數在同一年級內是 0.81 與 0.83,高,但不是 1。所以「算術結果」只說對一半:筆畫數確實緊跟字母數,但同年級內仍有約三分之一的變異不在這條線上。論文的「接近 1」我推測是跨年級合併、用原始分數算的(跨年級時年級趨勢把相關拉高),這點我無法用公開檔驗證。另外兩個一眼可見的事:空中時間在四個格子裡都是相關最強的時間指標之一;落筆占比幾乎無關(0.10 到 0.22)。這個「占比無關」下面會再用到。

二、空中時間「主要」到什麼程度

論文的說法(PMC 版本的原句):熟練的書寫者提高速度,主要是縮短筆畫之間的時間,而不是筆畫內寫得更快。下面是 UNO 任務各年級的中位數(落筆時間是每次接觸平均、空中時間扣掉 2 秒以上停頓,單位毫秒;n 是印刷體人數):

年級n印刷:落筆印刷:空中印刷:落筆占比草寫:落筆草寫:空中草寫:落筆占比
11117437340.4621,9557250.613
21055315220.4891,2945980.632
3983773660.4911,0444890.672
4973283410.4808924500.658
51143072900.5029144360.658
6803052320.5271,0464100.711
7542992230.5251,0344180.692
8423201950.5571,0173890.730

這張表的讀法要分兩段。一到八年級整段看,印刷體落筆縮短 57%、空中縮短 73%,兩者都在縮,空中縮得多一些;NUM 任務是 62% 對 76%。三年級以後,故事就偏向空中:印刷體 UNO 從三年級到八年級,落筆中位數只降 57 毫秒(−15%),空中降 171 毫秒(−47%),空中占了週期縮短量的 75%;NUM 印刷是落筆 −11%、空中 −50%,空中占 84%。所以論文那句話在三年級以後的印刷體成立得很乾淨,在小一到小三的初期不成立(那時兩者一起縮)。

草寫體的圖像不同。UNO 草寫的落筆時間在三年級到八年級幾乎沒動(1,044 到 1,017 毫秒),空中從 489 降到 389 毫秒(−20%),空中占縮短量的 78%;NUM 草寫則是兩者都在降(落筆 −34%、空中 −39%,空中只占 40%)。論文說空中時間的發展「在印刷體是連續的、在草寫體較早」,中位數與此相符:草寫體空中時間大半在四年級前降完(725 到 450,−38%),之後只緩降;印刷體一直降到八年級。另一件小事:論文說三年級是書寫趨於自動化的時間點,但相對筆畫數的中位數在印刷體是到六年級才平(1.27、1.39、1.63、1.80、1.77、1.83),草寫體到四年級平(0.63、0.72、0.74、0.69、0.66、0.73)。論文說的「平台」可能指別的指標,我沒有逐一對照。

再問一個更尖銳的問題:同一年級內、控制了落筆時間以後,空中時間還有沒有獨立的預測力?我用 Z 對「落筆時間的對數」與「空中時間的對數」(都先減去年級平均)做標準化迴歸,結果(標準化係數,括號是自助法 95% 區間):

任務落筆(對數)空中(對數)兩者相關
UNO 草寫−0.13(−0.25 到 0.02)−0.31(−0.48 到 −0.19)0.57
NUM 草寫−0.21(−0.31 到 −0.11)−0.53(−0.63 到 −0.42)0.51
UNO 印刷−0.33(−0.39 到 −0.27)−0.60(−0.66 到 −0.55)0.39
NUM 印刷−0.32(−0.39 到 −0.26)−0.57(−0.65 到 −0.51)0.29

四個格子空中時間的係數都比落筆時間大,印刷體大約是兩倍,草寫體是兩倍以上,區間不重疊(UNO 草寫的落筆區間跨過 0)。這比單看相關更能支持論文的說法,但它仍是「同一時點的橫斷面」:寫得好的孩子空中短,不等於練習把空中縮短就會寫得好。因果方向資料沒辦法說。

如果換成「在週期的變異裡佔多少」去看(同年級內、以落筆加空中為週期、各取 1% 與 99% 截尾),印刷體空中佔週期變異的 39% 與 40%,草寫體只佔 12% 與 16%。草寫體的週期變異多半來自落筆時間,是因為草寫的一次接觸常常寫完整個字,時間尺度本來就比較大;這與「空中的預測力較大」不矛盾,因為預測力看的是對對數尺度的相對變化,變異佔比看的是絕對毫秒。

三、篩檢器歸功於模型還是指標

昨天我留了一個問題:論文用 TabPFN 得到草寫 F1 0.80 與 0.83,這比基準線好多少、有多少是模型的功勞?現在有資料,可以用最普通的方法測一次。做法:邏輯迴歸(L2 懲罰,輸入先轉成排名常態分數),特徵是 8 個時間領域指標加年齡與性別,五折交叉驗證重複 10 次,門檻 0.5,標籤 Z ≤ −1.5,草寫用二到八年級:

任務(n,有風險比例)全猜有風險 F1邏輯迴歸 F1(準確率)曲線下面積論文 TabPFN F1(準確率)
UNO 草寫(574,46.2%)0.6320.723(0.756)0.8240.80(0.82)
NUM 草寫(567,50.4%)0.6710.776(0.777)0.8500.83(0.84)

只用 8 個時間指標的普通迴歸,就從 0.632 拉到 0.723、從 0.671 拉到 0.776;論文模型再往上 0.08 與 0.05。換句話說,基準線到論文結果的提升裡,簡單模型拿走了約一半(UNO 草寫 54%、NUM 草寫 66%),剩下的是 TabPFN、其他 170 個指標或不同驗證方式的貢獻,我分不開。我另外把 178 個指標全放進去(加年齡與性別),UNO 草寫 F1 0.748、NUM 草寫 0.758,沒有明顯贏過只用時間指標,而且那是我試的四個懲罰強度裡最弱的一個,更弱可能更好但我沒試。這個比較的限制很多:論文的驗證方式我沒看到、我自己挑過懲罰強度(只在三到四個值裡挑,樂觀偏差應該不大,但不是零)、兩邊樣本劃分不同。能下的結論只有一句:草寫體的篩檢力,大部分已經在時間領域的幾個指標裡。

印刷體要換一個看法。類別極不平衡(8.1% 與 12.3%),門檻 0.5 下召回率很低,F1 沒有可比性(我的 F1 只有 0.28 與 0.40)。曲線下面積才公平:同樣的 8 個時間指標加年齡與性別,UNO 印刷 0.856、NUM 印刷 0.885。若改用「年級虛擬變數加 6 個時間特徵」並且事後挑最佳門檻(這是樂觀的),F1 是 0.655 與 0.669,與論文的 0.64 與 0.77 同一量級。論文怎麼選門檻我沒看到,所以印刷體我只能說「沒有證據顯示論文的模型比簡單模型好很多」,不能說更多。

這個結果與昨天的陽性預測值表放在一起,結論更清楚:篩檢的難處不在模型,在常模。草寫體 46% 到 56% 的孩子 Z ≤ −1.5(資料:UNO 52.0%、NUM 56.1%,含一年級;二到八年級是 46.2% 與 50.4%),論文自承常模不匹配,所以草寫那組 0.80 以上的 F1 主要在區分「比常模慢很多」與「慢一點」。

四、錄音程式換成論文的定義後重測

昨天的程式量「接觸段、落筆、空中」,與論文的「筆畫=連續接觸」定義一致,這是今天的好消息:我選的單位沒有選錯。今天把它改成輸出論文的指標名稱(筆畫數、相對筆畫數、平均落筆與 CV、落筆占比、平均空中與 CV、扣除停頓的空中、停頓數、空中落筆比),並加上 2 秒停頓規則。

重測時不再用昨天那組自設的分布,改用資料裡真實的時間結構:UNO 印刷體五年級的中位數是落筆 307 毫秒(CV 0.30)、空中 290 毫秒(CV 0.82),我取落筆 CV 0.35 與空中 CV 0.85 的伽瑪分布;另兩組是沿用昨天平均值的成人快寫型(落筆 180 毫秒、空中 100 毫秒,CV 0.4 與 0.8 是我今天設的)和 NUM 印刷八年級型(落筆 213 毫秒 CV 0.65、空中 131 毫秒 CV 1.25,資料中位數)。每格 20 次合成錄音,數字是估計值除以真值的平均,背景信噪比 20 分貝:

情境筆畫數落筆時間空中時間落筆占比
五年級印刷型0.9800.9781.0670.959
成人快寫型0.9011.0801.1670.972
八年級 NUM 型(空檔合併 30 毫秒)0.7801.2571.3270.979
同上,空檔合併改 15 毫秒0.9211.0501.1480.967

這張表修正了昨天的一句話。昨天我寫「筆畫數誤差不到 1%」,那是在一組空檔很少短於 30 毫秒的分布上;換成真實的空檔分布(變異係數 0.8 到 1.25 的重右尾),空檔小於 30 毫秒的比例是五年級型的 5.1%、成人快寫型的 16.7%,這些短空檔被程式當成同一筆併掉,筆畫數少算 10% 到 22%,落筆被高估、空中也被高估。所以筆畫數對「空檔合併門檻」並不免疫,寫得越快、短空檔越多,越敏感。實務上的後果是:比較兩個條件時兩次都要用同一個門檻,而且在門檻從 30 毫秒改成 15 毫秒後筆畫數差超過 5%,就代表你的書寫屬於短空檔多的類型,筆畫數只能當粗略參考。

表裡也藏著一個好消息:落筆占比(總落筆時間佔總時間)在四個情境都落在真值的 0.96 到 0.98,對門檻與雜訊最不敏感。壞消息來自前面第一節:它在資料裡與 Z 的同年級內相關只有 0.10 到 0.22。換句話說,最穩的指標資訊量最少,資訊量最大的(空中時間、相對筆畫數)又最容易被門檻帶偏。在家做的建議因此變成:同時看這三個,以空中時間的「相對變化」為主(兩個條件之間的比值,而不是絕對毫秒),以落筆占比當穩定度檢查。

停頓規則也測了一次:合成一段 60 秒錄音,在第 30 筆後插入 3 秒空檔,真值是含停頓平均空中 339 毫秒、扣停頓 309 毫秒、停頓 1 次;程式估 357、326 毫秒、停頓 1 次,方向與數量都對。50 赫茲的感測器本身也不是零偏差:我把接觸旗標每 20 毫秒取樣一次(隨機相位),五年級型的空中時間高估 1.3%、成人快寫型高估 4.4%、後者筆畫數少 3.9%(邊緣怎麼定義是我的選擇)。所以昨天擔心的「50 赫茲不夠」在兒童資料上不是主要問題,主要問題是接觸判定的演算法與門檻,而那正是論文沒寫的部分。

🧠 記

  • **資料:**Zenodo 19485897,CC BY 4.0,4 個 Excel 檔加指標說明檔;我讀到的樣本與年齡、印刷體有風險人數(57、86)、年級人數都與論文頁面一致。
  • **指標領域(說明檔):**時間 15、力量 7、平滑度 16、動作振盪 21、筆傾斜 3、頻率 116,合 178;昨天的 175 少了筆傾斜。
  • **定義:**筆畫=與紙連續接觸;空中>2 秒算停頓(另有扣停頓版本);接觸判定演算法沒有寫。
  • **草寫樣本:**二到八年級,575 與 569 人;有風險資料 265 與 286,論文 266 與 288,差在 Z 缺值 1 與 2 人,原因不明。
  • **更正:**印刷體相對筆畫數與 Z 的同年級內相關 0.81 與 0.83,不是 1;「接近 1 是算術」只對一半。
  • **空中時間:**三年級到八年級印刷體 UNO 落筆 −15%、空中 −47%,空中佔縮短量 75%;一到八年級則兩者都大幅縮短(−57%、−73%)。同年級內控制落筆後,空中時間的標準化係數約為落筆的兩倍以上。
  • **篩檢:**8 個時間指標加年齡性別的邏輯迴歸,草寫 F1 0.723 與 0.776(論文 0.80、0.83),取得基準線到論文提升的 54% 與 66%;全 178 指標沒有明顯更好。
  • **錄音法:**筆畫數誤差視空檔分布而定,五年級型 2%、成人快寫型 10%、八年級 NUM 型 22%;落筆占比最穩(0.96 到 0.98)但資訊量最少(同年級內相關 0.10 到 0.22)。

**邊界:**資料是橫斷面,「空中時間比落筆時間更有預測力」不能推成「縮短空中時間會讓書寫變好」;邏輯迴歸的驗證方式、特徵轉換與懲罰強度是我選的,與論文的 TabPFN 驗證流程不可直接比;Z 分數的常模與草寫排除一年級的原因我沒有查到;論文頁面的片段沒有交代接觸判定演算法,我也沒讀到補充材料的其他部分;錄音法的模擬只換了時間分布,筆畫的包絡形狀、背景雜訊、衣袖與桌面震動仍是我設的,沒有任何真人錄音;成人的空中時間與停頓數我沒有資料,以上兒童數字只能當尺度參照;Lacquaniti、Terzuolo 與 Viviani 1983 的原文仍未取得;昨天的快慢兩條件在家實驗、10-07 的墨膜實驗、7 字抄寫實驗還是沒有真人資料;JMIR Aging 那篇老年人數位手寫研究(搜尋摘要提到筆畫圖形表現較差者落筆與空中時間較長、平均筆壓較低)我只看到搜尋結果的摘要,網頁本文沒有抓到。

✍️ 實踐

這一輪不必換步驟,換的是對照標準。需要一張紙、平常的筆、手機語音備忘錄、Python 3 與 numpy。擺設、兩條件(平常速度與盡快,內容固定,抽籤決定順序,各 60 秒,間隔 3 分鐘)、轉檔(afconvert -f WAVE -d LEI16 -c 1 memo_A.m4a memo_A.wav)都與昨天相同,每個條件至少錄 3 次。差別在程式與預測。

**第一步,存成 strokes_audio.py。**我在合成錄音上跑過整支(含命令列輸出),沒有在真人錄音上跑過:

import sys, wave, numpy as np
 
def load(path):
    w = wave.open(path, "rb"); sr = w.getframerate(); ch = w.getnchannels(); sw = w.getsampwidth()
    x = np.frombuffer(w.readframes(w.getnframes()), dtype={1: np.int8, 2: np.int16, 4: np.int32}[sw]).astype(float)
    if ch > 1: x = x.reshape(-1, ch).mean(axis=1)
    return x, sr
 
def segments(x, sr, win=0.005, min_gap=0.03, min_on=0.03, f_hi=0.2, f_lo=0.08):
    n = int(sr * win); m = len(x) // n
    env = np.sqrt((x[:m * n].reshape(m, n) ** 2).mean(axis=1))           # 每 5 ms 一個 RMS
    env = np.convolve(env, np.ones(3) / 3, mode="same")
    lo, hi = np.percentile(env, 20), np.percentile(env, 95)
    th_hi, th_lo = lo + f_hi * (hi - lo), lo + f_lo * (hi - lo)          # 遲滯門檻
    on = np.zeros(m, bool); s = False
    for i, v in enumerate(env):
        s = (v > th_hi) or (s and v > th_lo); on[i] = s
    d = np.diff(np.r_[0, on.astype(int), 0]); st, en = np.where(d == 1)[0], np.where(d == -1)[0]
    merged = []
    for a, b in zip(st, en):                                              # 空檔 < min_gap 視為同一筆
        if merged and (a - merged[-1][1]) * win < min_gap: merged[-1][1] = b
        else: merged.append([a, b])
    return [(a * win, b * win) for a, b in merged if (b - a) * win >= min_on]
 
def indicators(seg, pause=2.0):
    """筆畫=連續接觸;空中超過 pause 秒算停頓(Toffoli 等人補充檔的時間領域定義)。"""
    on = np.array([b - a for a, b in seg])
    air = np.array([seg[i + 1][0] - seg[i][1] for i in range(len(seg) - 1)])
    span = seg[-1][1] - seg[0][0]
    air_np = air[air <= pause]; pauses = air[air > pause]
    cv = lambda v: v.std() / v.mean() if len(v) > 1 and v.mean() > 0 else float("nan")
    return {
        "StrokeNum": len(seg), "RelStrokeNum": len(seg) / span,
        "meanOnsheet": on.mean(), "Onsheet_CV": cv(on), "OnSheetRatio": on.sum() / (on.sum() + air.sum()),
        "meanInair": air.mean(), "meanInair_nopause": air_np.mean(), "Inair_nopause_CV": cv(air_np),
        "PauseNum": len(pauses), "AirSheet_Ratio_NOpause": air_np.mean() / on.mean(),
    }
 
if __name__ == "__main__":
    x, sr = load(sys.argv[1]); ind = indicators(segments(x, sr))
    for k, v in ind.items(): print("%-24s %s" % (k, ("%.3f" % v) if isinstance(v, float) else v))

**第二步,對兩個條件各錄三次,每次執行一遍,再用 min_gap=0.015 重跑一遍。**把 segments(x, sr) 改成 segments(x, sr, min_gap=0.015) 即可。記錄每次的筆畫數、平均空中(扣停頓)、平均落筆、落筆占比、停頓數。

**第三步,對照預測。**以下都是我的預測,根據是兒童資料與合成測試,成人沒有資料。預測一:快寫的平均空中時間相對縮短幅度大於平均落筆時間的相對縮短幅度(兒童從三年級到八年級是 −47% 對 −15%)。預測二:快寫的落筆占比略高於慢寫,但差距小(兒童資料跨七個年級只從 0.46 升到 0.56,所以我預期兩個條件差不到 0.1)。預測三:兩個門檻下筆畫數差距若超過 5%,表示你的書寫短空檔多,筆畫數不可信,只看落筆占比與空中時間的比值;差距小於 5%,絕對毫秒才有一點參考價值。預測四:每 60 秒的停頓數是 0 或 1,兒童資料平均 0.8(UNO 印刷)到 1.6(NUM 印刷),成人我預期更少,但這是猜的。

**第四步,判讀。**只看「快對慢」的比值與同一條件三次之間的離散度。若三次之間空中時間的變化超過條件之間的差,今天的設備就分不出快慢,先把環境(麥克風位置、桌面、衣袖)弄穩定。絕對毫秒不跟任何文獻比,尤其不跟兒童的數字比;兒童的數字只是尺度。

🔗 延伸學習


💬 問 AI

我拿 Toffoli 等人 2026(PLOS Digital Health)的公開資料(Zenodo 19485897,707 位義大利小一到國二學生,感測墨水筆寫 60 秒)做了幾項重算。請逐項回答,並嚴格區分三類:(一)論文或文獻明確寫了的、(二)你能查證或憑訓練資料確定的、(三)純屬推論的,每項標明把握程度(高/中/低);查不到或不確定就直說,不要編造文獻、數字或連結。這是學習與實驗設計,不是臨床診斷。
 
【A 組:我算到的】
1. 同年級內,印刷體相對筆畫數與 BVSCO-3 的 Z 分數相關約 0.81 與 0.83;空中時間(扣 2 秒以上停頓)相關 −0.73 與 −0.67。Z 已依年級常模標準化,這樣的同年級內相關能不能拿來與論文報的跨年級 Spearman 係數(印刷近 1、草寫 UNO 0.68、NUM 0.87)比較?為什麼?
2. 同年級內以 Z 對「落筆對數」與「空中對數」做標準化迴歸,空中的係數是落筆的兩倍以上,但兩者相關 0.29 到 0.57。多重共線性、測量誤差(空中時間由落筆邊界決定)會怎麼影響這個比較?
3. 8 個時間指標加年齡性別的邏輯迴歸在草寫體得到 F1 0.723 與 0.776(論文 TabPFN 0.80 與 0.83),取得基準線到論文提升的 54% 與 66%。這種「取得多少比例」的算法有什麼統計上的問題?
4. 草寫分析排除一年級(575 與 569 是二到八年級人數),有風險人數差 1 與 2 剛好等於 Z 缺值人數。請說明這種標籤處理在論文常見的資料清理裡可能是怎麼來的,並區分你確定的與猜測的。
 
【B 組:文獻】
5. 論文說「熟練書寫者主要縮短筆畫之間的時間」。成人、中文字、硬筆書寫的文獻裡,有沒有把空中時間與落筆時間分開報告的?只列你確定存在的,並說明是否讀過全文。
6. 感測器接觸判定(力閾值、濾波)在手寫運動學文獻裡通常怎麼做?不同做法對平均空中時間的影響有多大?
 
【C 組:實驗設計】
7. 我用手機錄音量筆畫與空中時間。合成測試顯示:空檔小於 30 毫秒被合併造成筆畫數少算 2%(五年級型)到 22%(八年級 NUM 型),落筆占比最穩(誤差 2% 到 4%)但與 Z 的同年級內相關只有 0.10 到 0.22。在家要用它區分快慢,你會建議看哪幾個指標、怎麼報告不確定度?
8. 把所有存疑項目分成三堆:(一)憑訓練資料就能判斷的、(二)必須查一手文獻或論文補充資料的、(三)必須用實際書寫資料才能回答的。