目錄(14 節)

變調同連讀點樣影響 ASR 準確度:工程視角拆解

變調喺語言學上係正確音變,但喺 ASR 入面會表現成錯字。本文拆三類錯誤、俾一個可重複嘅成對測試設計,再講詞表、上下文、音檔三者點分工。

— 港嘢內容團隊約 10 分鐘語音轉文字變調連讀ASR粵語
分享:

一句答你:變調同連讀喺語言學上係「正確嘅音變」,但喺語音辨識裡面,佢哋出現嘅方式係「錯字」—— 因為引擎輸出嘅係字,唔係音。所以你要做嘅唔係學晒變調規則,而係識分辨你嗰份逐字稿錯喺邊一層:聲調錯、音段錯,定係揀字錯。三類錯,補救方法完全唔同。

大部分人睇到 ASR 嘅錯字,會直接歸咎「詞彙唔夠」或者「音檔太舊」。但有一類錯,根源喺語流本身:兩個字連住講,音變咗,引擎聽到嘅音同你以為嘅音唔一樣,於是揀咗另一個字。呢類錯唔會因為你加多啲詞表就自動修好 —— 因為佢根本唔係「詞表唔夠」,而係「聲學線索同你嘅預期唔一致」。

呢篇唔教變調規則。規則嗰部分:變音(詞彙性變調)同自動變調(tone sandhi)嘅分別,睇《粵語變調規則完整指南》;高升變調、疊字變調、分詞性變調,睇《粵語變調進階》;想自己練,睇《粵語聲調對比練習》;懶音(音段變化)嗰套,睇《粵語連讀音變》。

本文只答工程問題:同一段音,變調同連讀令佢喺 ASR 裡面變成咩樣嘅錯;你點樣分辨同埋補救。

重點摘要(Key Takeaways)

  • 變調 係指同一個詞嘅聲調喺連續語流中按語法規則改變;連讀 係指相鄰音段互相影響,令前一個字嘅尾音被拉走或者變成近似音。兩者喺語言學上係規則,在 ASR 裡面卻表現為錯字。
  • 錯字要分三類:聲調錯(字啱音調唔啱)、音段錯(聲母或韻母被改變)、選字錯(音啱但揀咗更常見嘅字)。三類嘅補救方向完全唔同。
  • 詞表(熱詞)主要救「選字錯」,對「聲調錯」同「音段錯」幾乎冇作用 —— 呢個係最常見嘅期望落差。
  • 最有用嘅測試設計係成對片段:同一個詞,孤立講一次、喺連續語流講一次。兩者嘅差異,就係音變帶嚟嘅差異。
  • 詞表唔夠、上下文太短、音檔太舊,三者都會放大音變嘅影響;但根因係「線索唔夠」,唔係「規則唔識」。
  • 我哋未有一份公開、可重複嘅「變調對 ASR 影響」測試集,所以本文唔會貼任何百分比;文末畀一個你可以自己跑嘅量度方法。

呢篇唔教變調規則,講變調點樣變成錯字

先定義,之後全文唔會含糊:

變調 係指同一個詞嘅聲調喺連續語流入面,按語法規則改變 —— 例如高升變調,令前一字嘅調升到後一字嘅最高位。連讀 係指相鄰音段互相影響 —— 例如前字嘅鼻音尾被拉走,變成另一個近似音。

呢兩個詞對語言學家嚟講係「描述規則」;對做辨識嘅工程師嚟講,佢哋係「錯誤來源」。呢個落差就係本文存在嘅理由:語言學文講點樣變,產品文件講點樣聽,工程文章要講中間嗰層 —— 變咗之後,個錯長咩樣。

【獨家觀察】最容易被忽略嘅一點係:ASR 嘅輸出單位係「字」,唔係「音」。所以音變唔會以「音變」嘅形式出現,而係以「揀錯字」嘅形式出現。你會見到一個音似但唔同嘅字,而唔會見到「呢個字被讀成咗另一個調」。呢個設計決定,令變調嘅影響全部收窄咗喺「揀字」呢一層 —— 換句話說,語言學層面嘅音變,最後一定會表現為字嘅錯。

三類錯字,三種補救方向

變調同連讀引致嘅三類 ASR 錯字分類:聲調錯、音段錯、選字錯嘅症狀、確認方法同補救方向
同一份逐字稿嘅錯字,要先分清楚係邊一層出事,補救方法先至唔會白做。
錯誤類型逐字稿長咩樣點樣確認補救方向
A 聲調錯字啱,但個字嘅聲調同你預期唔同(往往被另一個同音字取代)聽返音檔,確認係邊個字被拉走;用審音配詞字庫逐字核讀音靠上下文同語境;詞表作用有限
B 音段錯聲母或韻母被連讀改變,令另一個字被揀中(例如 n/l 類嘅合流)對住音檔聽,睇係咪韻尾被拉走;同孤立發音比對改善音檔、保留上下文
C 選字錯音大致啱,但揀咗更常見嘅字(專名、品牌、術語最常見)檢查個詞喺語境入面係咪低頻專名加詞表(熱詞),呢個就係詞表最有效嘅場景

三類之中,A 同 B 都係「語言學上正常嘅音變」造成嘅,詞表幫唔到,因為詞表改變嘅係「揀邊個字」嘅傾向,唔係「聽到咩音」。只有 C 類,本質上係「引擎唔識你嘅專名」,所以先有得用詞表救。

要點分 A 同 C?好簡單:睇個字係咪高頻常用字。如果引擎揀咗一個日常高頻字,而你想講嘅係個低頻專名,咁通常係 C;如果兩個字都係常用字、但一個啱一個唔啱,咁通常係 A 或者 B。

【實測】呢個分類方法喺 2026-10 我哋做詞庫測試時用過:逐詞對錯時,每一個錯字都標一次「聲調/音段/選字」。嗰次測試入面出現嘅錯全部落喺 C 類 —— 即係話加詞就救得晒。A 類同 B 類喺嗰批稿入面一次都冇出現過;但嗰批稿未特別設計成成對片段,所以 A/B 兩類究竟係「未觸發到」定係「真係冇咁嘅語境」,仲要另外設計音檔驗過先知。

成對測試片段:點樣量度音變嘅影響

想知「呢個變調令辨識差咗幾多」,最直接嘅設計係成對測試(minimal pair in context):

  1. 設計兩段音。第一段:目標詞孤立講出,冇前後接駁。第二段:同一個詞放喺自然語流入面,前面有會觸發變調/連讀嘅字。
  2. 錄低同一個人、同一支咪、同一個距離。其他條件一律唔好改。
  3. 兩段都跑一次辨識,記錄目標詞嘅輸出。
  4. 比較:孤立嗰次啱、語流嗰次唔啱 —— 差異就係音變嘅貢獻。兩次都唔啱,係詞表問題;兩次都啱,呢個變化點對你冇影響。
孤立輸出語流輸出判定下一步
啱啱呢個變化對你冇影響唔使理
啱錯音變影響(A/B 類)查語境、查音檔,詞表幫唔到
錯錯詞表覆蓋不足(C 類)加詞表,再跑一次
錯啱反向線索,值得再睇通常係孤立發音比較易讀,唔代表語流冇問題

呢個設計好處係可重複(完整嘅測試集設計同逐詞對錯表,喺同一個 cluster 嘅《粵語 ASR 自訂詞彙測試協議》一文):同一對片段,換一個引擎或者換一批詞都仲用得著。而且你唔需要知道嗰個變調嘅語言學名稱 —— 你只需要知道「同一個詞,喺唔喺語流入面,輸出唔同咗」。

要準備測試稿,仲有兩個實際問題。第一個係你自己打字嘅稿,讀音可能同你想測嘅唔一樣:呢個可以靠中大審音配詞字庫逐字核讀音,或者用 G2P 工具(例如PyCantonese)由文字反查讀音,先確保「稿」係啱嘅 —— 否則你會花時間 debug 一個根本唔存在嘅辨識錯誤。第二個係口語用字(例如「嘅」「咗」「喺」)寫法唔統一,呢類可以喺粵典對返。

仲有一招可以令測試更精確:用 G2P 工具(例如canto-hk-g2p)計出「如果冇音變,呢個詞應該點讀」,再同音檔嘅實際讀音對比,兩者嘅落差就係你要研究嗰個變化。

連讀喺 ASR 入面嘅三個具體位置

連讀唔係抽象概念,佢喺逐字稿入面有幾個固定出現嘅位置:

  • 詞尾鼻音尾被拉走:前一字以 -n/-ng 收尾,後一字以元音或鼻音開頭,前字嘅尾音會弱化甚至消失,聽落似咗另一個音。
  • n 類聲母嘅弱化:連讀之後,n 同 l 嘅分別會變模糊,引擎如果靠呢個分別揀字,就會揀錯。
  • 入聲韻尾弱化:短促嘅 -p/-t/-k 尾喺快語速下幾乎聽唔到,音節聽落短咗一圈。

實務上呢三個位置意味住同一件事:相鄰兩字嘅界線唔係清晰嘅。引擎要靠語言模型去猜邊度斷詞,猜錯咗,字就錯咗。所以:

  • 詞與詞之間加停頓(喺稿度層面),有時真係可以提升準確度;
  • 保留前後文(唔好每句獨立抽出嚟轉寫),可以俾引擎更多線索去斷詞。

連讀規則嘅細節同例子,語言學嗰邊寫得比我好,睇本 cluster 嗰篇《粵語連讀音變:懶音同變調》一文;規則嘅正式講法可以對返語言學學會嘅粵拼答問。

詞表、上下文、音檔:三樣嘢點分工

回到大家最关心嘅「咁我加詞表有冇用」。答案係:有用,但只對 C 類有用,而且要配合其他兩樣。

手段救 A 類(聲調錯)救 B 類(音段錯)救 C 類(選字錯)
加詞表(熱詞)作用有限幾乎冇作用最有效
保留更多上下文有幫助有幫助有幫助
改善音檔質素有幫助最有幫助間接有幫助
稿度層面加停頓冇直接幫助有幫助間接有幫助

詞表嘅完整規則(容量上限、分場域、驗收流程)喺《粵語熱詞辨識:人名、地名、品牌》同《廣東話字庫與自訂詞彙實戰》兩篇;完整嘅測試集砌法、WER 同 CER 點計,喺《廣東話語音轉文字實測》一文。

【獨家觀察】有一個常見誤解值得拆一拆:有人以為「加咗詞表,變調嘅問題就會消失」。唔會。因為詞表改變嘅係「喺幾個候選字之間點樣分配機會率」,而變調改變嘅係「音本身變成咗乜」。當引擎聽到嘅音已經唔係你以為嗰個音,俾佢幾多個候選字佢都一樣會揀錯嗰個最近似嘅字。

常見問題 FAQ

變調係咪一定會令 ASR 錯?

唔一定。變調係語流入面嘅正常現象,引擎本身有一定嘅處理能力。會唔會錯,睇三樣嘢:變調幅度、引擎嘅語言模型同你嘅詞彙覆蓋。呢三樣都係因場景而異,所以本文唔會講「變調令準確度跌 X%」—— 冇公開可重複測試集嘅百分比,係冇比較價值嘅。

我應該用詞表定係改善音檔?

睇你錯字嘅類型。錯嘅係低頻專名(人名、品牌、術語),加詞表。錯嘅係通用字但音唔啱(A/B 類),改善音檔同保留上下文先有用。最好嘅做法係用上面嗰套分類先做一次診斷。

稿度寫得「正統」啲,會唔會準確啲?

會,方向係啱嘅,但唔係因為「正統」本身,而係因為稿正統 → 讀音穩定 → 連讀變化更可預期。真正有影響嘅係「停頓同節奏」,唔係用字。節奏重音嗰層可以睇本 cluster 嘅《粵語節奏重音》一文。

變調、變音、連讀,三者有咩唔同?

三者都係音流入面嘅變化,但層次唔同:變調係聲調層;連讀/懶音係音段層;而「變音」喺粵語文獻入面通常指詞彙性變調(例如名詞化變音),同語法驅動嘅自動變調唔同。三者嘅細節同例句,喺本 cluster 嗰兩篇變調同連讀文講得最齊。

一次過測試所有變調規則,有冇可能?

理論上可以,但工程上唔划算 —— 變調規則數量多、條件互相影響,而且同一個詞喺唔同語境會唔同。成對片段嘅設計好處就係唔需要你窮舉規則:你測嘅係「呢個詞喺呢個語境」,而唔係「呢條規則應唔應該觸發」。

想試下自己嘅音檔?

先睇《廣東話語音轉文字上架》一文了解產品範圍同收費,再喺語音轉錄頁跑同一段錄音兩次 —— 一次逐字孤立講,一次連住講 —— 就已經可以開始做上面嗰個成對測試。想知點樣砌一套完整嘅測試集,睇《廣東話語音轉文字實測》一文;想處理專名,睇上面嗰篇《粵語熱詞辨識》一文。

相關文章


本文由港嘢內容團隊編輯審閱(editorial review,2026-10-25)。想了解我哋嘅背景,可以睇關於港嘢;語音轉錄同詞庫嘅問題,可以用聯絡表格問我哋。

相關文章