《統計自然語言處理》讀書筆記 一.基礎知識及概念介紹
最近準備學習自然語言處理相關的知識,主要參考《統計自然語言處理·宗成慶》和《Natural Language Processing with Python》,推薦大家閱讀。第一篇主要介紹的是NLP的基礎知識和概念介紹,其實也是我關於NLP的讀書筆記吧,希望對大家有所幫助。
一. 概念介紹
自然語言處理
自然語言處理(Natural Language Processing,簡稱NLP)技術的產生可追溯到20世紀50年代,它是一門集語言學、數學(代數、概率)、電腦科學和認知科學等於一體的綜合性交叉學科。如何讓計算機正確、有效地理解和處理人類語言,即“理解人所說的話”是當今具有巨大挑戰性的理論和技術問題。近年來應用包括文字識別、語音合成、網路資訊監控、不良資訊過濾預警、影象識別、情感計算、理解技術、問答系統。
中文資訊處理
其中中文資訊處理又是NLP重要的一個分支,目前國際上頗具影響力的技術評測,包括機器翻譯評測、資訊抽取評測、句法分析評測都與漢語密切相關。中文資訊處理既有NLP共性的問題,如生詞識別、歧義消解等,又有中文字身的問題,如漢語自動分詞、詞性定義規範問題等。
書籍介紹
《統計自然語言處理》詳細介紹了國內學者在漢語語料庫和詞彙知識構建、自動分詞(包括分詞方法和命名實體識別)與詞性標註、句法分析及口語資訊處理等最新研究成果,還包括國際計算語言大會(ACL,剛在北京召開)最佳論文的部分。
本書第1至9章介紹統計自然語言處理的理論,包括預備知識、形式語言與自動機、語料庫與詞彙知識庫、語言模型、隱馬爾可夫模型、漢語自動分詞與詞性標註、句法分析和語義消歧;第10至15章主要介紹統計自然語言處理的應用,包括機器翻譯、語音翻譯、文字分類、資訊檢索與問答系統、自動文摘與資訊抽取、口語資訊處理與人機對話。
關於“理解”
關於“理解”的標準總會想到英國數學家圖靈(Turing)在1950年提出的評測標準:如果一個計算機系統的表現(act)、反應(react)和相互作用(interact)都和有意識的個體一樣,那麼,這個計算機系統就應該被認為是有意識的。
在自然語言處理領域中,人們常用圖靈實驗來判斷計算機系統是否“理解”了某種自然語言的具體準則,如:通過問答系統(question-answering)系統測試計算機系統是否能夠正確地回答輸入文字中的有關問題;通過文摘生成(summarizing)系統測試計算機系統是否有能力自動生成文字摘要;通過機器翻譯(machine translation,MT)系統測試計算機系統是否具有把一種語言翻譯成另一種語言的能力等。
二. 自然語言處理研究內容和基本方法
研究內容
自然語言處理研究內容十分廣泛,大致如下研究方向:
機器翻譯(machine translation):實現一種語言到另一種語言的自動翻譯。
自動文摘(automatic summarizing或automatic abstracting):將原文件的主要內容和含義自動歸納、提煉出來,形成摘要或縮寫。
資訊檢索(information retrieval):又稱情報檢索,就是利用計算機系統從海量文件中找到符合使用者需求的相關文件。面向多語言的IR叫跨語言資訊檢索。
文件分類(document categorization):又稱文字分類或資訊分類,利用計算機系統對大量的文件按照一定的分類標準(如主題或內容劃分)實現自動分類。
問答系統(question-answering system):通過計算機系統對人提出的問題的理解,利用自動推理等手段,在有關知識資源中自動求解答案並作出相應的迴應。問答技術有時與語音技術額多模態輸入、輸出技術,以及人工互動技術等相結合,構成人機對話系統(human-computer
dialogue system)。
文字編輯和自動校對(automatic proofreading):對文字拼寫、用詞,甚至語法、文件格式等進行自動檢查、校對和編排。
資訊過濾(information filtering):通過計算機系統自動識別和過濾那些滿足特定條件的文件資訊。主要用於資訊保安和防護等。
語言教學(language teaching):藉助計算機輔助教學工具,進行語言教學、操練和輔導等。
文字識別(optical character recognition,OCR):通過計算機系統對印刷體或手寫體等文字進行自動識別,將其轉換成計算機可以處理的電子文字。相對而言,文字識別主要內容屬於字元(漢字)影象識別問題,但對於高效能文字識別系統,相關語言理解技術不可或缺。
語音識別(speech recognition):將輸入計算機的語音訊號識別轉換成書面語表示。語音識別也稱自動語音識別(automatic
speech recognition,ASR)。
文語轉換(text-to-speech conversion):將書面文字自動轉換成對應的語音表徵,又稱語音合成(speech
synthesis)。
說話人識別/認證/驗證(speaker recognition identification verification):對一說話人的言語樣本做聲學分析,依次判斷(確定或驗證)說話人的身份。
實際上,我們所能想到的涉及人類語言的任何研究幾乎都隱含著計算語言學的問題,這裡不再一一列舉。
面臨困難
自然語言處理涉及形態學、語法學、語義學和語用學等幾個層面的問題,其最終應用目標包括機器翻譯、資訊檢索、問答系統等廣泛應用領域。其需要面臨的關鍵問題就是——歧義消解(disambiguation)問題和未知語言現象問題。
自然語言中大量存在著歧義現象,無論是詞法層次、語法層次,無論哪類語言單位,歧義始終困擾著人們。
eg1 Put the block in the box on the table.
其中"on the table"即可修飾box,也可以限定block。於是可以得到兩種不同的句法結構:
a.Put the block [in the box on the table].
b.Put [the block in the box] on the table.
在這個句子中再增加一個介詞短語"in the kitchen"可以得到5中可能的分析結構,實際上,這種歧義結構分析的結果數量隨著介詞短語數目的增加呈指數上升的。
eg2 關於魯迅的著作.
可以理解為"關於[魯迅/的/著作]",也可以理解為"[關於/魯迅]的著作"。漢語中存在很多歧義,我們說“今天中午吃食堂”絕不意味著把食堂吃下去;我們誇獎一個人說“這個人真牛”並不是說這個人是真正的牛。
eg3 知識圖譜中也需要解決的歧義現象.

因此自然語言處理系統必須具有較好的未知語言現象的處理能力,對各種可能輸入形式的容錯能力(系統的魯棒性)。當然還有很多其他問題,比如如何處理不同語言的差異、如何提取文字特徵、資源匱乏、覆蓋率低、知識表示困難等。
基本方法
歲月不饒人,將近三十年光陰匆匆地流逝,當年我還是風華正茂的青年人,而今,已經變成了白髮蒼蒼的老人了,我為這個事業坎坷地奮鬥了大半生時間,其間甘苦難以言表。三十年來,不論是處於順境還是逆境,我對於IMAG和GETA始終懷著難分難解的深厚感情,這種感情當然主要是對於我們共同的自然語言處理事業的感情。——馮志偉
還是推薦大家閱讀這本很經典的NLP書籍,希望文章對大家有所幫助,至少有個簡單的瞭解~後面可能還會寫幾篇自己感興趣的書籍讀後感。看到上面這段話,挺感動的,希望自己也能夠堅持心中的理想,十年如一日的堅持寫部落格和教書生涯吧!^_^
(By:Eastmount 2016-08-04 晚上8點 http://blog.csdn.net/eastmount/)
相關文章
- NLP漢語自然語言處理入門基礎知識介紹自然語言處理
- 【自然語言處理篇】--以NLTK為基礎講解自然語⾔處理的原理和基礎知識自然語言處理
- 【精讀】自然語言處理基礎之RNN自然語言處理RNN
- NLP漢語自然語言處理入門基礎知識自然語言處理
- Lustre架構介紹的閱讀筆記-基礎知識架構筆記
- 自然語言處理常用資源筆記分享自然語言處理筆記
- Go語言核心36講(Go語言基礎知識一)--學習筆記Go筆記
- 【記】《.net之美》之讀書筆記(一) C#語言基礎筆記C#
- 精通Python自然語言處理 2 :統計語言建模Python自然語言處理
- Python自然語言處理實戰(1):NLP基礎Python自然語言處理
- 自然語言處理(NLP)系列(一)——自然語言理解(NLU)自然語言處理
- 人工智慧--自然語言處理簡介人工智慧自然語言處理
- Go語言核心36講(Go語言基礎知識五)--學習筆記Go筆記
- Go語言核心36講(Go語言基礎知識四)--學習筆記Go筆記
- Go語言核心36講(Go語言基礎知識三)--學習筆記Go筆記
- Go語言核心36講(Go語言基礎知識六)--學習筆記Go筆記
- Go語言核心36講(Go語言基礎知識二)--學習筆記Go筆記
- 《Go 語言程式設計》讀書筆記 (一)基礎型別和複合型別Go程式設計筆記型別
- sql基礎知識(筆記)(一)SQL筆記
- python自然語言處理學習筆記(八)—— 句法分析Python自然語言處理筆記
- c語言基礎知識C語言
- 自然語言處理(NLP)簡介 | NLP課程自然語言處理
- 處理器基礎知識
- Pytext 簡介——Facebook 基於 PyTorch 的自然語言處理 (NLP) 框架PyTorch自然語言處理框架
- [Python影象處理] 一.影象處理基礎知識及OpenCV入門函式PythonOpenCV函式
- Redis基礎知識(學習筆記21--Lua 指令碼語言)Redis筆記指令碼
- 自然語言處理NLP(四)自然語言處理
- 自然語言處理(NLP)概述自然語言處理
- HanLP 自然語言處理 for nodejsHanLP自然語言處理NodeJS
- c語言基礎知識3C語言
- 組合語言-基礎知識組合語言
- Pyhanlp自然語言處理中的新詞識別HanLP自然語言處理
- 資料庫基礎知識介紹!資料庫
- Redis基礎知識(學習筆記21--Lua 指令碼語言2)Redis筆記指令碼
- 《Go 語言程式設計》讀書筆記(十)反射Go程式設計筆記反射
- 《Go 語言程式設計》 讀書筆記 (八) 包Go程式設計筆記
- 《Go 語言程式設計》讀書筆記(四)介面Go程式設計筆記
- 《Go 語言程式設計》讀書筆記 (三) 方法Go程式設計筆記
- C語言程式設計讀書筆記:結構C語言程式設計筆記