<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 統計語言建模和神經語言模型的簡要介紹 > 原文: [https://machinelearningmastery.com/statistical-language-modeling-and-neural-language-models/](https://machinelearningmastery.com/statistical-language-modeling-and-neural-language-models/) 語言建模是許多重要的自然語言處理任務的核心。 最近,基于神經網絡的語言模型已證明比獨立的經典方法和作為更具挑戰性的自然語言處理任務的一部分更好的表現。 在這篇文章中,您將發現用于自然語言處理的語言建模。 閱讀這篇文章后,你會知道: * 為什么語言建模對于解決自然語言處理中的任務至關重要。 * 什么是語言模型以及使用它們的一些示例。 * 神經網絡如何用于語言建模。 讓我們開始吧。 ![Gentle Introduction to Statistical Language Modeling and Neural Language Models](img/ddba5467d95d1acfe4e72d3ccade4a06.jpg) 統計語言建模和神經語言模型的簡要介紹 照片由 [Chris Sorge](https://www.flickr.com/photos/stone65/7790433584/) 拍攝,保留一些權利。 ## 概觀 這篇文章分為 3 部分;他們是: 1. 建模語言問題 2. 統計語言建模 3. 神經語言模型 ## 1.建模語言問題 可以完全指定正式語言,如編程語言。 可以定義所有保留字,并且可以精確定義它們可以使用的有效方式。 我們不能用自然語言來做這件事。自然語言不是設計的;它們出現了,因此沒有正式的規范。 可能存在部分語言和啟發式的正式規則,但經常使用不確認的自然語言。自然語言涉及大量術語,可以用于引入各種歧義的方式,但其他人仍然可以理解。 此外,語言改變,單詞用法改變:它是一個移動的目標。 然而,語言學家試圖用正式的語法和結構來指定語言。它可以做到,但是非常困難,結果可能很脆弱。 指定語言模型的另一種方法是從示例中學習它。 ## 2.統計語言建模 統計語言建模,或語言建模,簡稱 LM,是概率模型的開發,它能夠預測序列中的下一個單詞,給出前面的單詞。 > 語言建模是將概率分配給語言中的句子的任務。 [...]除了為每個單詞序列分配概率之外,語言模型還指定給定單詞(或單詞序列)跟隨單詞序列的可能性的概率 - 第 105 頁,[自然語言處理中的神經網絡方法](http://amzn.to/2wt1nzv),2017。 語言模型基于文本示例來學習單詞出現的概率。更簡單的模型可以查看短序列單詞的上下文,而較大的模型可以在句子或段落的級別上工作。最常見的是,語言模型在單詞級別上運行。 > 語言模型的概念本質上是概率性的。語言模型是對從某些詞匯表中提取的字符串進行概率測量的函數。 - 第 238 頁,[信息檢索簡介](http://amzn.to/2vAavQd),2008 年。 語言模型可以獨立開發和使用,例如生成看似來自語料庫的新文本序列。 語言建模是大量自然語言處理任務的根本問題。更實際地,語言模型用于需要語言理解的任務的更復雜模型的前端或后端。 > ...語言建模是機器翻譯和自動語音識別等實際應用中的關鍵組成部分。[...]出于這些原因,語言建模在自然語言處理,人工智能和機器學習研究中發揮著核心作用。 - 第 105 頁,[自然語言處理中的神經網絡方法](http://amzn.to/2wt1nzv),2017。 一個很好的例子是語音識別,其中音頻數據被用作模型的輸入,并且輸出需要語言模型來解釋輸入信號并且識別已經識別的單詞的上下文中的每個新單詞。 > 語音識別主要涉及將語音信號轉錄為單詞序列的問題。 [...]從這個角度來看,假定語音是由語言模型生成的,該語言模型為所有單詞串 w 提供獨立于觀察信號的 Pr(w)的估計[...]語音識別的目標是找到最可能的詞序列給出觀察到的聲學信號。 - 第 205-206 頁,[牛津計算語言學手冊](http://amzn.to/2w9nmc4),2005 年。 類似地,語言模型用于在許多類似的自然語言處理任務中生成文本,例如: * 光學字符識別 * 手寫識別。 * 機器翻譯。 * 拼寫糾正。 * 圖像標題。 * 文本摘要 * 以及更多。 > 語言建模是確定一系列單詞概率的藝術。這在許多領域都很有用,包括語音識別,光學字符識別,手寫識別,機器翻譯和拼寫校正 - [語言建模的一點進展](https://arxiv.org/abs/cs/0108005),2001。 開發更好的語言模型通常會使模型在預期的自然語言處理任務中表現更好。這是開發更好,更準確的語言模型的動力。 > [語言模型]在傳統的 NLP 任務中發揮了關鍵作用,例如語音識別,機器翻譯或文本摘要。通常(盡管不總是),訓練更好的語言模型可以改善下游任務的基本指標(例如語音識別的單詞錯誤率,或翻譯的 BLEU 得分),這使得訓練更好的 LM 的任務本身就是有價值的。 - [探索語言建模的局限](https://arxiv.org/abs/1602.02410),2016。 ## 3.神經語言模型 最近,神經網絡在語言模型開發中的使用已變得非常流行,以至于它現在可能是首選方法。 在語言建模中使用神經網絡通常稱為神經語言建模,簡稱 NLM。 神經網絡方法在獨立語言模型上以及在語音識別和機器翻譯等具有挑戰性的任務中將模型合并到較大模型中時,比傳統方法獲得更好的結果。 提高表現的一個關鍵原因可能是該方法的推廣能力。 > 非線性神經網絡模型解決了傳統語言模型的一些缺點:它們允許在越來越大的上下文大小上進行調整,只需參數數量的線性增加,它們減少了手動設計后退順序的需要,并且它們支持跨不同上下文的泛化。 - 第 109 頁,[自然語言處理中的神經網絡方法](http://amzn.to/2wt1nzv),2017。 具體地,采用單詞嵌入,其使用實值向量來表示項目向量空間中的每個單詞。這種基于其用法的單詞的學習表示允許具有相似含義的單詞具有相似的表示。 > 神經語言模型(NLM)通過將單詞參數化為向量(單詞嵌入)并將其用作神經網絡的輸入來解決 n-gram 數據稀疏性問題。參數作為訓練過程的一部分進行學習。通過 NLM 獲得的單詞嵌入表現出在誘導向量空間中語義上接近的單詞同樣接近的性質。 - [字符感知神經語言模型](https://arxiv.org/abs/1508.06615),2015。 這種概括是經典統計語言模型中使用的表示不能輕易實現的。 > 在一個離散的單詞 indice 空間中很難獲得“真正的泛化”,因為單詞索引之間沒有明顯的關系。 - [用于大詞匯量連續語音識別的連接語言建模](https://pdfs.semanticscholar.org/b4db/83366f925e9a1e1528ee9f6b41d7cd666f41.pdf),2002。 此外,分布式表示方法允許嵌入表示隨著詞匯量的大小更好地縮放。每個單詞具有一個離散表示的經典方法使用越來越大的單詞詞匯來對抗維度的詛咒,這導致更長和更稀疏的表示。 語言建模的神經網絡方法可以使用以下三個模型屬性來描述,這些屬性取自“ [A Neural Probabilistic Language Model](http://www.jmlr.org/papers/v3/bengio03a.html) ”,2003。 1. 將詞匯表中的每個單詞與分布式單詞特征向量相關聯。 2. 根據序列中這些單詞的特征向量表示單詞序列的聯合概率函數。 3. 同時學習單詞特征向量和概率函數的參數。 這表示一種相對簡單的模型,其中表示和概率模型直接從原始文本數據一起學習。 最近,基于神經的方法已經開始,然后一直開始超越傳統的統計方法。 > 我們提供了充分的實證證據,表明連接語言模型優于標準的 n-gram 技術,除了它們的高計算(訓練)復雜性。 - [基于循環神經網絡的語言模型](http://www.fit.vutbr.cz/research/groups/speech/publi/2010/mikolov_interspeech2010_IS100722.pdf),2010。 最初,前饋神經網絡模型用于介紹該方法。 最近,循環神經網絡以及具有長期記憶的網絡(如長短期記憶網絡或 LSTM)允許模型在比更簡單的前饋網絡更長的輸入序列上學習相關的上下文。 > [RNN 語言模型]提供了進一步的概括:不考慮前面幾個單詞,假設具有來自循環連接的輸入的神經元代表短期記憶。該模型從數據中學習如何表示內存。雖然淺前饋神經網絡(僅具有一個隱藏層的神經網絡)只能聚類相似的詞,但是循環神經網絡(可以被認為是深層架構)可以執行類似歷史的聚類。這允許例如具有可變長度的模式的有效表示。 - [循環神經網絡語言模型的擴展](http://ieeexplore.ieee.org/abstract/document/5947611/),2011。 最近,研究人員一直在尋求這些語言模型的極限。在文章“[探索語言建模的極限](https://arxiv.org/abs/1602.02410)”中,評估大數據集上的語言模型,例如一百萬字的語料庫,作者發現基于 LSTM 的神經語言模型勝過經典方法。 > ......我們已經證明 RNN LMs 可以在大量數據上進行訓練,并且優于競爭模型,包括精心調校的 N-gram。 - [探索語言建模的局限](https://arxiv.org/abs/1602.02410),2016。 此外,他們提出了一些啟發式方法來開發一般的高表現神經語言模型: * **尺寸很重要**。最好的型號是最大的型號,特別是內存單元的數量。 * **正規化很重要**。在輸入連接上使用正規化(如丟失)可改善結果。 * **CNNs 與嵌入**。字符級卷積神經網絡(CNN)模型可用于前端而不是字嵌入,從而實現類似且有時更好的結果。 * **合奏很重要**。結合多個模型的預測可以大大提高模型表現。 ## 進一步閱讀 如果您要深入了解,本節將提供有關該主題的更多資源。 ### 圖書 * 第 9 章語言建模,[自然語言處理中的神經網絡方法](http://amzn.to/2vStiIS),2017。 * 第 22 章,自然語言處理,[人工智能現代方法](http://amzn.to/2fDPfF3),2009。 * 第 12 章,信息檢索的語言模型,[信息檢索簡介](http://amzn.to/2vAavQd),2008。 ### 文件 * [神經概率語言模型](https://papers.nips.cc/paper/1839-a-neural-probabilistic-language-model.pdf),NIPS,2001。 * [神經概率語言模型](http://www.jmlr.org/papers/v3/bengio03a.html),JMLR,2003。 * [用于大詞匯量連續語音識別的連接語言建模](https://pdfs.semanticscholar.org/b4db/83366f925e9a1e1528ee9f6b41d7cd666f41.pdf),2002。 * [基于循環神經網絡的語言模型](http://www.fit.vutbr.cz/research/groups/speech/publi/2010/mikolov_interspeech2010_IS100722.pdf),2010。 * [循環神經網絡語言模型的擴展](http://ieeexplore.ieee.org/abstract/document/5947611/),2011。 * [字符感知神經語言模型](https://arxiv.org/abs/1508.06615),2015。 * [用于語言建模的 LSTM 神經網絡](https://pdfs.semanticscholar.org/f9a1/b3850dfd837793743565a8af95973d395a4e.pdf),2012 * [探索語言建模的局限](https://arxiv.org/abs/1602.02410),2016。 ### 用品 * [語言模型,維基百科](https://en.wikipedia.org/wiki/Language_model) * [神經網絡語言模型,Scholarpedia](http://www.scholarpedia.org/article/Neural_net_language_models) ## 摘要 在這篇文章中,您發現了自然語言處理任務的語言建模。 具體來說,你學到了: * 這種自然語言沒有正式指定,需要使用統計模型來學習實例。 * 統計語言模型是許多具有挑戰性的自然語言處理任務的核心。 * 使用神經語言模型,特別是那些具有字嵌入和循環神經網絡算法的模型,可以實現最先進的結果。 你有任何問題嗎? 在下面的評論中提出您的問題,我會盡力回答。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看