什麼是自然語言處理? 語音和文字AI

2021-10-06 09:28:02 字數 3301 閱讀 7212

從facebook上的乙個朋友:

alexa:我已將龍舌蘭酒新增到您的購物清單中。

[理解機器學習的意義: 人工智慧,機器學習和深度學習:您需要知道的一切 。|深度學習解釋了 。|機器學習的解釋 。|機器學習演算法進行了解釋 。|軟體工程師的機器學習技能 。|通過infoworld大資料和分析報告時事通訊深入了解分析和大資料。]

我朋友的意外龍舌蘭酒命令可能比她想象的更合適。 ¡arriba!

儘管存在自然語言處理失敗的故事,但nlp目前仍是深度學習的主要成功應用領域之一。 自然語言處理的總體目標是使計算機能夠理解人類語言並根據人類語言行事。 我們將在下一部分中進一步細分。

從歷史上看,自然語言處理是由基於規則的系統處理的,最初是通過為例如語法和詞幹編寫規則來進行的。 除了手工編寫這些規則所需的大量工作之外,它們往往效果不佳。

為什麼不? 讓我們考慮一下應該是乙個簡單的示例,即拼寫。 在某些語言(例如西班牙語)中,拼寫確實很容易並且有規則。 但是,任何學習英語作為第二語言的人都知道英語的拼寫和發音可能不規則。 想象一下,必須編寫出許多例外的規則,例如,年級學校的拼寫規則「 i在e之前的e,但c之後的,或者聽起來像a的鄰居或稱重者」。 事實證明, 「 e之前的i」規則幾乎不是規則 。 準確時間大約為3/4,它具有許多類別的異常。

在2023年代末和2023年代初幾乎放棄了手寫規則之後,nlp社群開始使用統計推斷和機器學習模型 。 嘗試了許多模型和技術。 當將它們推廣到超出其最初的用途時,幾乎沒有倖存下來。 一些更成功的方法已在多個領域中使用。 例如,2023年代,隱馬爾可夫模型用於語音識別,2023年代和2023年代,其被用於生物資訊學(特別是蛋白質和dna序列的分析)。

基於短語的統計機器翻譯模型仍然需要針對每種語言對進行調整,其準確性和精度主要取決於可用於監督學習培訓的文字語料庫的質量和大小。 對於法語和英語,加拿大議事錄(議會程式,自2023年以來就以雙語進行)是而且對於監督學習而言非常寶貴。 歐洲聯盟的議事程式提供了更多的語言,但期限卻更少。

在2023年秋季,google translate突然從平均與原始語言含義含糊不清的「文字沙拉」的產生,變成了至少經常(至少對於受支援的語言對)發出優美,連貫的句子例如英語-法語,英語-漢語和英語-日語。 從那時起,新增了更多的語言對。

這種顯著改善是google brain和google translate團隊經過9個月的共同努力 ,將google translate從使用舊的基於片語的統計機器翻譯演算法改造為使用經過深度學習和詞嵌入訓練的神經網路(使用google的tensorflow框架 。 在不到一年的時間內,神經機器翻譯(nmt)取代了統計機器翻譯(smt)作為最新技術。

那是魔術嗎? 一點都不。 這甚至都不容易。 從事轉換工作的研究人員可以使用大量翻譯來訓練他們的網路,但是他們很快發現他們需要數千個 gpu進行訓練,並且他們需要建立一種新型的晶元,即tensor processing部門(tpu),可在經過訓練的神經網路上大規模執行google翻譯。 他們還試圖嘗試訓練幾乎與人類翻譯者一樣好的模型,因此不得不對網路進行數百次優化。

除了google translate解決的機器翻譯問題外, 主要的nlp任務還包括自動摘要,共引用解析(確定哪些單詞指代相同的物件,尤其是代詞),命名實體識別(識別人,地點和組織) ,自然語言生成(將資訊轉換為可讀語言),自然語言理解(將文字塊轉換為更正式的表示形式,例如一階邏輯結構),詞性標記,情感分析(將文字分類為對有利或不利)特定物件)和語音識別(將音訊轉換為文字)。

儘管最新一代的基於神經網路的nlp系統有時可以省去中間步驟,但主要的nlp任務通常會分解為子任務。 例如,乙個名為translatotron的實驗性google語音

翻譯器可以通過操作頻譜圖直接將西班牙語語音轉換為英語語音,而無需語音到文字,語言翻譯和文字到語音的中間步驟。 translatotron尚不十分準確,但足以證明概念。

像任何其他機器學習問題一樣,nlp問題通常通過一系列過程來解決,其中大多數過程旨在為建模準備資料。 dj sarkar 在使用python編寫的有關nlp的出色教程中列出了標準的工作流程:文字預處理->文字解析和探索性資料分析->文字表示和特徵工程->建模和/或模式挖掘->評估和部署。

sarkar使用beautiful soup從抓取的**中提取文字,然後使用natural language toolkit(nltk)和spacy通過對文字進行標記,詞幹化和詞形化以及刪除停用詞和擴大收縮來預處理文字。 然後,他繼續使用nltk和spacy標記語音部分,執行淺層解析,並提取ngram塊進行標記:單字組,雙字組和三字組。 他使用nltk和stanford parser生成解析樹,並使用spacy生成依賴樹並執行命名實體識別。

有關nlp的最新基於深度學習的模型和方法的回顧,我可以推薦自稱elvis的ai教育家推薦這篇文章 。

您期望amazon web services,microsoft azure和google cloud除了提供眾所周知的語音識別和語言翻譯服務外,還提供一種或另一種自然語言處理服務。 當然可以,不僅可以使用通用的nlp模型,還可以使用定製的nlp。

amazon comprehend是一種自然語言處理服務,可從非結構化文字中提取關鍵短語,地點,人們的名字,品牌,事件和情感。 amazon comprehend使用預先訓練的深度學習模型,並識別相當普通的地方和事物。 如果您想擴充套件此功能以標識更多特定的語言,則可以自定義amazon comprehend以標識特定於域的實體並將文件歸類到您自己的類別中

microsoft azure具有多個nlp服務。 文字分析可識別文字塊的語言,情感,關鍵短語和實體。 支援的功能取決於語言。

語言理解(luis)是用於社交**應用程式,聊天機械人和啟用語音的桌面應用程式的可自定義自然語言介面。 您可以使用預構建的luis模型,預構建的特定於域的模型或具有機器訓練或文字實體的自定義模型。 您可以使用創作api或luis門戶構建自定義luis模型。

為了更精通技術,microsoft發布了一篇**和**,向您展示如何使用azure機器學習服務為自定義應用程式微調bert nlp模型 。

google cloud提供了預先訓練的自然語言api和可自定義的automl自然語言 。 natural language api在文字中發現語法,實體和情感,並將文字分類為一組預定義的類別。 automl自然語言使您可以使用深度遷移學習為自己的類別集訓練自定義分類器。

from:

什麼是自然語言處理,自然語言處理目前的應用有哪些?

自然語言處理大體包括了自然語言理解和自然語言生成兩個部分,實現人機間自然語言通訊意味著要使計算機既能理解自然語言文字的意義,也能以自然語言文本來表達給定的意圖 思想等,前者稱為自然語言理解,後者稱為自然語言生成。自然語言處理是電腦科學領域與人工智慧領域中的乙個重要方向。自然語言處理的終極目標是用自然...

什麼是自然語言處理技術

自然語言處理 nlp 是電腦科學,人工智慧,語言學關注計算機和人類 自然 語言之間的相互作用的領域。自然語言處理是電腦科學領域與人工智慧領域中的乙個重要方向。它研究能實現人與計算機之間用自然語言進行有效通訊的各種理論和方法。自然語言處理是一門融語言學 電腦科學 數學於一體的科學。因此,這一領域的研究...

什麼是自然語言處理技術

自然語言處理 nlp 是電腦科學,人工智慧,語言學關注計算機和人類 自然 語言之間的相互作用的領域。自然語言處理是電腦科學領域與人工智慧領域中的乙個重要方向。它研究能實現人與計算機之間用自然語言進行有效通訊的各種理論和方法。自然語言處理是一門融語言學 電腦科學 數學於一體的科學。因此,這一領域的研究...