計算語言學,又或者自然語言處理,是一門跨學科的研究領域。在這個領域中,研究者試圖找出自然語言的規律,建立運算模型,最終讓電腦能夠像人類般分析,理解和處理自然語言。
在自然語言處理方面,我們最終極的期待是做出像星際大戰(Star Wars)裡C-3PO一般的機器人或者星艦迷航記(Star Trek)裡的宇宙翻譯機。
而最新技術裡的典型例子包括:Google翻譯,Apple的Siri,IBM Waston, Microsoft Cortana, Amazon Alexa 等。
自然語言處理難在於,他所包括的領域眾多。其中,自然語言處理依賴語言學裡處理字,詞,句子的方式 ;心理學裡人類如何理解,使用語言來溝通;計算機科學中的模型和演算法;哲學中的語義和如何解釋知識,和如何將智慧和解釋使用人工智慧的方式描述。
當電腦在讀取一個句子甚至一個單字時,經常會有一些問題出現。
字典這個東西,不是每個字都有,我的意思是,不是每一種可能出現的變化都有。例如我們在字典裡可以找到,鬆綁(untie)這個字,但是找不到能綁起來的(tieable)。而電腦要能區分哪個部分才是詞綴,從而得知untieable這個字應該是可被鬆綁的。又或者有人說,根據內容,應該是一個不可被解開的結,畢竟不可被綁的結似乎是不合理的。
在自然語言處理方面,我們最終極的期待是做出像星際大戰(Star Wars)裡C-3PO一般的機器人或者星艦迷航記(Star Trek)裡的宇宙翻譯機。
而最新技術裡的典型例子包括:Google翻譯,Apple的Siri,IBM Waston, Microsoft Cortana, Amazon Alexa 等。
自然語言處理難在於,他所包括的領域眾多。其中,自然語言處理依賴語言學裡處理字,詞,句子的方式 ;心理學裡人類如何理解,使用語言來溝通;計算機科學中的模型和演算法;哲學中的語義和如何解釋知識,和如何將智慧和解釋使用人工智慧的方式描述。
![]() |
語言分析的層級和計算難度 |
語素
以語素方面表示,untieable這個字究竟是不可被綁的還是可被鬆綁的?字典這個東西,不是每個字都有,我的意思是,不是每一種可能出現的變化都有。例如我們在字典裡可以找到,鬆綁(untie)這個字,但是找不到能綁起來的(tieable)。而電腦要能區分哪個部分才是詞綴,從而得知untieable這個字應該是可被鬆綁的。又或者有人說,根據內容,應該是一個不可被解開的結,畢竟不可被綁的結似乎是不合理的。
句法
以句法方面,rice flies 這個字是飯(名詞)蟲(名詞) 還是飯(名詞)在飛(動詞)?什麼時候walk是名詞(例如: I have a five-minutes walk)又或者walks為動詞(He walks to classes everyday)。一樣按造邏輯,通常飯不會飛,所以flies應該是名詞。同樣的,walk作為名詞時,普遍是單數,因此是動詞的機率比較大。語義
bank這個字在英文中有兩個意思,銀行或者岸。cotton bag 棉花袋可以是裝棉花的袋子或者棉花做的袋子。這種單字通常就依賴句子前後的內容。談話
Bill要被檢舉了,and他叫了律師。“and”在這裡表示加上的概念還是一個原因?當然我們知道and應該被解釋為因此,所以等。然而電腦並不是這樣理解語言。他最有可能得知應該是"因此"的方式在於,檢舉跟律師有因果關聯。語用
當有人問你,「可以幫我把鹽遞過來嗎?」你應該回答可以(並不做任何動作)還是直接把鹽遞過去?我們知道這句話是個問句,並且是一個請求動作的問句。但電腦如何得知應該回答問題還是做出行動?知識
當我今天說我請了「五個人幫我抬了一把椅子」,你應該會用震驚或疑惑的眼神看著我。畢竟通常一把椅子不需要五個人來搬,除非這把椅子有什麼特別的地方。但電腦並不會知道這種知識,對電腦來說,這是一個文法正確的句子。因此讓電腦理解這些常識,就是一大課題。應用
以文字為基礎的應用
- 尋找特定主題的文件
- 信息檢索:尋找特定詞彙或概念
- 信息抽取:從大量資訊中抽取特定訊息
- 完全文字理解
- 翻譯
- 概要:例如自動文摘
- 知識獲取
以對話為基礎的應用 - 有關於人機互動
- 回答問題
- 教學系統
- 解決問題
語言處理 (待更新)
未來期許
- 自動產生文章(可參考bot or not)
- 翻譯網頁成不同語言
- 教盲人說話
- IoT: 與App說話
- 找餐廳
- 回答問題
- 改作文
- 隱藏字幕功能
- 自動描述足球比賽!
留言
張貼留言