Natural Language Understanding (NLU) 是 自然語言處理 (NLP) 的一個子領域。
簡單來說,如果說 NLP 的目標是讓電腦能夠「處理」人類語言,那麼 NLU 則更進一步,專注於讓電腦能夠「理解」人類語言的意義、意圖和語氣。
你可以這樣區分 NLP、NLU 和 NLG:- NLP (Natural Language Processing / 自然語言處理): 是一個總稱,涵蓋了所有讓電腦能處理人類語言的技術,從最基礎的文字處理到更深層的語義理解和生成。它關注的是如何將人類語言轉換為機器可以處理的格式。 例如:語音轉文字、斷詞、詞性標註、句法分析等。 NLU (Natural Language Understanding / 自然語言理解): 是 NLP 的一個子集,專注於從人類語言中提取意義和意圖。它不只看文字本身,更試圖理解文字背後所表達的語義。 核心目標: 讓機器能夠理解「人說了什麼」以及「人說這句話的用意是什麼」。 主要功能: 語義分析 (Semantic Analysis): 理解詞語和句子在語境中的含義。 意圖識別 (Intent Recognition): 判斷用戶表達的目的或意圖(例如:「我想訂機票」的意圖是「訂機票」)。 命名實體識別 (Named Entity Recognition, NER): 從文本中識別出人名、地名、組織名、日期、時間等具有特定意義的實體。 情感分析 (Sentiment Analysis): 判斷文本所表達的情緒是正向、負向還是中性。 語法分析 (Syntactic Analysis): 雖然也屬於 NLP 範疇,但 NLU 會利用語法結構來幫助理解句子含義。 NLG (Natural Language Generation / 自然語言生成): 也是 NLP 的一個子集,與 NLU 相反。NLG 的目標是讓電腦能夠根據結構化的資料,產生出自然流暢的人類語言。 例如:將數據報表轉換成文字敘述、自動撰寫新聞稿、聊天機器人回覆等。
總結來說:
- NLP 是總括性的,包含 NLU 和 NLG。 NLU 負責「理解」:把人類語言輸入,解析其意義、意圖和上下文。 NLG 負責「生成」:把機器內部數據,轉化為人類能理解的語言輸出。
例如,當你對語音助理說:「幫我關燈。」
- NLP (語音辨識): 先將你的語音轉換成文字「幫我關燈」。 NLU (理解意圖): 進一步分析這句話,理解你的意圖是「控制智慧家電」,並識別出實體是「燈」,動作是「關」。 機器執行動作: 語音助理接到 NLU 的理解後,執行關燈指令。 NLG (生成回覆): 如果需要回覆,語音助理可能會說:「好的,燈已經關閉。」
NLU 是實現真正人機對話和智能互動的關鍵技術,它解決了人類語言複雜、多義、模糊的挑戰。