語言 -- 人機介面的最後聖盃
提出機器人三定律的科幻文學大師艾西莫夫,在他的作品中描述了一個各個研究領域都登峰造極以後,每個領域的專家都失去以宏觀角度思考問題,最後因為沒有跨領域的人才,所以人類文明分崩離析的世界。
在那個世界裡,搞不清楚能源系統是怎麼運作的人類其至有個把發電廠當成神在崇拜的宗教…
大學時,曾經讀過一本講程式設計的書,內容有一段的大意是「…因為讓電腦和人類之間缺乏可以直接溝通的工具,所以人類要學習程式語言才能和電腦溝通…」
當時正在研讀語言學相關學分的我就想…與其教人類程式語言,那為什麼不反過來,教電腦人類的語言呢?
現代語言學裡有好幾個學派,其中有一個影響力擴及好幾個語言學以外的領域的學派,就是 MIT 語言學教授 Chomsky 的 Formalism 學派了。
我在這裡使用 Formalism 而非它的中文譯名「形式主義」是因為形式主義這個中文詞彙在中文的語境裡,有一些負面的意思在。大概是指「只是擺個樣子,而沒有真的觸及問題的核心進而決解問題」的意思。這個「形式主義」的中文意義和 Formalism 在語言學裡的意義是有一些落差的,所以我在這裡採用英文的原詞,而非中文的譯名。
Formalism 透過大量整理各個語言的句法和語意,並在最後納入了音韻變化也是結構的線索之後,集大成地用單一一個句法樹的原則,解釋了已知的六千多種人類語言句子裡的詞彙順序問題。
相較於 1950 年代,AI 剛剛萌芽時,動不動就要設計上萬種句法樹只為了描述一種語言的冏困,在 2008 年前後,在 Chomsky 的語言鐵三角 (句法-語意-音韻) 架構底定以後,Formalism 的句法結構收歸整合成一種,便有魔戒 “one ring rule them all” 的氣勢。因為不論是哪一種語言,都可以通用同一種句法樹,只要中心語參數調整過就行了。因此以 “Rule-based” 方法來進行各種 NLP 任務,便從 1950 年的「過於複雜而不可行」,在 2008 年左右,成為可行的方法。
在這樣的成就光環之下,絕大部份的語言學家就像艾西莫夫筆下的學者一樣,從訓練養成的過程裡,就不曾接觸過「有更寬廣的人類社會實際問題需要解決」的想法。
再拖了幾年以後,在 2010 年前後,大數據 (當時還叫「海量數據」) 興起,緊接著的機器學習和深度學習的浪潮,更是完全把 1950 ~ 2008 年這近六十年來語言學家們的努力沖得乾乾淨淨。只剩下在許多「機器學習/深度學習」的簡報裡佔了一句話「1950 年時基於規則的 AI 失敗」就輕輕帶過了。
在卓騰語言科技裡,我們不這麼認為。
我們撿起這六十年磨一劍的 Formalism,開始解各種 NLP 任務。而且我們發現它非常好用,尤其是對於「中文 NLP」的各種瓶頸,對於基於 Formalism 開發出來的 Articut NLP 系統而言,幾乎都是迎刃而解!
不論是最基礎的中文斷詞任務、中文文本分類任務,或是高階一點的中文語意理解任務,甚至是更高階的中文數學應用問題求解的任務和語言學習輔助科技的任務…等等,都是如此。
基於 Articut NLP 系統打造的 Loki 語意詮釋引擎,更讓我們第一次有了可以「讓電腦逐句推論中文意義」的人機互動能力。
設計 Loki 的原理,是依著 “Introducing Discourse Analysis (David Nunan)” 這本書裡分的三層
- Activity (從事的活動)
- Function (對話功能)
- Utterance (實際使用的句子)
用來對應在聊天機器人或是 NLU 上面就是…
- 場景 (Scenario)
- 意圖 (Intent)
- 句子 (Sentence)
藉由 Loki 建立「某個意圖」中會「使用到的句子」,Loki 會擷取出關鍵詞彙以供程式邏輯做為計算使用。
最後將寫好的程式佈署到某個應用場景中。一個透過「語言」做為人機互動介面的人工智慧 UI 便佈置好了。有了可以透過語言進行人機互動的人工智慧,才是真正的人工智慧。否則,從 2012 年 BigData 一詞興起到現在,全球投入了幾千兆美金的資金進入人工智慧領域的各個題目裡,我們真的得到了什麼呢?
自動駕駛會開車了嗎?
智能家居不會開錯門了嗎?
語音辨識是不是仍然是好一點的會撥放音樂,差一點的就只是個輸入法呢?
自然語言處理…或是更精確地說「自然語言理解」這個題目,仍然是人機介面的最後聖盃。而我們有相當的自信,融合了機器學習和結構態樣計算的 Loki 就是找到這座聖盃的關鍵。