計算機擅長響應程式設計指令和預定的純語言命令,但我們只是處於它們理解自然語言的早期階段。
例如,像「掛斷電話」這樣的簡單命令具有塑造其含義的歷史和口語背景。人類的大腦很快就理解了這句話,但計算機可能不會。
幸運的是,自然語言處理(NLP)的進步使計算機在理解人類通過語言自然交流的方式方面取得了優勢。
該領域的成功在客戶服務、知識管理和數據採集等方面創造了無數新的商機。事實上,自然語言理解是其中的核心。 Botpress 作為一家公司,幫助機器更好地理解人類是激勵我們開發對話式 AI 的目標。
儘管實現自然語言功能變得更容易獲得,但他們的演算法對許多開發人員來說仍然是一個「黑匣子」,阻止了這些團隊實現這些功能的最佳使用。掌握其工作原理的基礎知識對於確定他們將使用哪種訓練數據來訓練這些智慧機器至關重要。選擇和應用正確的訓練數據對於成功至關重要。
在本文中,我們將回顧自然語言的基礎知識及其功能。我們還研究了幾個關鍵用例,並就如何開始使用您自己的自然語言解決方案提供了建議。
什麼是自然語言處理?
自然語言處理是研究計算機與人類語言之間相互作用的人工智慧的一個子領域。這是一個結合語言和計算機科學的研究領域。NLP的目的是將自然語言輸入轉換為結構化數據。它使用多種任務來做到這一點,例如;詞性標記、命名實體識別、句法分析等。
什麼是自然語言理解 (NLU)?
自然語言理解 是關於語言的理解。與我們類似,該技術可以在不理解的情況下聽到或閱讀某些內容。NLU 是為對話介面提供支持的技術。沒有理解部分,對話幾乎是不可能的,或者充其量是尷尬的。
NLU 如何工作?
與其他人工智慧解決方案一樣,這項技術需要培訓。意圖檢測取決於聊天機器人開發人員提供的訓練數據和平台工程師對技術的選擇。這些專家必須提供培訓數據,以確保該工具在其功能上下文中了解使用者 - 無論該功能是為外部客戶提供服務還是協助內部使用者進行知識管理。即使經過培訓,NLU 也會迷失方向,因為對話會偏離其核心功能並變得更加通用。
幸運的是,這些技術在特定用例中非常有效。對於大多數開發人員甚至非技術用戶來說,優化和執行培訓並非遙不可及。人工智慧的最新突破,部分原因是計算能力的可用性呈指數級增長,這使得應用這些解決方案比以往任何時候都更容易、更平易近人、更實惠。
“為了獲得這種理解,機器需要能夠理解和生成詞性,提取和理解實體,確定單詞的含義,並使用更複雜的處理活動將概念,短語,概念和語法連接在一起,形成更大的意圖和意義圖景。福布斯,“可以理解人類語音的機器:人工智慧的對話模式”,2020 年 6 月
語言是複雜的——比我們意識到的要複雜——所以創建能夠解釋其所有細微差別並成功確定該語言背後的人類意圖的軟體也很複雜。但與人類智慧一樣,對人工智慧的充分訓練使機器能夠克服這些複雜性(如果訓練數據足夠好)。
訓練 AI 具有每個 AI 的使用和上下文特有的特定要求。例如,假設我們打算訓練一個使用NLU的聊天機器人來執行航空旅行的客戶服務功能。聊天機器人將處理客戶的自然語言,以幫助他們預訂航班並調整行程。
在這種情況下,聊天機器人開發人員必須為機器的自然語言演算法提供意圖數據。這些數據由旅行客戶可能用來創建或更改預訂的常用短語組成。自然語言演算法(一種機器學習功能)根據數據進行自我訓練,以便會話助手能夠識別具有相似含義但不同單詞的短語。
理想情況下,此培訓將使對話助手能夠處理大多數客戶場景,將人工座席從不需要更深層次的人類能力的繁瑣呼叫中解放出來。同時,對話助手可以將更複雜的場景推遲到人類代理(例如,需要人類同理心的對話)。即使具備了這些功能,開發人員也必須繼續為演算法提供多樣化的數據,以便它可以校準其內部模型,以跟上客戶行為和業務需求的變化。
為此,一種稱為單詞矢量化的方法將單詞或短語映射到相應的「向量」,即機器可以用來預測結果、識別單詞相似性和更好地理解語義的實數。單詞矢量化極大地擴展了機器理解自然語言的能力,這體現了這些技術的進步性和未來潛力。
構建數據集的提示
- 每個意向堅持一個概念(一個意向包含多個語句)
- 嘗試在語句中混合同義詞
- 用你的角色會使用的語言寫你的話語
- 使用實體
- 避免拼寫和語法錯誤