自然語言處理(四) 下推自動機接受的語言

2021-10-01 20:40:59 字數 1819 閱讀 3875

下推自動機的定義:乙個不確定的pda可以表達成乙個7元組: m = (σ, q, γ, δ, q0, z0, f) 其中,σ 是輸入符號的有窮集合; q 是狀態的有限集合; q0 ∈ q 是初始狀態; γ 為下推儲存器符號的有窮集合; z0∈γ 為最初出現在下推儲存器頂端的開始符號; f 是終止狀態集合,f ⊆ q; δ 是從 q×(σ∪)×γ 到 q×γ* 的子集的對映。

對映關係 δ(q, a, z) = 其中, q1, q2, …, qm∈q, a∈σ, z∈γ, γ1, γ2,…,γm∈γ*。 該對映的意思是:當pda處於狀態 q,面臨輸入符號 a時,自動機將進入到 qi, i = 1, 2, …, m 狀態,並以 γi 來代替下推儲存器(棧)頂端符號z,同時將輸入頭 指向下乙個字元 。當 z 被 γi 取代時,γi 的符號按照 從左到右的順序依次從下向上推入到儲存器。

特殊情況下,δ(q, ε, z)= 時,輸入頭位置不移動,只用於處理下推儲存器內部 的操作,叫作 「ε移動」。

這些定義我看得快炸了,沒理解這是什麼意思。下面是乙個圖,可能比較直觀的顯示出,下推自動機與有限自動機的區別就是多出乙個下推儲存器。

以上的定義都是教材的內容,如果光看理論,我反正是一頭霧水,不知所云。不過結合乙個例子可能會有所理解。下面的例子是判斷乙個句子是否能夠被下推自動機所接受。

下推自動機 m 所接受的語言定義為: t(m) = 。下面通過這個例子來走一遍過程。看著下面這些符號實在是頭大,不過通過具體的例子分析也不難理解。

對於輸入 abbcbba 這個句子。下推自動機 是怎麼樣判斷這個句子是否合法呢?它的處理步驟如下:

(一)、#是開始符號,0是初始狀態。首先從輸入帶的第乙個字元讀入。輸入了a,根據規則 1。將a壓入棧。狀態仍然為0;

(二)、狀態為0,輸入b。根據規則 2。將b壓入棧,狀態仍然為0.

(三)、狀態為0,輸入b。根據規則 2。將b壓入棧,狀態仍然為0.

(四)、狀態為0,輸入c。根據規則 3。將ε(空串)壓入棧中,也就是什麼都不做,狀態變為1.

(五)、狀態為1,輸入b。根據規則 5。將b彈出棧,狀態仍然為1.

(六)、狀態為1,輸入b。根據規則 5。將b彈出棧,狀態仍然為1.

(七)、狀態為1,輸入b。根據規則 4。將a彈出棧,狀態仍然為1。

到此為止,所有的字元讀取完畢,此時檢查到棧裡面也只有開始字元,狀態為1(中止狀態)。因此abbcbba被此下推自動機所接受。

最後,我這裡面所用到的語言可能不準確,但都是為了便於自己理解,,演算法的實現過程可能有錯誤,如果各位看到有什麼錯誤遺漏不當之處,還望不吝賜教,拜謝。

統計自然語言處理書籍閱讀心得四

1 困惑度 我們通常用困惑度 perplexity 來代替交叉熵 衡量語言模型的好壞。同樣,語言模型設計的任務就是尋找困惑度最小的模型,使其最接 近真實語言的情況。在自然語言處理中,我們所說的語言模型的困惑度 通常是指語言模型對於測試資料的困惑度。一般情況下將所有資料分成 兩部分,一部分作為訓練資料...

自然語言處理第四期

tf idf原理 tf idf 詞頻 逆文字頻率 是一種統計方法,用於評估乙個詞對於乙個文字的重要程度,詞的重要性隨著它在檔案 現的次數成正比,但同時會因為它在多個文字 現的頻率成反比。總的來說,乙個詞語在一篇文章 現的次數越多,同時在所有文件 現的次數越少,就越能代表該文章。tf idf主要是有詞...

統計自然語言處理梳理四 篇章分析

進行統計自然語言處理系統梳理,學習資料 統計自然語言處理.宗成慶 篇章分析的最終目標是從整體上理解篇章,最重要的任務是分析篇章結構。篇章結構包括 語義結構,話題結構,指代結構等。概念依存理論。beaugrandeand dressler 1981 認為篇章有7個基本特徵 銜接性,連續性,意圖性,資訊...