![]()
語(yǔ)音轉(zhuǎn)文字的錯(cuò)誤率,在英語(yǔ)場(chǎng)景下已經(jīng)低到能用了。但換成烏爾都語(yǔ)、斯瓦希里語(yǔ)這類資源匱乏的語(yǔ)言,錯(cuò)漏百出是常態(tài)。Umair Ali Khan博士最近公布了一套雙遍L(zhǎng)LM后處理方案,把多個(gè)主流模型的詞錯(cuò)誤率(Word Error Rate)壓了下去,而且適配新語(yǔ)言只需要改提示詞。
核心思路很樸素:第一遍修拼寫(xiě)和一致性,第二遍補(bǔ)上下文邏輯。兩遍分工明確,不搶活。Khan在Medium專欄詳細(xì)拆解了實(shí)現(xiàn)路徑,我們按時(shí)間線還原這套方案是怎么從問(wèn)題清單里長(zhǎng)出來(lái)的。
第一步:先給錯(cuò)誤分類,別急著動(dòng)手
Khan團(tuán)隊(duì)先跑了大量轉(zhuǎn)寫(xiě)樣本,把高頻錯(cuò)誤歸類。拼寫(xiě)錯(cuò)誤最常見(jiàn),比如"accomodate"少寫(xiě)一個(gè)m。一致性錯(cuò)誤次之,同一個(gè)人名前后三種寫(xiě)法。最隱蔽的是上下文錯(cuò)誤:復(fù)合詞該不該加連字符、功能詞(介詞、冠詞)有沒(méi)有漏掉,這些單靠局部文本判斷不了。
傳統(tǒng)后處理用規(guī)則引擎硬編碼,新語(yǔ)言來(lái)了得重寫(xiě)規(guī)則。Khan的解法是把規(guī)則換成LLM的推理能力,用提示詞封裝語(yǔ)言知識(shí),換語(yǔ)言時(shí)只換提示詞。
第一遍:拼寫(xiě)和一致性修復(fù)
TranscriptEnhancer組件的第一遍處理,輸入是原始轉(zhuǎn)寫(xiě)文本,輸出是"干凈版"。提示詞設(shè)計(jì)得很克制:只修明顯拼寫(xiě)錯(cuò)誤,統(tǒng)一專有名詞寫(xiě)法,不碰句子結(jié)構(gòu)。
Khan特別提到一個(gè)細(xì)節(jié):第一遍要"保守"。LLM有幻覺(jué)傾向,給太多自由度會(huì)擅自改寫(xiě)正確內(nèi)容。提示詞里加了明確約束——"如果拼寫(xiě)存在爭(zhēng)議,保留原樣"。
實(shí)測(cè)下來(lái),第一遍單獨(dú)跑能把純拼寫(xiě)類錯(cuò)誤清掉七成以上。但復(fù)合詞拆分錯(cuò)誤、連字符濫用這些問(wèn)題,第一遍基本不動(dòng),留給第二遍。
第二遍:上下文推理補(bǔ)漏
第二遍的輸入是第一遍的輸出,加上一個(gè)關(guān)鍵上下文窗口。Khan把前后各50詞喂給LLM,讓它判斷"longterm"該寫(xiě)成"long-term"還是"long term","New York based"要不要加連字符變成"New York-based"。
功能詞缺失是另一塊硬骨頭。口語(yǔ)轉(zhuǎn)寫(xiě)常漏掉"the""a""of",第一遍看不出來(lái),第二遍結(jié)合上下文能補(bǔ)個(gè)七七八八。Khan舉了個(gè)例子:原文本"meeting scheduled next Monday",第二遍會(huì)推斷成"the meeting is scheduled for next Monday"。
兩遍串聯(lián)后,詞錯(cuò)誤率降幅明顯。Khan沒(méi)公布具體數(shù)字,但強(qiáng)調(diào)"across multiple speech-to-text models"都有效,說(shuō)明方案不挑底層模型。
適配新語(yǔ)言:只改提示詞,不動(dòng)代碼
這套架構(gòu)的最大賣點(diǎn)是語(yǔ)言遷移成本極低。Khan在文章第6節(jié)專門講適配流程:準(zhǔn)備該語(yǔ)言的常見(jiàn)錯(cuò)誤樣本,重寫(xiě)兩遍提示詞里的示例和約束,跑一批測(cè)試集調(diào)優(yōu)。
不需要重新訓(xùn)練模型,不需要標(biāo)注大量數(shù)據(jù)。對(duì)于缺乏語(yǔ)音語(yǔ)料的小語(yǔ)種,這是現(xiàn)階段最現(xiàn)實(shí)的提質(zhì)路徑。Khan本人的背景也印證了這點(diǎn)——他的GitHub主頁(yè)列著烏爾都語(yǔ)NLP項(xiàng)目,這套方案顯然是從實(shí)際痛點(diǎn)里磨出來(lái)的。
TranscriptEnhancer的代碼結(jié)構(gòu)他沒(méi)完全開(kāi)源,但核心邏輯講得很透:兩遍調(diào)用同一LLM,用不同系統(tǒng)提示詞區(qū)分角色,中間狀態(tài)緩存避免重復(fù)計(jì)算。工程上沒(méi)什么黑魔法,勝在把LLM的推理能力用在了對(duì)的環(huán)節(jié)。
語(yǔ)音轉(zhuǎn)文字的賽道,頭部玩家都在卷端到端模型。Khan的方案反其道而行,承認(rèn)現(xiàn)有模型的局限,用輕量后處理補(bǔ)短板。對(duì)于預(yù)算有限、又要支持多語(yǔ)言的團(tuán)隊(duì),這種"縫合"思路可能比追新模型更務(wù)實(shí)。
最后留個(gè)細(xì)節(jié):Khan在提示詞里埋了一個(gè)自檢指令,讓LLM輸出修改理由。調(diào)試時(shí)能看到第一遍為什么把"color"改成"colour",第二遍為什么加了那個(gè)"the"。這種可解釋性設(shè)計(jì),在LLM應(yīng)用里比準(zhǔn)確率本身更難能可貴。
如果你的產(chǎn)品要支持小語(yǔ)種語(yǔ)音輸入,會(huì)先賭下一代ASR模型,還是試試這種雙遍后處理?
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.