詞彙的語法、語義定義完畢後,接下來我們就依這些規則,大量分析文章中的每個句子、每個詞彙的語法和語義,並將分析的結果記錄下來 ,這就是「語料標注」的工作。這些標注的語料,提供給電腦系統進行機器學習,讓電腦學會自動歸納、找出語言的語法以及語義。
我們的想法是,既然語言學家已分析了某些語言結構的邏輯,那麼基於這些存在的語言學知識來教電腦歸納出語言的特性,是一種相當自然合理的方式。
只是我們大多數情況下,不會直接教電腦學會語言學上的規則,給它一條魚,不如給它一支釣竿。我們是給電腦看語言學家分析完成的大量結果,由電腦利用機器學習而自動歸納得到 「規則」, 並以參數的方式(請別擔心,一定是人們看得懂的形態),儲存在資訊學家所設計的模型當中。這種電腦自動學出來的模型,能夠很好地解決語言歧異性,也不會有人工寫死規則的問題。
Q:電腦可以認識所有「詞」嗎?
馬:語言的詞彙組合無窮無盡,不可能將所有詞都收進資料庫中訓練電腦。當電腦面對與時俱進的新詞,例如「郭書瑤」、「班奈狄克·康柏拜區」、「漫撕男」、「非典」,電腦就無法辨識、理解這個詞。
通常未知詞可分為幾種類型:可能是人名、可能是複合詞、或可能是專有名詞。
我們團隊將「中文斷詞」這個工作,切分成下圖 7 個步驟,每個步驟都是一種演算法模組,處理一種特別的問題。

教電腦擷取人名,是相對單純的工作,因為人名的結構有跡可循。
中文人名通常是三個字、或兩個字,甚至能參考百家姓、某一年考生的所有名字來建立資料庫,例如「慧」、「婷」常出現在女性人名中,而「雄」這個字常用在男性人名中。從統計機率來看,有些字則是不可能作為人名使用。人名的前後文也會有一些暗示訊息,例如「XXX 表示…」、「 XXX 做了…」、「執行長 XXX」。當電腦分析訓練用的文章資料,自己找出這些規律,電腦就能學會判斷某些未知詞是否為人名。
此外,「複合詞」也是舉不勝舉的未知詞來源。
中文的複合詞,由相當隨性的詞性結構組成,例如「趣味性」,隨意置換字尾,就變成「趣味感」或是「趣味化」。複合詞的字差一點點,就能延伸許多詞意,這讓電腦需辨識的詞彙量變得無比龐大。這部分透過前輩們的研究,漸漸找出複合詞的組成邏輯,整理在中央研究院漢語平衡語料庫(標記了一千多萬個詞彙),也整理出常用詞首、詞尾字資料庫。
目前斷詞系統中的複合詞主要是針對「名詞複合詞」,但其實我們也在「動詞複合詞」上也累積了不少研究。舉一個實例來說明,例如「開聊」和「聊開」:

從語言學的角度,動詞是句子的核心,也是最重要的中心語。「開」這個字有著動詞中心語的起始功能 (inchoative),然而放在詞首、詞尾不同位置會產生些微差異。 (相關報導: 聽膩Siri的刻板女聲?世上首個「無性別」語音助理出現啦!嗓音非男非女,聽來意外超順耳 | 更多文章 )
除了人名、複合詞,新聞或網路文章還會看到許多新創的專有詞,例如:非典( SARS 重症非典型肺炎的簡稱)、河蟹(意指封鎖、掩蓋負面消息)。這類專有詞可以透過 bottom-up merging algorithm (合併字詞演算法)處理。





























































