← 全部文章

AI 朗讀為什麼終於像真人(又還會在哪露餡)

如果你對文字轉語音的印象,還停在那種平板、機械、常常唸錯字的聲音,那印象已經過時了。合成朗讀進步得很快,現在順耳到可以連聽好幾個小時。搞懂到底改了什麼滿有意思,也能幫你把一本書聽出最好的效果,並且知道哪些期待才實際。

舊做法,以及它為什麼像機器人

過去幾十年,文字轉語音大致有兩種機械做法。

比較舊的一種,是用規則描述母音和子音怎麼組合,再照規則把聲音拼出來。出來的就是那種一聽就知道是假的、嗡嗡作響的人工嗓音。後來出現的串接式合成,先請真人錄下成千上萬個很短的聲音片段,用的時候再即時拼接起來。單看一個詞,它確實比較像真人了,但接縫聽得出來,而且它不懂一整句話的意思。它會把字唸出來,卻抓不到字背後的語氣。

這兩種做法都缺一樣東西:語調,也就是說話的旋律。問句結尾的上揚、落在重點字上的重音、轉折前那個小停頓,一個聲音有沒有生命,多半就看語調,而規則加片段的系統幾乎做不出來。

改變的關鍵:模型學會了說話的節奏

現在的朗讀,是用大量真人語音訓練出來的神經網路生成的。模型不再拼接片段,而是學會人自然說話的樣子,一次生成一整段聲音。它的語調是從例子裡學來的,不是照規則來,所以問句該上揚、重點字該加重,它大多數時候都做得對。

還有兩件事把品質再往上推。第一,模型更大了,訓練用的語音也更多、更多樣,能學到更細膩的地方。第二,改成事先算繪、而不是即時生成,讓系統有餘裕先看過一整句、一整段,知道後面接什麼,再安排整段的節奏和輕重。正是這份事先安排,讓雲端音訊聽起來從容又流暢,而即時生成的小模型頂多就是把字唸對而已。

合成語音還會在哪露餡

這件事還沒完全解決,裝作解決了對誰都沒好處。有幾種狀況,連不錯的系統都還會出錯:

  • 少見的名字和生造的詞。 奇幻小說裡的名字、罕見姓氏、外來借詞,模型都只能用猜的,有時候就猜錯。
  • 同形異音詞。 同樣的拼法、不同的唸法。英文的「He will lead the way」對上「a lead pipe」,「a bass guitar」對上「a bass in the lake」,模型得讀懂上下文才選得對,偶爾會弄錯。
  • 反諷和言外之意。 一句挖苦的話會被平平地唸過去,因為字面上不帶那個語氣。真人旁白讀懂了意思,自然會把語氣加進去。
  • 跨越很遠的重點。 一個要到三段之後才收的伏筆,一個字的分量取決於很早以前說過的話,這些都很難唸得到位。

這些是現在的極限。範圍在縮小,但還真實存在,也正因如此,對一本靠詮釋撐起來的書,一位出色的真人旁白在演繹上還是更勝一籌。

怎麼聽出最自然的效果

知道上面這些之後,有幾件實際的事會有幫助:

  • 重要的書,就選品質更好的聲音。 手機上,裝置內建的聲音免費又即時,只是稍嫌平板。雲端音訊用大得多的模型算繪,聽起來明顯更像真人。在 BookNPC 裡這就是錄音室選項,兩者怎麼取捨,裝置內建 vs 雲端朗讀裡談過了。
  • iOS 上記得下載進階系統語音。 就算是免費的裝置內建朗讀,加上它們也會好很多。這裡有一份簡短的說明。
  • 從乾淨的書檔開始。 合成朗讀唸得好不好,很看你給它的文字。一份排版完整、乾淨的 EPUB 唸起來很順;一份雜亂的匯出檔,什麼聲音來唸都會卡卡的。

老實話

AI 朗讀已經從「無障礙勉強能用」進步到「純粹為了享受也聽得下去」。多數書、多數時候,它現在聽起來都很自然。碰上那種靠演出撐場的書,它還比不上頂尖真人旁白的演繹,偶爾也還是會唸壞一個名字或一個雙關。這兩點都是實話。

真正要緊的是它帶來的改變:你手上任何一本書,都能有一份聽起來自然的朗讀,而不再只有那少數幾本商業錄過音的。BookNPC 的錄音室聲音用雲端算繪,免費版用你手機裡的聲音,你大可挑一本自己的書,親耳聽聽這項技術走到了哪一步。