人工智慧 - 自然語言處理



自然語言處理 (NLP) 指的是人工智慧利用自然語言(例如英語)與智慧系統進行交流的方法。

當您希望機器人等智慧系統根據您的指令執行操作時,或者當您希望從基於對話的臨床專家系統中聽到決策時,就需要進行自然語言處理。

NLP 領域涉及使計算機能夠使用人類使用的自然語言執行有用的任務。NLP 系統的輸入和輸出可以是:

  • 語音
  • 書面文字

NLP 的組成部分

NLP 有兩個組成部分:

自然語言理解 (NLU)

理解包括以下任務:

  • 將給定的自然語言輸入對映到有用的表示形式。
  • 分析語言的不同方面。

自然語言生成 (NLG)

它是從某種內部表示生成有意義的短語和句子的過程,以自然語言的形式呈現。

它包括:

  • 文字規劃 - 它包括從知識庫中檢索相關內容。

  • 句子規劃 - 它包括選擇所需的單詞,形成有意義的短語,設定句子的語氣。

  • 文字實現 - 它是將句子計劃對映到句子結構。

NLU 比 NLG 更難。

NLU 的難點

自然語言具有極其豐富的形式和結構。

它非常模糊。可能存在不同級別的歧義:

  • 詞彙歧義 - 這是在非常原始的級別,例如詞級。

  • 例如,將單詞“board”視為名詞還是動詞?

  • 句法級別歧義 - 一個句子可以以不同的方式解析。

  • 例如,“He lifted the beetle with red cap.” - 他是用帽子舉起甲蟲,還是舉起了一隻戴著紅色帽子的甲蟲?

  • 指稱歧義 - 使用代詞指代某事物。例如,麗瑪去了高麗。她說:“我累了。” - 到底是誰累了?

  • 一個輸入可以表示不同的含義。

  • 許多輸入可以表示相同的含義。

NLP 術語

  • 音系學 - 它是對系統地組織聲音的研究。

  • 形態學 - 它是對從原始有意義的單元構建單詞的研究。

  • 語素 - 它是語言中意義的原始單位。

  • 句法 - 它指的是排列單詞以構成句子。它還包括確定單詞在句子和短語中的結構作用。

  • 語義學 - 它關注單詞的含義以及如何將單詞組合成有意義的短語和句子。

  • 語用學 - 它處理在不同情況下使用和理解句子,以及句子的解釋是如何受到影響的。

  • 語篇 - 它處理緊接的前一句如何影響下一句的解釋。

  • 世界知識 - 它包括關於世界的常識。

NLP 的步驟

一般有五個步驟:

  • 詞彙分析 - 它涉及識別和分析單詞的結構。一種語言的詞彙表是指該語言中單詞和短語的集合。詞彙分析是將整塊文字劃分為段落、句子和單詞。

  • 句法分析(解析) - 它涉及分析句子中單詞的語法,並以顯示單詞之間關係的方式排列單詞。例如,“The school goes to boy”這樣的句子會被英語句法分析器拒絕。

NLP Steps
  • 語義分析 - 它從文字中提取確切的含義或字典含義。文字的意義會被檢查。這是透過將句法結構和任務域中的物件對映來完成的。語義分析器會忽略諸如“熱的冰淇淋”之類的句子。

  • 語篇整合 - 任何句子的含義都取決於其之前的句子的含義。此外,它還帶來了緊隨其後的句子的含義。

  • 語用分析 - 在此過程中,所說的話會被重新解釋為其實際含義。它涉及推匯出需要現實世界知識的語言方面。

句法分析的實現方面

研究人員已經開發了許多用於句法分析的演算法,但我們只考慮以下簡單方法:

  • 上下文無關文法
  • 自頂向下解析器

讓我們詳細瞭解一下:

上下文無關文法

它是一種文法,其規則在重寫規則的左側只有一個符號。讓我們建立一個文法來解析句子:

“The bird pecks the grains”

冠詞 (DET) - a | an | the

名詞 - bird | birds | grain | grains

名詞短語 (NP) - 冠詞 + 名詞 | 冠詞 + 形容詞 + 名詞

= DET N | DET ADJ N

動詞 - pecks | pecking | pecked

動詞短語 (VP) - NP V | V NP

形容詞 (ADJ) - beautiful | small | chirping

解析樹將句子分解成結構化的部分,以便計算機可以輕鬆地理解和處理它。為了讓解析演算法構建這個解析樹,需要構建一組重寫規則,這些規則描述哪些樹結構是合法的。

這些規則說明樹中的某個符號可以透過其他符號的序列來展開。根據一階邏輯規則,如果有兩個字串名詞短語 (NP) 和動詞短語 (VP),則由 NP 後跟 VP 組合的字串就是一個句子。句子的重寫規則如下:

S → NP VP

NP → DET N | DET ADJ N

VP → V NP

詞彙表 -

DET → a | the

ADJ → beautiful | perching

N → bird | birds | grain | grains

V → peck | pecks | pecking

可以建立如下所示的解析樹:

NLP Steps

現在考慮上述重寫規則。由於 V 可以被“peck”或“pecks”兩者替換,因此諸如“The bird peck the grains”之類的句子可能會被錯誤地允許。即主謂一致錯誤被認為是正確的。

優點 - 最簡單的語法風格,因此也是最常用的。

缺點:

  • 它們不夠精確。例如,“The grains peck the bird”根據解析器在句法上是正確的,但即使它沒有意義,解析器也會將其視為正確的句子。

  • 為了提高精度,需要準備多組語法。它可能需要為解析單數和複數變體、被動句等完全不同的規則集,這可能導致建立難以管理的大量規則集。

自頂向下解析器

在這裡,解析器從 S 符號開始,並嘗試將其重寫成與輸入句子中單詞類別匹配的終端符號序列,直到它完全由終端符號組成。

然後將其與輸入句子進行檢查以檢視是否匹配。如果不匹配,則使用不同的規則集重新啟動該過程。重複此過程,直到找到描述句子結構的特定規則。

優點 - 易於實現。

缺點:

  • 它效率低下,因為如果發生錯誤,則必須重複搜尋過程。
  • 工作速度慢。
廣告
© . All rights reserved.