speech and language processing讀書筆記3

ch5詞性標注

詞性標注能夠提供關于單詞和其鄰近成分的大量有用信息。它可以區(qū)分標記集的主有代詞和人稱代詞;能告訴我們關于單詞的發(fā)音信息;能用來在信息檢索中幫助分割詞干;幫助我們進行詞義排歧。

目前用到的算法有手寫規(guī)則(基于規(guī)則的標注),統(tǒng)計方法(隱馬爾可夫模型標注HMM和最大熵標注),基于轉化的標注和基于記憶的標注等。

5.1英語詞的分類

詞類分為兩個大類:封閉類(比如介詞,成員相對固定)和開放類。封閉類又稱為虛詞,通常很短,出現(xiàn)頻率高,在語法中表示結構關系。

名詞,動詞,形容詞,副詞為四大開放類。

名詞是具有以下能力的詞:與限定詞(一個,他的)同時出現(xiàn);可以受主有代詞的修飾;大多數(shù)名詞都可以以復數(shù)形式出現(xiàn)。

動詞表示大多數(shù)行為和過程的詞。

形容詞包括很多描寫性質或質量的單詞。

副詞可以看成是要修飾某種東西的詞。

不同語言的封閉類差別很大,英語中重要的封閉類有:介詞,限定詞,代詞,連接詞,助動詞,小品詞,數(shù)詞

5.2英語的標注集

包含87個標記的標記集Brown語料庫;除此之外常用的兩個標注集:penn treebank標記集和CLAWS

5.3詞類標注

POS標注的問題就是消解歧義,在一定的上下文中選擇恰如其分的標記,所以詞性標注是排歧的一個重要方面。

大多數(shù)的標注算法可以歸納為兩類:一類是基于規(guī)則的標注算法,一類是概率或者隨機標注算法

5.4基于規(guī)則的詞性標注

在標注算法的第一階段,每一個單詞都要通過雙層的詞表轉錄機,然后該單詞所有可能的詞類都返回到他的條目上。然后把大量的約束規(guī)則應用于輸入的句子中以便消除那些不正確的詞類。

5.5基于隱馬爾可夫鏈的詞類標注

把隱馬爾可夫模型應用于詞類標注是貝葉斯推理的一種特殊情況。

詞類標注一般可以作為一個序列分類問題來處理。

詞性標注可以看作是給單詞序列指派一個詞性標注序列。在貝葉斯推理中,我們首先考慮所有可能的類的序列,從中選出最可能的標記序列。

HMM標注算法有兩個假設,為了簡化計算:1.單詞出現(xiàn)的概率只與它本身的詞類標記有關;2.標記出現(xiàn)的概率只與他前面一個標記有關,也就是我們前面說的二元語法。

馬爾可夫鏈適合用于能夠看到實際條件的事件,但是不適合做詞類標注,隱馬爾可夫模型就可以

viterbi算法是HMM最常見的解碼算法,解碼就是確定哪一個變量序列是隱藏在某個觀察序列下的源變量。viterbi算法實際上就是經典的動態(tài)規(guī)劃算法的標準應用。viterbi算法一個稍微簡化的表達就是:取一個單獨的HMM和所觀察到的單詞序列o作為輸入,返回概率最大的狀態(tài)/標記序列q以及他們的概率作為輸出。

在實際應用時,HMM算法是忽略上下文信息的,現(xiàn)在大多數(shù)的HMM標注算法使用的歷史信息多一些,不是二元語法而是三元語法。這樣會造成一個數(shù)據稀疏問題,據此問題可以使用刪除插值法。

這里可以區(qū)分HMM算法和EM算法。HMM算法使用手工標注數(shù)據進行訓練,EM算法是自動學習的。

5.6基于轉換的標注

Transformation-based learning ,TBL是基于規(guī)則的,他最終指出,什么樣的標記會指派給什么樣的單詞,但是它的規(guī)則是從數(shù)據中自己推導出來的,他是有指導的,需要一個預先標記過的訓練語料庫。

TBL的標注規(guī)則就是對語料庫先使用比較粗糙的規(guī)則來標注,這些規(guī)則也就是在大多數(shù)場合都能使用的規(guī)則,然后再選擇較為特殊的規(guī)則來修改原來的某些標記。

TBL算法主要包含三個階段:1.首先把每一個單詞標上最可能的標記;2.檢查每一個可能的轉換,并且選擇那個能夠最大程度的改善標注的轉換;3.根據這個規(guī)則對數(shù)據進行重新標注。后面兩個階段重復進行,直到達到某一個標準。

5.7評測和錯誤分析

將語料庫分為測試集和訓練集,這樣在測試時測試集的容量再大也無法反映數(shù)據的全貌,所以最好的方法是用全部的數(shù)據進行測試和訓練,這時所用到的方法就是交叉驗證,交叉驗證是不斷的隨機分測試機和驗集。

評價準確率的好壞時由于標記集和任務的不同,標記的使用情況可以根據下界的底線(baseline)和上界的頂線(ceiling)來比較。頂線就是看人來進行這項任務所達到的程度。語義消歧的標準底線是對每一個歧義單詞選擇一元語法最可能的標記,最大頻率底線是給每一個單詞指派在訓練集上最經常出現(xiàn)的類別標記。

5.8詞類標注中的高級專題

5.8.1實際問題:標記的不確定性與詞例還原

遇到標注的不確定問題,有些標注器允許多重標注。通常有三種方式處理不確定性:1.采用某種方式只以一個標記來代替不確定的標記;2.在測試時,只要給出其中一個正確的標記就算標記正確,訓練時,才用某種方式只用多個標記中的一個作為他的標記;3。把不確定的標記作為一個單獨的復雜標記來處理。

大多數(shù)的標記算法都假定標記已經應用過詞例還原了

5.8.2未知詞

我們討論的所有算法都要求有一步詞典,詞典列出詞已經所有可能的標注。但是再大的詞典也不可能將所有的可能的詞都包含進去。所以我們需要某種方法來猜測未知詞的標記。

最簡單的思想是認為每種未知詞都是有歧義的且每種可能的標注的概率是一樣的。稍微復雜一點的思想是在未知詞的概率分布上是與只出現(xiàn)一次的詞的概率分布是一樣的;他們的相似之處在于他們最可能的詞性是名詞,其實是動詞。最強的未知詞算法是使用了單詞的形態(tài)信。

5.9高級專題:拼寫中的噪聲信道模型

一般來說噪聲信道模型是更正單詞拼寫錯誤的一種使用最廣的算法。

噪聲信道模型可以從直覺上解釋為:一個正確拼寫的單詞通過噪聲信道的信道時被扭曲了,我們要通過信道模型來處理這個錯拼的單詞。噪聲信道模型告訴我們,是有一個真正被隱藏起來的單詞w,并且有一個噪聲信道把這個單詞改變?yōu)榱四撤N可能拼錯的表層形式。

對于真詞拼寫錯誤我們把更正這樣的錯誤叫做上下文有關的拼寫更正錯誤。

ch6隱馬爾可夫模型與最大熵模型

HMM與MEMM兩者都是序列分類器,他是給序列中的某個單元指派類別或者標號的模型。如果認為有限狀態(tài)轉錄機是非概率序列分類器,那么HMM與MEMM就是使用概率的序列分類器。

6.1馬爾可夫鏈

馬爾可夫鏈是加權自動機的一個特殊情況,其中輸入序列唯一的確定了自動機將要通過的輸入序列唯一的確定了自動機將要通過的狀態(tài)。更想象的描述,馬爾可夫鏈可以看作是概率圖模型。一階馬爾可夫鏈認為一個特定狀態(tài)的概率只與他前面的一個狀態(tài)有關。

6.2隱馬爾可夫模型

隱馬爾可夫模型使得我們有可能涉及被觀察到的事件,又涉及隱藏事件。

一階隱馬爾可夫模型有兩個假設,一個是特定狀態(tài)只與他前面一個狀態(tài)有關;一個是一個輸出觀察的概率只與該觀察的狀態(tài)有關而與其他任何狀態(tài)任何觀察都無關。

如果任何兩個狀態(tài)之間都有一個非零的概率,那么這樣的HMM稱為全聯(lián)通HMM或者遍歷HMM

6.3似然度的計算:向前算法

向前算法有效的代替了呈指數(shù)增長的極為復雜的算法,是一種動態(tài)規(guī)劃算法,當?shù)玫接^察序列的概率時,使用一個表來存儲中間值。

6.4解碼:viterbi算法

解碼就是確定哪一個變量序列是隱藏在后面的某個觀察序列的來源的工作

HMM最常見的解碼算法就是viterbi算法,他是一種動態(tài)規(guī)劃算法,使用動態(tài)規(guī)劃網格,與最小編輯距離算法很相似。

6.5HMM的訓練:向前-向后算法

訓練HMM的標準算法是向前-向后算法,這是期望最大化算法的一種特殊情形。它幫助我們訓練轉移概率和發(fā)射概率。

6.6最大熵模型:背景

最大熵模型是一種多元回歸模型,是非序列分類工具。它屬于指數(shù)分類器或對數(shù)分類器

6.6.1線性回歸

在統(tǒng)計學中,把某些輸入特征映射到某個輸出值時,輸出是實數(shù)值,就使用“回歸”,輸出是離散值(即類刪離散集合中的某個值),就使用“分類” 用于預測的因素稱為特征,使用多個特征的線性回歸稱為多元線性回歸,訓練回歸模型基于代價函數(shù)的。

6.6.2邏輯回歸

在回歸模型中,使用線性函數(shù)來估計概率的分對數(shù),而不是估計概率,這樣的回歸稱為邏輯回歸。

6.6.3邏輯回歸(分類)

分類也稱為推論是說給定一個特定的觀察,確定其屬于兩個類別的哪一個,也稱為二元分類問題。超平面是用于分開兩個類別的平面。

6.6.4高級專題:邏輯回歸(訓練)

在線性回歸中,訓練就是選擇合適的權值,使得訓練集上的代價函數(shù)最小。 在邏輯回歸中,使用條件最大似然度估計來估計權值,這個問題屬于凸優(yōu)化問題。凸優(yōu)化問題常用算法有準牛頓法,梯度上升法, 共軛梯度法,迭代定標算法

6.7?最大熵模型(MEMM)

最大熵模型是對數(shù)線性方法家庭中的一員,主要用與分類。 對數(shù)線性模型也應用于漢語的詞類標注中。

前面我們假設的特征都是實值的,而在nlp中通常使用2值屬性的,指示函數(shù)就是如果一個特征取值為0和1。

當使用MaxEnt在進行分類時,他會將這個類別上的概率分布給我們。如果我們想要進行硬分類并選擇最佳的類別,我們需要選擇具有最大概率的類別。因此最大熵模型是邏輯回歸中的分類的泛化。

以上我們描述的都是單獨的二元特征。而現(xiàn)實中我們常會建立更復雜的特征來表示一個單詞的多個特性的組合。想支持向量機等機器學習模型就可以自動的模擬特征之間的相互關系,但最大熵模型中任何一種復雜的特征都必須通過手工定義。想要成功的使用最大熵模型關鍵在于設計恰當?shù)脑O計特征與特征之間的組合。

訓練最大熵模型的一個重要問題是對于權值進行平滑,稱為正則化。正則化的目的是懲罰那些大的權值。

為什么多元邏輯回歸要叫最大熵,直覺上來講:所謂最大熵就是不斷的通過增加特征的方法來建立分布,每一個特征就是一個指示函數(shù)。對于每一個特征在總的分布中增加一個約束,所以我們要選擇與這些約束一致的最大熵分布,而多元邏輯回歸的指數(shù)模型也能夠找到最大熵分布。

6.8?最大熵馬爾可夫模型

最大熵馬爾可夫模型是基本的最大熵模型分類起的擴充,它能夠把一個類別指派給一個序列中的每一個成分。最大熵模型把voterbi算法與最大熵模型緊密結合起來。

我們曾經說HMM是一個生成模型,而MEMM是分辨模型,因為模型通過訓練可以在各種可能的標記序列中進行分辨。另一點于HMM的不同是,MEMM可以使用觀察到的任何有用的特征作為條件。

而與HMM一致的事,MEMM同樣可以使用viterbi算法進行解碼。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 什么是熵(Entropy) 簡單來說,熵是表示物質系統(tǒng)狀態(tài)的一種度量,用它老表征系統(tǒng)的無序程度。熵越大,系統(tǒng)越無序...
    Detailscool閱讀 3,807評論 0 59
  • 前面的文章主要從理論的角度介紹了自然語言人機對話系統(tǒng)所可能涉及到的多個領域的經典模型和基礎知識。這篇文章,甚至之后...
    我偏笑_NSNirvana閱讀 14,453評論 2 64
  • 神經網絡 原理 《機器學習》周志華 14.1 隱馬爾可夫模型 機器學習最重要的任務,是根據一些已觀察到的證據(例如...
    hxiaom閱讀 1,594評論 0 1
  • 這一部分沒有參考資料,自己看書的時間也比較短,對于一些概念也比較模糊,參考了很多人的學習筆記,整理摘抄。。。。。。...
    一杭oneline閱讀 1,500評論 0 0
  • ch4 n元語法 n元語言模型是根據前面n-1個詞猜測下面的單詞。 廣泛引用于語言識別,手寫體識別,機器翻譯,拼寫...
    畢一閱讀 807評論 0 0

友情鏈接更多精彩內容