Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the acf domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6131

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the insert-headers-and-footers domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6131

Notice: Undefined index: options in /var/www/data/wp-content/plugins/elementor-pro/modules/theme-builder/widgets/site-logo.php on line 194
Google可能會有語音版嗎?會長怎樣?「電腦聽說人類語言」技術的前世今生│研之有物-中央研究院-李琳山院士

Google可能會有語音版嗎?會長怎樣?「電腦聽說人類語言」技術的前世今生

華語語音技術

「天下沒有兩句話的聲音數據是一樣的!」中研院李琳山院士在講座中說明,人類語言的聲音數據千變萬化,同一個人說同一句話兩次,其數據絕對差很多。這是發展語音技術的最主要困難點。好在人類語言有結構,因此語音技術必須透視聲音的結構。本文整理演講精華,一同了解華語語音技術的前世、今生並展望來生。
李琳山是臺灣研究語音技術的先行者,也是全球研究華語語音技術的拓荒者,一路看著「華語語音技術」由誕生、成長到茁壯。 圖│研之有物
李琳山是臺灣研究語音技術的先行者,也是全球研究華語語音技術的拓荒者,一路看著「華語語音技術」由誕生、成長到茁壯。
圖│研之有物

中央研究院李琳山院士演講的這一天,已經是臺北連續第五天微雨。前往會場的路上,你可能會問 Siri 明天天氣如何,並於一秒後聽到她回覆:「陰天,22 度」,還附上參考網址。究竟機器是如何聽懂人話的?

「語音技術,即是藉由機器處理語音訊號的數據。」李琳山開場時表示,人的語言的聲音是聲波,用麥克風收下來變成訊號後成為時間函數,再把任一小段「聲波波形」轉變成「實數序列」,也就是數據,再進行分析處理。

語音技術的最主要困難點,在於「聲波波形」的千變萬化。

例如,李琳山展示某一個人說一句話「到不到臺灣大學」的聲波,發現句中兩個「到」字聲波長得完全不一樣、音高也很不同,「天下沒有兩句話是一樣的!」

此外,我們熟知的是華語中有很多同音字,如說到「今」、「天」時,為什麼不會認為前者是黃金的「金」?李琳山解釋,聲音的訊號是有結構的,人腦中有類似辭典及文法、還有遠遠更為複雜的知識,我們會根據這些知識及前後文判斷出正確文字。因此,語音技術必須透視聲音的結構。

要讓電腦像人一樣,學會「聽」和「說」人類語言有多難?得從華語語音技術的前世說起。

前世:牙牙學語的機器

1980 年,李琳山剛取得博士學位不久,回到臺灣。當時製作一份中文文件,得使用嵌有幾千個鉛字的大鍵盤中文打字機,臺北街頭還有不少打字行在徵求打字員。當時很多人思考:中文字輸入機器真的這麼困難嗎?並提出了許多解決方案,例如字根法、注音符號法等。李琳山則想著是否可以用「聲音」輸入中文。但是,以當時技術及臺灣的研究環境而言,他說:「太難了」。

1990 年代的中文鉛字打字機,現存於德國慕尼黑大學漢學院。圖│Wikipedia (CC BY-SA 3.0)
1990 年代的中文鉛字打字機,現存於德國慕尼黑大學漢學院。
圖│Wikipedia (CC BY-SA 3.0)

為了實現用「聲音」輸入中文,構想之初,李琳山認為華語是一字一音,音的總數有限,頂多一千多個,讓機器學會聽這一千多個音,應該就可以用聲音來輸入文字。不過事情沒有想像中簡單,因為透過文獻發現,當時連英語語音輸入的技術都尚在極為原始的階段。因此,李琳山決定先教電腦「說華話」,但即使做出所有的一千多個音、拼成句子,機器發出來的音仍然不知所云。

李琳山百思不得其解:人說話不就是把這些音拼起來嗎?為什麼機器拼的聽起來不知所云?直到 1983 年,聽到一位語言學家的專業建議,李琳山開始尋找華語語句中每個字發音的「調整抑揚頓挫的一般性規則」。

華語語句中每個字只要前後字不同,就會有不同的抑揚頓挫,也就是音高、音量、音長和停頓的變化。

看來,唯一辦法是從數據中找答案。李琳山決定土法煉鋼,造出一堆句子並錄音,透過人工手動分析,確實慢慢發現若干一般性規則。

「我有好幾把小雨傘」一句中每個字都是第三聲,就有複雜的第三聲相連規則:一般熟知的是兩個第三聲相連時,前面那個會變二聲,例如「總統」。圖│研之有物(資料來源│李琳山)
「我有好幾把小雨傘」一句中每個字都是第三聲,就有複雜的第三聲相連規則:一般熟知的是兩個第三聲相連時,前面那個會變二聲,例如「總統」。
圖│研之有物(資料來源│李琳山)

李琳山分析上圖這句話的文法結構,發現各個字之間有各種不同的文法結構邊界,原來前述三聲變化規則可以橫跨某些邊界,但不能橫跨其他邊界。如此一來就有答案了。把全部規則兜起來以後,再讓電腦用單音拼成一句話,並照規則調整每個字的抑揚頓挫,此時電腦雖然有點口齒不清,但大致能聽得懂電腦在說什麼了。

1984 年,短短一年後,口齒不清的電腦成為全球首台能說出華語的機器。李琳山给它一個很直白的名稱:「電腦說國語」,此套系統只要輸入文字或注音,就可以輸出聲音。由於聲音還是不太入耳,李琳山的研究團隊三年後改良出更好的系統,甚至能表演相聲,展現豐富的抑揚頓挫,例如下面音檔示範:

李琳山之後開始想訓練機器聽華語。他提出三個基本假設,試圖讓華語語音辨識 (Speech recognition) 的問題變得比較可以解決。

首先,一次只輸入一個音就好,也就是一字一字「斷開」輸入,藉此避免連續語句中不同的前後字影響,造成不同的聲音訊號變化的問題。第二,每一位使用者自己說話訓練機器聽他的聲音,也就是要避免不同說話者的「音質」、「口音」等等差異。第三,辨識過程中一定會出現錯誤,讓人工操作軟體來更正就是了。這三個假設讓問題比較有機會解決。

機器操作時,需要當年看來極為龐大的運算能力,也需要複雜的硬體電路支援,然而因為當時軟體的計算能力太弱了,而不同的硬體電路拼湊困難始終不成功,後來李琳山決定傾盡研究室的財力,自國外購買平行運算電腦 (transputer),終於在 1992 年完成第一部語音辨識系統,命名為「金聲一號 」(Golden Mandarin I)。這是全球首見的華語語音輸入系統,但一次只能輸入一個字,且那一個字需要好幾秒才看到辨識結果。之後不斷修改翻新,三年後的金聲三號 (Golden Mandarin III) 終於不需要斷開文字,可以直接用連續語音輸入中文字。

李琳山說:「以前最大的問題是,華語中每個音的訊號的波形,長相都會因為前後字不同而改變。到金聲三號時我們已經讓機器自行由數據中,學出這些變化來解決這個問題。以現代名稱來說,就是古代的機器學習 (machine learning) 。」李琳山說,以今天科技進步的速度來看,1990 年代稱為「古代」應屬合理。

今生:機器有能力聽完千百人一生聽過的聲音

隨著機器學習等技術的進步,今天各種語音個人助理如 Siri 等等,聲控與回應能力也越來越強 。李琳山說明,其實 Siri 並沒有太多特別了不起的技術。

Siri 技術原理概念圖。 圖│研之有物
Siri 技術原理概念圖。
圖│研之有物

如上圖,開發者把龐大的機器及計算資源、數據模型等設置在雲端,使用者對智慧型手機說話後,聲音訊號被送至「雲端」。雲端的龐大機器分析巨量資料、透過深層學習 (Deep Learning, 或譯深度學習)得到的技術來進行聲音辨識、資料搜尋,造句並合成聲音等,再傳回使用者。

如果除去雲端架構、巨量資料、深層學習等今日尖端技術及龐大的運算資源,Siri 剩下的華語語音辨識核心技術和 1995 年李琳山團隊的金聲三號差別並不大。

在今日巨量資料及深層學習的環境裡,機器可以在短期內聽完一個人由出生到 70 歲可聽到所有的聲音的總時數,甚至可聽完千百人一生聽過的聲音的總和。因此,機器有可能聽得比人還好嗎?現在或短期內還不會發生,但如是針對有特定規則的比賽,例如下棋或電腦遊戲,我們知道機器贏人已時有所聞。

提及「華語語音」辨識技術與「西方語音」辨識技術的差異,李琳山說明,華語是方塊字非拼音語言,由字構詞,由詞造句。詞的定義和在整句文句中詞的邊界也不明確。我們時常自動把很多小詞串起來變成長詞,又可以把長詞縮短變成短詞等等,也隨時自動產生很多新詞。

為了辨識語音、理解語意,機器自然需要詞典資料庫。然而開發者遇到的第一個問題可能是──該放多少詞?哪些詞?因為華語的詞幾乎是無限多的。

再者,華語一字一音,音的總數有限,但字總數很多,故同音字多,不同聲調和不同音的組合,產生出千變萬化的詞和句。例如,二人都說喜歡「城市」,乍聽並不易判斷他們到底是喜歡「城市」或「程式」。

華語中只有少數有限的「音」,每個「音」可代表很多同音字,這些字可拼成千千萬萬的詞和句。

華語的「音」帶有極豐富的語言訊息,這種「音」的層次的語言單位是西方語言所沒有的。

李琳山認為,透過巨量資料及深層學習,有機會讓巨量資料涵蓋人類語言中的各種現象,也有可能讓機器找到人類尚未考慮到的答案。也就是說當機器非常強大、數據多到可以涵蓋所有語言現象時,機器「有可能」自動學習到所有這些現象。不過目前還沒有發生。

語音版的 Google:找聲音不是找文字

談及下一階段語音技術發展的可能方向,李琳山認為自己一直是追尋「遙遠大夢」的人,投入的研究方向常常在短期內看不出有實質回收的機會,例如:他今日非常有興趣的領域之一是語音搜尋,這就是語音版的 Google 。

網路多媒體湧現,如 YouTube 或線上課程,多數影片內容常有非常豐富的「聲音」,但其中的文字必須由人輸入,而且文字量常常比聲音少。

但現有透過 Google 去搜尋 YouTube 或影音平台的功能,僅止於搜尋那些人為輸入、數量較少的「文字」,例如影片描述、字幕等等,卻不是影音本身的「聲音」。

李琳山說:「 Google 看盡天下文章後能幫人找出任何一篇文章。機器聽聲音正如看文章,應該也可以聽盡天下聲音後,找到其中任何一句話。」例如,如果有人想找有關「深層學習」的演說,機器聽到指令搜尋後,應能跟他說某部影片的某句話提到「深層學習」。

目前用 Goole 搜尋 YouTube 影片時仍需要「文字輸入」關鍵詞,且只能找到整段影片,並無法知道影片中的每一句話各在說什麼,除非仔細聽一遍。這和李琳山所說的語音搜尋不同。 圖│Google 搜尋
目前用 Goole 搜尋 YouTube 影片時仍需要「文字輸入」關鍵詞,且只能找到整段影片,並無法知道影片中的每一句話各在說什麼,除非仔細聽一遍。這和李琳山所說的語音搜尋不同。
圖│Google 搜尋

李琳山的團隊曾蒐集 110 小時、6000 則的公視新聞製作雛型系統,只要對機器說出「王建民讀的國小」,機器便會自動抓出含有「王建民」與「國小」兩個關鍵詞的新聞片段。

再以網路課程為例,李琳山的研究團隊曾開發「臺大虛擬教師」,把課程錄音以投影片為單位,將聲音切成小段,變成一張張有聲投影片。再從每張投影片中抽出「關鍵詞」建成關鍵詞圖,分析詞關鍵詞之間的關係。如此一來,機器不僅可以找出討論相關主題的課程段落,讓使用者知道所找到的投影片的大致內容,並可以建議學習的前後順序,也能自動摘要出其中的語音資訊。

李琳山現場展示「台大虛擬教師」的操作。例如,有一個學生聽演講時聽到類似 “Black word algorithm” (黑字演算法)的字眼,就上網查相關課程,發現果然有好幾張投影片都說到這個詞。不過一聽就發現,所找到的投影片真正說的是 “Backward algorithm” (反向演算法),那才是那個學生聽到的。李琳山說:「這可以證明我們搜尋的是聲音,而不是文字。」

來生:機器把全球多媒體數位內容融會貫通、造福人群

談起語音技術的未來,李琳山認為,未來機器有機會替人類把網路資訊去蕪存菁、融會貫通。例如 2015 年 YouTube 的尖峰時段每分鐘有 300 小時影片上傳 ,2016 年 Coursera 線上課程有將近 2000 門課。沒人有能力看完或聽完所有這些數位內容,人類的文明精華因而埋在大量不相干的資料堆中。但是機器可以看完、聽完它們。

李琳山舉例:機器有可能聽完全部內容並融會貫通,再為每個人抽出他所需要的部分,由機器量身訂製課程。例如一名工程師被派到奧地利出差,他跟機器說:「我想學莫札特作品的知識,但我是個工程師,沒有背景知識,願意花三小時來學。」李琳山認為技術上,機器有機會做得出這種「客製化課程」。

演講中,李琳山常以「遙遠大夢」比喻語音技術的研究。

回顧華語語音技術三十幾年的發展,電腦機器已經從「牙牙學語」進展到「對答如流」,卻還有許多需著力之處。李琳山說「芝麻開門」是人類的千古大夢,希望開口說話就可以打開寶藏的大門。以今日眼光來看,網路是全人類的知識寶藏,未來隨口說句話便可以開啟寶藏大門是有機會的。他說:「大夢雖遙遠,有一天有人會實現它。」

訂閱電子報

立即訂閱研之有物電子報,一起探索這世界