NLP 與 NLU:從語言理解到語言處理
本文為 AI 研習社編譯的技術部落格,原標題 :
NLP vs. NLU: from Understanding a Language to Its Processing
作者 | Sciforce
翻譯 | 蘿蔔菜在種樹 編輯 | 王立魚
原文連結:
隨著人工智慧的進步,相關技術變得越來越複雜,我們希望現有的概念能夠包容這種變化 - 或者改變自己。同理,在自然語言處理領域中,自然語言處理(NLP)的概念是否會讓位於自然語言理解(NLU)? 或者兩個概念之間的關係是否變得更微妙,更復雜,抑或只是技術的發展?
在這篇文章中,我們將仔細研究NLP和NLU的概念以及它們在AI相關技術中的優勢。
值得注意的是,NLP和NLU儘管有時可以互相交換使用,但它們實際上是兩個有一些重疊的不同概念。首先,他們都用來處理自然語言和人工智慧之間的關係。他們都試圖理解類似於語言之類的非結構化資料,而不是像統計,行為等結構化資料。然而,NLP和NLU是許多其他資料探勘技術的對立面。
來源: ~wcmac/papers/20140716-UNLU.pdf
自然語言處理
NLP是一個已經很成熟,已有數十年曆史的領域。在電腦科學、人工智慧、資料探勘等領域進行交叉。NLP的最終目的是透過機器讀取、解讀、理解和感知人類語言,將某些任務用機器來代替人類來處理,包括線上聊天機器人,文字摘要生成器,自動生成的關鍵字選項卡,以及分析文字情緒的工具。
NLP的作用
NLP在廣義上來說可以指廣泛的工具,例如語音識別、自然語言識別和自然語言生成。然而,在歷史上,NLP常用於:
-
符號化
-
解析
-
資訊提取
-
相似度
-
語音識別
-
自然語言和語音生成等等
在現實生活中,NLP用於文字摘要、情感分析、主題提取、命名實體識別、詞性標註、關係提取、詞幹提取、文字挖掘、機器翻譯、自動問答、本體論、語言建模和我們可以想到的所有與語言相關的任務。
NLP技術
NLP的兩個支柱是句法分析和語義分析。
總結:NLP依靠機器學習透過分析文字語義和語法從人類語言中獲得意義。
自然語言理解(NLU)
NLP可以追溯到20世紀50年代計算機程式設計師開始嘗試簡單的語言輸入。NLU在20世紀60年代開始發展,希望讓計算機能夠理解更復雜的語言輸入。NLU被認為是NLP的一個子方向,主要側重於機器閱讀理解:讓計算機理解文字的真正含義。
NLU實際上做了什麼
與NLP類似,NLU使用演算法將人類語音轉化為結構化本體。 然後使用AI演算法檢測意圖,時間,位置和情緒等。但是,當我們檢視NLU任務時,我們會驚訝地發現這建立了多少NLP概念:
NLU任務
自然語言理解是許多過程的第一步,例如分類文字,收集新聞,歸檔單個文字,以及更大規模地分析內容。NLU的實際例子包括從基於理解文字釋出短命令到小程度的小任務,例如基於基本語法和適當大小的詞典將電子郵件重新傳送到合適的人。更為複雜的行為可能是完全理解詩歌或小說中的新聞文章或隱含意義。
總而言之:最好將NLU視為實現NLP的第一步:在機器處理語言之前,必須首先理解它。
NLP和NLU的相關性
從其任務可以看出,NLU是NLP的組成部分,它負責人類理解某個文字所呈現的含義。與NLP最大的區別之一是NLU超越瞭解單詞,因為它試圖解釋和處理常見的人類錯誤,如錯誤發音或字母或單詞的顛倒。
推動NLP的理論是Noam Chomsky在1957年的“句法結構”中所設定的假設:“語言L的語言分析的基本目標是將L的句子的語法序列與不符合語法的序列分開。 這不是研究語言L的句子,而是研究語法序列的結構。”
句法分析確實用於多個任務,透過將語法規則應用於一組單詞並透過多種技術從中獲得意義來評估語言如何與語法規則保持一致:
-
詞形還原:將單詞的變形形式簡化為單一形式,以便於分析。
-
詞幹:將變形的詞語切割成它們的根形式。
-
形態分割:將單詞劃分為語素。
-
分詞:將連續文字分成不同的單元。
-
解析:句子的語法分析。
-
詞性標註:識別每個單詞的詞性。
-
句子破壞:將句子邊界放在連續文字上。
句法分析技術介紹
然而,語法正確性或不正確性並不總是與短語的有效性相關。 想想一個無意義而又語法化的句子“colorless green ideas sleep furiously”的經典例子。更重要的是,在現實生活中,有意義的句子通常包含輕微的錯誤,並且可以被歸類為不符合語法的。人工互動允許產生的文字和語音中的錯誤透過優秀的模式識別和從上下文中新增附加資訊來補償它們。這顯示了以語法為中心的分析的不平衡性以及需要更加關注多級語義。
語義分析是NLU的核心,涉及應用計算機演算法來理解單詞的含義和解釋,尚未完全解決。
以下是語義分析中的一些技巧,僅舉幾例:
-
命名實體識別(NER):確定可以識別並分類為預設組的文字部分。
-
詞義消歧:根據語境賦予詞語意義。
-
自然語言生成:使用資料庫匯出語義意圖並將其轉換為人類語言。
然而,為了完全理解自然語言,機器不僅需要考慮語義提供的字面意義,還需要考慮預期的資訊,或理解文字試圖表達的內容。這個級別稱為語用分析(pragmatic analysis),它剛剛開始引入NLU / NLP技術。 目前,我們可以在一定程度上看到情緒分析:評估文字中包含的消極/積極/中立的感受。
NLP的未來
追求建立一個能夠以人類方式與人類互動的聊天機器人的目標 - 並最終透過圖靈測試,企業和學術界正在研發更多的NLP和NLU技術。他們想到產品實現的目標應該輕鬆,無監督學習,並能夠以適當的方式直接與人們互動。
為實現這一目標,該研究分三個層次進行:
-
語法 - 理解文字的語法
-
語義 - 理解文字的字面意義
-
語用學 - 理解文字試圖表達的意思
不幸的是,理解和處理自然語言並不是提供足夠大的詞彙量和訓練機器那麼簡單。 如果要取得成功,NLP必須融合來自各個領域的技術:語言,語言學,認知科學,資料科學,電腦科學等。 只有結合所有可能的觀點,我們才能揭開人類語言的神秘面紗。 雷鋒網雷鋒網雷
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2646291/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自然語言處理(NLP)系列(一)——自然語言理解(NLU)自然語言處理
- 自然語言處理(NLP)自然語言處理
- 自然語言處理(NLP)概述自然語言處理
- 自然語言處理NLP(四)自然語言處理
- 2023nlp影片教程大全 NLP自然語言處理教程 自然語言處理NLP從入門到專案實戰自然語言處理
- 自然語言處理(NLP)簡介 | NLP課程自然語言處理
- 自然語言處理NLP快速入門自然語言處理
- 自然語言處理(NLP)入門指南自然語言處理
- 《NLP漢語自然語言處理原理與實踐》學習四自然語言處理
- 掌握BERT:從初學者到高階的自然語言處理(NLP)全面指南自然語言處理
- 自然語言處理NLP(6)——詞法分析自然語言處理詞法分析
- Pytorch系列:(六)自然語言處理NLPPyTorch自然語言處理
- 自然語言處理(NLP)的主要範疇自然語言處理
- Python自然語言處理 1 語言處理與PythonPython自然語言處理
- NLP神經語言學的12條假設(不是自然語言處理哪個NLP哈)自然語言處理
- 自然語言處理(NLP)路線圖 - kdnuggets自然語言處理
- 從高階語言到機器語言
- Python 自然語言處理(NLP)工具庫彙總Python自然語言處理
- 語言處理器
- 自然語言處理與分析(one)自然語言處理
- nlp中的傳統語言模型與神經語言模型模型
- 探索自然語言處理:語言模型的發展與應用自然語言處理模型
- 中文和英文NLP自然語言處理異同點分析自然語言處理
- NLP自然語言處理中的hanlp分詞例項自然語言處理HanLP分詞
- Python自然語言處理實戰(1):NLP基礎Python自然語言處理
- NLP1 —— Python自然語言處理環境搭建Python自然語言處理
- 快商通首席科學家:語音識別的後半段路,從語言處理走向語言理解
- 自然語言處理與情緒智慧自然語言處理
- 「NLP」一文彙總自然語言處理主要研究方向自然語言處理
- NLP漢語自然語言處理入門基礎知識自然語言處理
- 【自然語言處理篇】--聊天機器人從初始到應用自然語言處理機器人
- Python自然語言處理Python自然語言處理
- Go 語言異常處理Go
- 自然語言處理NLP(8)——句法分析b:完全句法分析自然語言處理
- 自然語言處理(NLP)- 一個英文拼寫糾錯系統自然語言處理
- 自然語言處理中的語言模型預訓練方法自然語言處理模型
- 精通Python自然語言處理 2 :統計語言建模Python自然語言處理
- 中國語文(自然語言處理)作業自然語言處理