人工智能與自然語言處理概述:AI三大階段、NLP關鍵應用領域
近日,Xenonstack 上推出了一篇名為《Overview of Artificial Intelligence and Role of Natural Language Processing in Big Data》文章,作者為 Jagreet Kaur,其全面概述了人工智能及其各個細分領域的狀況,并著重介紹了大數據和自然語言處理的發展,對自然語言處理在大數據中扮演的角色作了探討。機器之心對文章進行了編譯,原文鏈接附于文末。
一、人工智能概述
AI 指代「人工智能」,是讓機器能夠像人類一樣完成智能任務的技術。AI 使用智能完成自動化任務。
「人工智能」包含兩個關鍵點:
- 自動化
- 智能
1. 人工智能的目標
- 推理
- 自動學習&調度
- 機器學習
- 自然語言處理
- 計算機視覺
- 機器人
- 通用智能
2. 人工智能三大階段
- 階段 1——機器學習:智能系統使用一系列算法從經驗中進行學習。
- 階段 2——機器智能:機器使用的一系列從經驗中進行學習的高級算法,例如深度神經網絡。
人工智能目前處于此階段。
- 階段 3——機器意識:不需要外部數據就能從經驗中自學習。
3. 人工智能的類型
- ANI(狹義人工智能):它包含基礎的、角色型任務,比如由 Siri、Alexa 這樣的聊天機器人、個人助手完成的任務。
- AGI(通用人工智能):通用人工智能包含人類水平的任務,它涉及到機器的持續學習。
- ASI(強人工智能):強人工智能指代比人類更聰明的機器。
4. 什么使得系統智能化?
- 自然語言處理
- 知識表示
- 自動推理
- 機器學習
二、NLP、人工智能、機器學習、深度學習和神經網絡之間的區別
- 人工智能:建立能智能化處理事物的系統。
- 自然語言處理:建立能夠理解語言的系統,人工智能的一個分支。
- 機器學習:建立能從經驗中進行學習的系統,也是人工智能的一個分支。
- 神經網絡:生物學啟發出的人工神經元網絡。
- 深度學習:在大型數據集上,建立使用深度神經網絡的系統,機器學習的一個分支。
1. 什么是自然語言處理?
自然語言處理(NLP)是指機器理解并解釋人類寫作、說話方式的能力。
NLP 的目標是讓計算機/機器在理解語言上像人類一樣智能。最終目標是彌補人類交流(自然語言)和計算機理解(機器語言)之間的差距。
下面是三個不同等級的語言學分析:
- 句法學:給定文本的哪部分是語法正確的。
- 語義學:給定文本的含義是什么?
- 語用學:文本的目的是什么?
NLP 處理語言的不同方面,例如:
- 音韻學:指代語言中發音的系統化組織。
- 詞態學:研究單詞構成以及相互之間的關系。
NLP 中理解語義分析的方法:
- 分布式:它利用機器學習和深度學習的大規模統計策略。
- 框架式:句法不同,但語義相同的句子在數據結構(幀)中被表示為程式化情景。
- 理論式:這種方法基于的思路是,句子指代的真正的詞結合句子的部分內容可表達全部含義。
- 交互式(學習):它涉及到語用方法,在交互式學習環境中用戶教計算機一步一步學習語言。
2. 我們為什么需要 NLP
有了 NLP,有可能完成自動語音、自動文本編寫這樣的任務。
由于大型數據(文本)的存在,我們為什么不使用計算機的能力,不知疲倦地運行算法來完成這樣的任務,花費的時間也更少。
這些任務包括 NLP 的其他應用,比如自動摘要(生成給定文本的總結)和機器翻譯。
3. NLP 流程
如果要用語音產生文本,需要完成文本轉語音任務
NLP 的機制涉及兩個流程:
- 自然語言理解
- 自然語言生成
4. 自然語言理解(NLU)
NLU 是要理解給定文本的含義。文本內每個單詞的特性與結構需要被理解。在理解結構上,NLU 要理解自然語言中的以下幾個歧義性:
- 詞法歧義性:單詞有多重含義
- 句法歧義性:語句有多重解析樹
- 語義歧義性:句子有多重含義
- 回指歧義性(Anaphoric Ambiguity):之前提到的短語或單詞在后面句子中有不同的含義。
接下來,通過使用詞匯和語法規則,理解每個單詞的含義。
然而,有些詞有類似的含義(同義詞),有些詞有多重含義(多義詞)。
5. 自然語言生成(NLG)
NLG 是從結構化數據中以可讀地方式自動生成文本的過程。自然語言生成的問題是難以處理。
自然語言生成可被分為三個階段:
- 文本規劃:完成結構化數據中基礎內容的規劃。
- 語句規劃:從結構化數據中組合語句,來表達信息流。
- 實現:產生語法通順的語句來表達文本。
三、NLP 與文本挖掘(或文本分析)之間的不同
自然語言處理是理解給定文本的含義與結構的流程。
文本挖掘或文本分析是通過模式識別提起文本數據中隱藏的信息的流程。
自然語言處理被用來理解給定文本數據的含義(語義),而文本挖掘被用來理解給定文本數據的結構(句法)。
例如,在「I found my wallet near the bank」一句中,NLP 的任務是理解句尾「bank」一詞指代的是銀行還是河邊。
四、大數據中的 NLP
如今所有數據中的 80% 都可被用到,大數據來自于大公司、企業所存儲的信息。例如,職員信息、公司采購、銷售記錄、經濟業務以及公司、社交媒體的歷史記錄等。
盡管人類使用的語言對計算機而言是模糊的、非結構化的,但有了 NLP 的幫助,我們可以解析這些大型的非結構化數據中的模式,從而更好地理解里面包含的信息。
NLP 可使用大數據解決商業中的難題,比如零售、醫療、金融領域中的業務。
五、什么是聊天機器人?
1. 聊天機器人或自動智能代理
- 指代你能通過聊天 app、聊天窗口或語音喚醒 app 進行交流的計算機程序。
- 也有被用來解決客戶問題的智能數字化助手,成本低、高效且持續工作。
2. 聊天機器人的重要性
- 聊天機器人對理解數字化客服和頻繁咨詢的常規問答領域中的變化至關重要。
- 聊天機器人在一些領域中的特定場景中非常有幫助,特別是會被頻繁問到高度可預測的的問題時。
3. 聊天機器人的工作機制
- 基于知識:包含信息庫,根據客戶的問題回應信息。
- 數據存儲:包含與用戶交流的歷史信息。
- NLP 層:它將用戶的問題(任何形式)轉譯為信息,從而作為合適的回應。
- 應用層:指用來與用戶交互的應用接口。
聊天機器人每次與用戶交流時都能進行學習,使用機器學習回應信息庫中的信息。
六、NLP 中為什么需要深度學習
它使用基于規則的方法將單詞表示為「one-hot」編碼向量。
傳統的方法注重句法表征,而非語義表征。
詞袋:分類模型不能夠分別特定語境。
1. 深度學習的三項能力
- 可表達性:這一能力描述了機器如何能近似通用函數。
- 可訓練性:深度學習系統學習問題的速度與能力。
- 可泛化性:在未訓練過的數據上,機器做預測的能力。
在深度學習中,當然也要考慮其他的能力,比如可解釋性、模塊性、可遷移性、延遲、對抗穩定性、安全等。但以上是主要的幾項能力。
2. NLP 中深度學習的常見任務
3. 傳統 NLP 和深度學習 NLP 的區別
七、日志分析與日志挖掘中的 NLP
1. 什么是日志?
不同網絡設備或硬件的時序信息集合表示日志。日志可直接存儲在硬盤文檔中,也可作為信息流傳送到日志收集器。
日志提供維持、追蹤硬件表現、參數調整、緊急事件、系統修復、應用和架構優化的過程。
2. 什么是日志分析?
日志分析是從日志中提取信息的過程,分析信息中的句法和語義,解析應用環境,從而比較分析不同源的日志文檔,進行異常檢測、發現關聯性。
3. 什么是日志挖掘?
日志挖掘或日志知識發現是提取日志中模式和關聯性的過程,從而挖掘知識,預測日志中的異常檢測。
4. 日志分析和日志挖掘中使用到的技術
下面介紹了完成日志分析的不同技術:
- 模式識別:將日志信息與模式薄中的信息進行對比,從而過濾信息的技術。
- 標準化:日志信息的標準化是將不同的信息轉換為同樣的格式。當來自不同源的日志信息有不同的術語,但含義相同時,需要進行標準化。
- 分類 & 標簽:不同日志信息的分類 & 標簽涉及到對信息的排序,并用不同的關鍵詞進行標注。
- Artificial Ignorance:使用機器學習算法拋棄無用日志信息的技術。它也可被用來檢測系統異常。
5. 日志分析 & 日志挖掘中的 NLP
自然語言處理技術被普遍用于日志分析和日志挖掘。
詞語切分、詞干提取(stemming)、詞形還原(lemmatization)、解析等不同技術被用來將日志信息轉換成結構化的形式。
一旦日志以很好的形式組織起來,日志分析和日志挖掘就能提取信息中有用的信息和知識。
八、深度自然語言處理
自然語言處理是一個復雜的領域,處于人工智能、計算語言學和計算機科學的交叉領域。
1. 從 NLP 開始
用戶需要輸入一個包含已寫文本的文件;接著應該執行以下 NLP 步驟:
- 語句分割 - 在給定文本中辨識語句邊界,即一個語句的結束和另一個語句的開始。語句通常以標點符號「.」結束。
- 標記化 - 辨識不同的詞、數字及其他標點符號。
- 詞干提取 - 將一個詞還原為詞干。
- 詞性標注 - 標出語句中每一個詞的詞性,比如名詞或副詞。
- 語法分析 - 將給定文本的部分按類劃分。
- 命名實體識別 - 找出給定文本中的人物、地點、時間等。
- 指代消解 - 根據一個語句的前句和后句界定該句中給定詞之間的關系。
九、NLP 的其他關鍵應用領域
除了在大數據、日志挖掘及分析中的應用,NLP 還有一些其他主要應用領域。
盡管 NLP 不如大數據、機器學習聽起來那么火,但我們每天都在使用它:
- 自動摘要 - 在給定輸入文本的情況下,擯棄次要信息完成文本摘要。
- 情感分析 - 在給定文本中預測其主題,比如,文本中是否包含判斷、觀點或評論等。
- 文本分類 - 按照其領域分類不同的期刊、新聞報道。多文檔分類也是可能的。文本分類的一個流行示例是垃圾電子郵件檢測。基于寫作風格,可檢測作者姓名。
- 信息提取 - 建議電子郵件程序自動添加事件到日歷。
原文:https://www.xenonstack.com/blog/overview-of-artificial-intelligence-and-role-of-natural-language-processing-in-big-data
【本文是51CTO專欄機構機器之心的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】