形式語言與自動機理論

概述:

喬姆斯基(Noam Chomky)曾經把語言定義為:按照一定規律構成的句子和字符串的有限或無限的集合。也有把語言看成一個數學系統....深奧,看不懂~~~
總之呢,描述一種語言大致有如下三種途徑:

  • 窮舉法
  • 文法:每個句子都由嚴格定義的規則來構造,基于規則產生句子。我這里理解為我們語文中的語法規則。什么主謂賓之類的~~~
  • 自動機法:通過對輸入的句子進行合法性監測區別哪些是語言中的句子,哪些不是。

形式語言

也稱之為代數語言學,用來精確的描述語言及其結構的手段。
形式語法的定義這里就不闡述了,可以參考wiki。文法表示為:G=(N,E,P,S)
喬姆斯基將文法分發分為如下四種:

  • 正則文法
  • 上下文無關文法
  • 上下文相關文法
  • 無約束文法

自動機

理論太難懂了..... 簡單說就是由5組元素組成,字符集,狀態集,狀態轉移,起始,末尾。5個要素。M =(E,Q,\delta ,p_0,F)\delta(q,a) = q'

狀態轉移

文法與自動機之間的關系

文法中的非終結符可以理解為自動機中的字符集,終結符理解為狀態集,狀態轉移可以用規則轉換得到。

自動機的應用:編輯距離:從一個字符串轉變到另一個字符串最少步驟(插入,刪除,交換,修改)。場景應用:拼寫糾錯~。

拼寫糾錯

字母表A上的字母構成的所有合法單詞都是自動機中的一條路徑(有向圖)。即一條路徑上從起始狀態到終止狀態連起來的字符串就是合法拼寫。目標:尋找有向圖中編輯距小于給定閾值t的所有路徑。這些路徑就是滿足閾值t的相似拼寫集合。


當然,當數據量大的話,為了提高搜索速度,則會采取剪枝操作。
cuted(X[m],Y[n]) = \min_{l<i<u}{ ed(X[i],Y[n])}

其中
l = \max(1,n-t),u = \min(m,n+t)
,
t
是設定的最小編輯距離閾值~也就是在子串中已經超過閾值了,那就沒必要繼續往下進行圖搜索了,回溯進行其他分支。

編輯距離

例如:ed(hanzhou,hangzhou) = 1,需要進行一次插入操作。
主要思想:判斷當前是需要插入,交換,還是修改使得修改次數最小。
三種情況:
(1) ed(X{[i+1]},Y{[i+1]}) = ed(X{[i]},Y{[i]}),當X_{i+1} = Y_{i+1}
(2)ed(X{[i+1]},Y{[i+1]}) =1 + min\{ed(X{[i-1]},Y{[i-1]}),ed(X{[i]},Y{[i+1]}),ed(X{[i+1]},Y{[i]})\},當X_{i} = Y_{i+1},X_{i+1} = Y_{i}執行交換操作
(3) ed(X{[i+1]},Y{[i+1]}) =1 + min\{ed(X{[i]},Y{[i]}),ed(X{[i]},Y{[i+1]}),ed(X{[i+1]},Y{[i]})\},其他情況

簡單解析:

min 操作就是判斷前一步驟是修改,還是刪除,還是插入。ed(X{[i]},Y{[i+1]})是插入操作,ed(X{[i+1]},Y{[i]})刪除操作,ed(X{[i]},Y{[i]})則是修改操作。

附頁

常見符號解釋

標記代碼 標記名稱
ROOT 要處理文本的語句
IP 簡單從句
NP 名詞短語
VP 動詞短語
PU 斷句符,通常是句號、問號、感嘆號等標點符號
LCP 方位詞短語
PP 介詞短語
CP 由‘的’構成的表示修飾性關系的短語
DNP 由‘的’構成的表示所屬關系的短語
ADVP 副詞短語
ADJP 形容詞短語
DP 限定詞短語
QP 量詞短語
NN 常用名詞
NR 固有名詞
NT 時間名詞
PN 代詞
VV 動詞
VC
CC 表示連詞
VE
VA 表語形容詞
AS 內容標記(如:了)
VRD 動補復合詞
CD 表示基數詞

來源原文:https://blog.csdn.net/lihaitao000/article/details/51812618

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、DecimalFormat的格式化功能 結果輸出: 將35610037.1f結尾的"f"去掉后,重新運行: 結...
    北雁南飛_8854閱讀 1,434評論 0 0
  • 與人消磨時間變成娛樂產物消磨時間 我們下意識的將時間花在游戲或者其他娛樂產物上邊,如電視劇,網絡小說。而開始遠離人...
    超極樁閱讀 184評論 0 0