Siri、Alexa說話越來越像真人的秘密:自然語言處理的終極目標──讓AI能像人類一樣讀懂文章

2019-09-26 15:52

? 人氣

自然語言處理的演變。(圖說設計/林婷嫻、張語辰)
自然語言處理的演變。(圖說設計/林婷嫻、張語辰)

Q:訓練電腦處理自然語言,需要什麼樣的資料?

[啟動LINE推播] 每日重大新聞通知

馬:我們團隊成員涵蓋中研院語言所、資訊所的研究人員,所以我們也充分利用這兩個領域的專長。

首先,語言學家為九萬多個中文詞彙定義了完整的語法、以及語義表達方式,並且也標明詞彙之間的關係,例如:「蝴蝶」和「昆蟲」具備「前者是後者的一種」這樣的詞彙關係;「醫生」和「病人」具備「前者醫治後者」這樣的詞彙關係。這樣的表達構建了中文的知識圖譜,我們稱為「廣義知網」。

詞彙的語法、語義定義完畢後,接下來我們就依這些規則,大量分析文章中的每個句子、每個詞彙的語法和語義,並將分析的結果記錄下來 ,這就是「語料標注」的工作。這些標注的語料,提供給電腦系統進行機器學習,讓電腦學會自動歸納、找出語言的語法以及語義。

我們的想法是,既然語言學家已分析了某些語言結構的邏輯,那麼基於這些存在的語言學知識來教電腦歸納出語言的特性,是一種相當自然合理的方式。

只是我們大多數情況下,不會直接教電腦學會語言學上的規則,給它一條魚,不如給它一支釣竿。我們是給電腦看語言學家分析完成的大量結果,由電腦利用機器學習而自動歸納得到 「規則」, 並以參數的方式(請別擔心,一定是人們看得懂的形態),儲存在資訊學家所設計的模型當中。這種電腦自動學出來的模型,能夠很好地解決語言歧異性,也不會有人工寫死規則的問題。

Q:電腦可以認識所有「詞」嗎?

馬:語言的詞彙組合無窮無盡,不可能將所有詞都收進資料庫中訓練電腦。當電腦面對與時俱進的新詞,例如「郭書瑤」、「班奈狄克·康柏拜區」、「漫撕男」、「非典」,電腦就無法辨識、理解這個詞。

通常未知詞可分為幾種類型:可能是人名、可能是複合詞、或可能是專有名詞。

我們團隊將「中文斷詞」這個工作,切分成下圖 7 個步驟,每個步驟都是一種演算法模組,處理一種特別的問題。

中文斷詞系統的處理步驟。(資料來源:〈未知詞擷取作法〉,作者:馬偉雲)
中文斷詞系統的處理步驟。(資料來源:〈未知詞擷取作法〉,作者:馬偉雲)

教電腦擷取人名,是相對單純的工作,因為人名的結構有跡可循。

中文人名通常是三個字、或兩個字,甚至能參考百家姓、某一年考生的所有名字來建立資料庫,例如「慧」、「婷」常出現在女性人名中,而「雄」這個字常用在男性人名中。從統計機率來看,有些字則是不可能作為人名使用。人名的前後文也會有一些暗示訊息,例如「XXX 表示…」、「 XXX 做了…」、「執行長 XXX」。當電腦分析訓練用的文章資料,自己找出這些規律,電腦就能學會判斷某些未知詞是否為人名。

此外,「複合詞」也是舉不勝舉的未知詞來源。

中文的複合詞,由相當隨性的詞性結構組成,例如「趣味性」,隨意置換字尾,就變成「趣味感」或是「趣味化」。複合詞的字差一點點,就能延伸許多詞意,這讓電腦需辨識的詞彙量變得無比龐大。這部分透過前輩們的研究,漸漸找出複合詞的組成邏輯,整理在中央研究院漢語平衡語料庫(標記了一千多萬個詞彙),也整理出常用詞首、詞尾字資料庫

關鍵字:
風傳媒歡迎各界分享發聲,來稿請寄至 opinion@storm.mg

本週最多人贊助文章