人工智慧學習筆記:自然語言處理(一)
關於機器是否能夠擁有智能的問題,人們已經研究和思考了幾百年。對這一問題的思考和研究為人類帶來了一個新領域,那便是自動化。歷史上的自動化不只是電氣工程時代以後的事情。實際上在最古老的抽水馬桶,即古代英國女王伊麗莎白二世宮廷里應用的抽水馬桶上,人類就已經設計了基於機械的自動化設備:可以通過水箱里的水位自動控制是否應該給水箱里加水。
而自動化並沒有在過去解決機器智能的問題。只要略懂計算機科學的朋友大抵知道一個概念:圖靈測試。
圖靈測試:如果一個人(代號C)使用測試對象皆理解的語言去詢問兩個他不能看見的對象任意一串問題。對象為:一個是正常思維的人(代號B)、一個是機器(代號A)。如果經過若干詢問以後,C不能得出實質的區別來分辨A與B的不同,則此機器A通過圖靈測試。
人類的智能的表現形式有許多種。我們知道海豚和黑猩猩或許可以掌握幾百個人類的辭彙【1】,狗和大象也可以在經過訓練之後表演小學算數。但是我們知道,海豚和黑猩猩都不會用人類的語言相互溝通,也不會一次打三個小時的魔獸世界,更不知道什麼是量子力學。以上便是人類的智能。包括,語言,圖形識別,情感,哲學,科學等等。而在這之中,圖靈的測試,是基於語言的。用計算機,人工智慧的方法(大多數時候還需要統計學)處理自然語言的學科被成為自然語言處理,Natural Language Processing,簡稱NLP。請注意,自然語言處理往往不涉及對語法的研究。用語法構造規則來做自然語言處理,其實是一個已經被證明是錯誤的不實用的思路。(或許在將來的某一天這個思想會煥發光彩)
那麼什麼是語言呢。實際上語言可以分為幾種,比如形式語言,自然語言。編程語言一般都可以被認為是形式語言。比如Java,C++和Python等。其特徵是:有一個被精確定義的語言模型。而人類的語言,往往是自然語言。自然語言的特徵是,他沒有準確定義的一個語言模型。比如舉個例子:中國隊大敗(勝)美國隊。很顯然,如果用這種方法設計編程語言,是絕對不行的,即使你完全不懂什麼是形式語言。
我們現在給出自然語言處理的一個標準定義:自然語言處理(英語:natural language processing,縮寫作 NLP)是人工智慧和語言學領域的分支學科。此領域探討如何處理及運用自然語言;自然語言認知則是指讓電腦「懂」人類的語言。其中,自然語言處理分為自然語言生成,和自然語言理解。自然語言生成系統把計算機數據轉化為自然語言。自然語言理解系統把自然語言轉化為計算機程序更易於處理的形式。
一般來說,對於入門玩家來說,NLP,往往專門指自然語言理解。自然語言生成其實也是很好玩的東西。比如,生成類似魔獸世界裡高等精靈的語言:奎爾薩拉斯語一直是我的夢想之一。官方給出的幾句奎爾薩拉斯語本身就非常好聽。而且目前,用NLP可以寫文章和寫詩。百度公司曾經出過這方面的應用。
在這裡,希望大家明確一個概念:自然語言處理的絕大多數思想和方法,來源於數學,統計,而非語言學。至少目前已經證實,前者比後者要有用的多。
自然語言處理有非常廣泛的應用。比如在英特網上有海量的信息。這些信息大多數都是用自然語言,人類的語言寫成的。如果計算機能夠」理解「這些信息,並且有一個類似人類學習的過程,能夠通過這些信息驅動決策,毫無疑問對人類社會有巨大的幫助。譬如在金融界,一個金融分析師是非常難讀完大量的財務報表,公司報表,產業新聞的。但是計算機即將可以做到。這就好比,古代埃及人修建金字塔,可能需要幾十萬的民工用簡單的工具(此處,據埃及學【2】學者目前的普遍看法,修建埃及金字塔的大多數人,是民工而非奴隸)。但是,如果用現在的土木工程設備,比如你去江蘇南通找一個施工隊;可能用幾百個民工就給你造起來了。再比如,美國在搞反恐戰爭的時候,曾經遇到過一個很大的麻煩,就是恐怖分子在互相之間通話的時候,沒有說標準的阿拉伯語,而是在其中摻入了大量的偏門方言,俚語和一語雙關。因此即使是精通阿拉伯語的美國中情局僱員(有些甚至可能是第二代阿拉伯人移民),也不一定能完全明白恐怖分子想要做什麼。而僅有的阿拉伯第一代移民,處理能力,又是十分有限的。類似的方法當年抗日戰爭的時候,我軍也曾經用溫州話,潮汕話等極其難懂的方言作為通訊密碼。遇到這種情況,NLP便是一個解決之道。
作為自然語言,一定是具有歧義,多重含義,一語雙關等等特徵的。當然有些語言在這方面會好一些。比如法語和德語表達意思就一定比英語更為準確。阿拉伯語和波斯語往往比土耳其語表達的更準確。漢語往往比日語和韓語表達的更準確。而古代印度的梵語則是被認為,是所有語言里最精確的。其實即使是漢語這種非常完備的語言,在梵語-漢語翻譯佛經的時候也會出現問題。甚至曾經有學者建議用梵語作為機器翻譯系統的標準語言。當然了只要是自然語言,肯定跑不了歧義和一語雙關等等問題。因此我們需要做一件事,用編程,來最大程度的去模擬自然語言。
而發展到當代的NLP,更是一個碩果累累的新領域。NLP在現代的領域包括:文本分類,信息檢索和信息提取等等子領域。
注釋:
【1】. Norvig&Stuart,Artificial Intelligence:a modern approach, P715
【2】.埃及學被認為是西方考古學的正宗。埃及學(英語:Egyptology)是研究古埃及文化(日常生活、語言、文學、歷史、宗教、文化和藝術、經濟、法律、道德和精神文明)的學科。其研究內容從史前(約前5千年)開始直到羅馬帝國統治結束(約4世紀)。西方的古典學(英文:the classics)的主流之一。西方的古典學還包括,亞述學,印度學,波斯學,漢學等等。
推薦閱讀:
※量子計算正接近現實 早期投資者已看到這些商機
※8個步驟,上手解決90%的 NLP 問題
※人工智慧會毀滅人類嗎?
※什麼是智能機器人?
※Why are you here?