自然語言處理幾個概念

一、NLP、NLU、NLG

自然語言處理(NLP)是指機器理解并解釋人類寫作、說話方式的能力。
NLP 的目標是讓計算機/機器在理解語言上像人類一樣智能。最終目標是彌補人類交流(自然語言)和計算機理解(機器語言)之間的差距。
自然語言處理(Natural Language Processing,簡稱NLP)是人工智能的一個子域。自然語言處理的應用包括機器翻譯、情感分析、智能問答、信息提取、語言輸入、輿論分析、知識圖譜等方面,也是深度學習的一個分支。
在這個概念下還有兩大子集,即自然語言理解(Natural Language Understanding,簡稱NLU)與自然語言生成(Natural Language Generation,簡稱NLG)
套用百度的一張圖片展示它們的關系如下



(1)最底部,是最基礎的大數據、機器學習和語言學(Linguistics);
(2)往上看,是知識圖譜(Knowledge Graph),其中包含了實體圖譜、注意力圖譜和意圖圖譜。
(3)再上一層,左側是語言理解(Language Understanding),右側是語言生成(Language Generation)
——語言理解,包含了Query理解、文本理解、情感分析(Sentiment Analysis)等,還有詞法(Lexical)、句法(Syntax)和語義(Semantic)等不同層次的分析。
——語言生成,包含了寫作、閱讀理解等等。
(4)最上方,是系統層面,包含了問答系統、機器翻譯和對話系統。

二、NLP 與文本挖掘(或文本分析)之間的不同

自然語言處理是理解給定文本的含義與結構的流程。
文本挖掘或文本分析是通過模式識別提起文本數據中隱藏的信息的流程。
自然語言處理被用來理解給定文本數據的含義(語義),而文本挖掘被用來理解給定文本數據的結構(句法)。
例如,在「I found my wallet near the bank」一句中,NLP 的任務是理解句尾「bank」一詞指代的是銀行還是河邊。

三、NLP在人工智能中的地位


由于自然語言是人類區(qū)別于其他動物的根本標志。沒有語言,人類的思維也就無從談起,所以自然語言處理體現了人工智能的最高任務與境界,也就是說,只有當計算機具備了處理自然語言的能力時,機器才算實現了真正的智能。
事實上,“人工智能”被作為一個研究問題正式提出來的時候,創(chuàng)始人把計算機國際象棋和機器翻譯作為兩個標志性的任務,認為只要國際象棋系統能夠打敗人類世界冠軍,機器翻譯系統達到人類翻譯水平,就可以宣告人工智能的勝利。四十年后的1997年,IBM公司的深藍超級計算機 已經能夠打敗國際象棋世界冠軍卡斯帕羅夫。而機器翻譯到現在仍無法與人類翻譯水平相比,從此可以看出自然語言處理有多么困難!
一句話總結就是,語言是文明的標志,是人類思維邏輯和情感線索的載體,自然語言處理正是人工智能的最高境界。

四、NLP面臨的主要難點

(1)單詞的邊界界定
在口語中,詞與詞之間通常是連貫的,而界定字詞邊界通常使用的辦法是取用能讓給定的上下文最為通順且在文法上無誤的一種最佳組合。在書寫上,漢語也沒有詞與詞之間的邊界。
(2)詞義的消歧
許多字詞不單只有一個意思,因而我們必須選出使句意最為通順的解釋。
(3)句法的模糊性
自然語言的文法通常是模棱兩可的,針對一個句子通??赡軙饰觯≒arse)出多棵剖析樹(Parse Tree),而我們必須要仰賴語意及前后文的資訊才能在其中選擇一棵最為適合的剖析樹。
(4)有瑕疵的或不規(guī)范的輸入
例如語音處理時遇到外國口音或地方口音,或者在文本的處理中處理拼寫,語法或者光學字符識別(OCR)的錯誤。
(5)語言行為與計劃
句子常常并不只是字面上的意思,例如,“你能把鹽遞過來嗎”,一個好的回答應當是把鹽遞過去,在大多數上下文環(huán)境中,“能”將是糟糕的回答,雖說回答“不”或者“太遠了我拿不到”也是可以接受的。再者,如果一門課程去年沒開設,對于提問“這門課程去年有多少學生沒通過?”回答“去年沒開這門課”要比回答“沒人沒通過”好。

五、目前NLP的應用


(1)NLU 旨在讓機器理解自然語言形式的文本內容。
從 NLU 處理的文本單元來講,可以分為詞(term)、句子(sentence)、文檔(document)三種不同的類型:
---詞層面的基礎 NLU 領域包括分詞(漢語、緬甸語、泰語等非拉丁語系語言需要)、詞性標注(名詞、動詞、形容詞等)、命名實體識別(人物、機構、地點等)和實體關系提?。ɡ缛宋?出生地關系、公司-所在地關系、公司收購關系等);
---句子層面的基礎 NLU 領域包括句法結構解析(獲取句子的句法結構)和依存關系解析(獲取句子組成部分的依賴關系);
---文檔層面的基礎 NLU 領域包含情感分析(分析一篇文檔的情感傾向)和主題建模(分析文檔內容的主題分布)。
(2)與NLU不同,NLG旨在讓機器根據確定的結構化數據、文本、音視頻等生成人類可以理解的自然語言形式的文本。根據數據源的類型,NLG可以分為三類:
---Text to text NLG,主要是對輸入的自然語言文本進行進一步的處理和加工,主要包含文本摘要(對輸入文本進行精簡提煉)、拼寫檢查(自動糾正輸入文本的單詞拼寫錯誤)、語法糾錯(自動糾正輸入文本的句法錯誤)、機器翻譯(將輸入文本的語義以另一種語言表達)和文本重寫(以另一種不同的形式表達輸入文本相同的語義)等領域;
---Data to text NLG,主要是根據輸入的結構化數據生成易讀易理解的自然語言文本,包含天氣預報(根據天氣預報數據生成概括性的用于播報的文本)、金融報告(自動生成季報/年報)、體育新聞(根據比分信息自動生成體育新聞)、人物簡歷(根據人物結構化數據生成簡歷)等領域的文本自動生成;
---Vision to text NLG,主要是給定一張圖片或一段視頻,生成可以準確描述圖片或視頻(其實是連續(xù)的圖片序列)語義信息的自然語言文本。
下面重點說下NLG 技術的能力邊界:
NLG 技術,一個核心在于NL,即自然語言形式的文本,更易于普通人閱讀;另一個核心在于G,即生成,但不是創(chuàng)作,不涉及深入地分析、提煉和推理。
在 Text to text NLG 中,本質上是將輸入文本進行處理,映射到一個語義向量空間中,然后再用輸出文本來表達同樣的語義,而這一過程中語義信息本身并沒有經過進一步加工。
Data to text NLG 的目的是將結構化數據嵌入自然語言文本中,便于普通人的快速閱讀,即使有一些看似推理的結果(例如天氣預報中根據下周七天的天氣數據,輸出「未來一周大部分時間晴好,僅周三有短時小雨」這樣的文本),其實也是人為定義了新的結構化數據字段。
Vision to text NLG 中也是如此,只是用自然語言文本來表達原先圖像表達的語義,也不涉及語義的進一步加工。
換句話說,目前的 NLG 技術并不能實現人類的「寫作」過程 - 其中包括對大量輸入信息的理解、提煉、分析、推理和重組,而僅能夠給出輸入信息(文本、數據和圖像)的自然語言形式的表示。
NLG 技術生成的文本,單篇文本看起來會非常規(guī)范和優(yōu)質,但把大量的生成文本放在一起,就會感覺出濃濃的機器味兒 - 更為模式化且缺少靈活性。

六、小結

NLP是AI的最大瓶頸,語言生成是NLP的最前沿

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容