自然語(yǔ)言處理的數(shù)學(xué)原理(二)

本系列的上一篇文章介紹了 NLP 中處理分詞的兩種方法,其中基于統(tǒng)計(jì)語(yǔ)言模型的方法以巨大的優(yōu)勢(shì)勝出。

在上一篇文章的末尾,我們講了優(yōu)秀的算法模型在形式上應(yīng)該是簡(jiǎn)潔優(yōu)雅的。具體來(lái)說(shuō):

  1. 一個(gè)正確的數(shù)學(xué)模型在形式上應(yīng)該是簡(jiǎn)潔優(yōu)雅的。
  2. 一個(gè)正確的數(shù)學(xué)模型,在剛開(kāi)始的時(shí)候可能還不如一個(gè)經(jīng)過(guò)精心調(diào)教的錯(cuò)誤模型準(zhǔn)確。但是錯(cuò)誤模型不論如何調(diào)教,因?yàn)榉较蝈e(cuò)了,所以終究會(huì)有處理不了實(shí)際問(wèn)題的時(shí)候。
  3. 正確的數(shù)學(xué)模型可能因?yàn)槭艿礁蓴_而不準(zhǔn)確。此時(shí)應(yīng)該找出干擾、噪音,并解決它們,而不是簡(jiǎn)單湊合去修修補(bǔ)補(bǔ)。

這篇文章我們繼續(xù)講分詞和統(tǒng)計(jì)語(yǔ)言模型。不過(guò),這次的內(nèi)容會(huì)比上次要深入、深?yuàn)W,并且會(huì)涉及到一些數(shù)學(xué)推導(dǎo),以及一些工程上的 Dark Side。不過(guò),其中有些非常 Tricky 的技巧對(duì)于大多數(shù)讀者來(lái)說(shuō)沒(méi)有必要閱讀,而剩下的部分中簡(jiǎn)單的數(shù)學(xué)推導(dǎo)也不致枯燥。

統(tǒng)計(jì)語(yǔ)言模型的具體描述

上一篇文章簡(jiǎn)單介紹了統(tǒng)計(jì)語(yǔ)言模型的思想,這里將給出統(tǒng)計(jì)語(yǔ)言模型的具體描述和簡(jiǎn)化。不過(guò),在此之前,我們先看一個(gè)更簡(jiǎn)單直觀的例子。

一個(gè)簡(jiǎn)單的例子

下面這個(gè)例子我們已經(jīng)見(jiàn)過(guò),在文法上,這是一個(gè)比較復(fù)雜的句子。不過(guò),雖然這個(gè)句子在文法上比較復(fù)雜,但是對(duì)于人類來(lái)說(shuō),理解它并不費(fèi)勁。

  • 由于理解自然語(yǔ)言,需要關(guān)于外在世界的廣泛知識(shí)以及運(yùn)用操作這些知識(shí)的能力,自然語(yǔ)言認(rèn)知,同時(shí)也被視為一個(gè)人工智能完備的問(wèn)題。

現(xiàn)在我們對(duì)句子略作修改,變成下面這樣,理解起來(lái)就有些費(fèi)勁了,但是勉強(qiáng)還能理解。

  • 自然語(yǔ)言由于理解,需要知識(shí)廣泛關(guān)于外在世界的以及運(yùn)用這些知識(shí)操作的能力,認(rèn)知自然語(yǔ)言,也被視為同時(shí)人工只能完備的一個(gè)問(wèn)題。

如果對(duì)句子繼續(xù)變形,變成下面這樣,基本上就沒(méi)人搞得懂這是在說(shuō)什么了。

  • 然自語(yǔ)言由理于解,需知要關(guān)泛識(shí)需廣關(guān)泛于外在界世以及的運(yùn)用及的些這識(shí)知操運(yùn)用些的作能力,認(rèn)語(yǔ)知自然語(yǔ)知言,也視被為同備時(shí)的人被工個(gè)問(wèn)只視能完的備一個(gè)題問(wèn)。

從文法上說(shuō),第一個(gè)句子合乎文法,因而容易理解;第二個(gè)句子雖然不合文法,但是勉強(qiáng)有跡可循;第三個(gè)句子則完全莫名其妙,自然就沒(méi)法讀懂。

上一篇文章告訴我們,這樣基于文法的解釋是合情合理的,但是在實(shí)際應(yīng)用上卻邁不開(kāi)步子、走不出實(shí)驗(yàn)室。要解釋這三個(gè)句子的情況,終究還是要依靠統(tǒng)計(jì)的方法。

我們把這三個(gè)句子分別記作 S_1,S_2,S_3,用 P(S_k)表示三個(gè)句子在人類交流中出現(xiàn)的概率(可能性)。于是事情就變得簡(jiǎn)單起來(lái):P(S_k)越大,說(shuō)明句子出現(xiàn)在人類交流中的概率越大;換言之,這個(gè)句子越符合人類交流的習(xí)慣(特別是文法規(guī)則),因此也就容易讀懂。就實(shí)際情況來(lái)說(shuō),
P(S_1)\approx10^{-20}\\ P(S_2)\approx10^{-25}\\ P(S_3)\approx10^{-70}

亦即,第一個(gè)句子出現(xiàn)的概率是第二個(gè)句子的一萬(wàn)倍,是第三個(gè)句子的 10^{50}倍。我已經(jīng)不想去數(shù) 10^{50} 這個(gè)數(shù)字寫(xiě)作中文后會(huì)有多少個(gè)「億」字了。

統(tǒng)計(jì)語(yǔ)言的描述

上一小節(jié)我們看到根據(jù)句子的概率判斷句子合理性效果是十分顯著的。為了能將這個(gè)方法用于實(shí)際,我們必須解決概率的計(jì)算問(wèn)題。

假定 S 是一個(gè)有意義的句子,它由一串排序確定的詞組成,即
S_1=w_1,w_2,w_3,...,w_n
這里每個(gè)w_k表示一個(gè)詞語(yǔ),n 是句子包含詞語(yǔ)的數(shù)量,即句子的長(zhǎng)度。

顯而易見(jiàn),把S 放在從古至今所有的語(yǔ)境里去檢查概率是不可行的,因此我們需要做一個(gè)模型來(lái)估算。我們把 P(S) 展開(kāi),得到
P(S)=P(w_1,w_2,...,w_n)            (1)

考慮到 w_1,w_2,...,w_n 是有特定順序的。因此,記 m=n-1,則 (1) 可以展開(kāi)成 (2)中的條件概率形式。
P(S)=P(w_1,w_2,...,w_n)                              \\=P(w_1)·P(w_2|w_1)·P(w_3|w_1,w_2)·····P(w_n|w_1,w_2,...,w_m)     (2)

其中 P(w_k|w_1,w_2,...,w_i),(i=k-1) 表示 w_k接在序列 w_1,w_2,...,w_i之后的條件概率。不難看出,w_k的概率,取決于它本身在整個(gè)語(yǔ)言中出現(xiàn)的概率,以及它前面 i=k-1個(gè)詞順序出現(xiàn)的概率。

學(xué)過(guò)概率論的讀者應(yīng)該知道,計(jì)算三元的條件概率(即計(jì)算類似 P(w_3|w_1,w_2)已經(jīng)很困難了,更別說(shuō)計(jì)算整個(gè)句子最后一個(gè)詞的條件概率。因此,我們需要對(duì)模型進(jìn)行簡(jiǎn)化。

數(shù)學(xué)專業(yè)的讀者可能會(huì)發(fā)現(xiàn),這樣的條件概率,實(shí)際上是一個(gè)隨機(jī)過(guò)程的概率。在隨機(jī)過(guò)程中,為了簡(jiǎn)化分析,對(duì)此類過(guò)程有一個(gè)馬爾科夫假設(shè)(Markov Hypothesis),即假設(shè) w_k的概率只和 w_i(i=k-1)有關(guān)。即假設(shè)P(w_k|w_1,w_2,...,w_i)=P(w_k|w_i),(i=k-1)
這樣一來(lái),我們就有
P(S)=P(w_1,w_2,...,w_n)                         \\=P(w_1)·P(w_2|w_1)·P(w_3|w_1,w_2)·····P(w_n|w_1,w_2,...,w_m)(3) \\=P(w_1)·P(w_2|w_1)·P(w_3|w_1,w_2)·····P(w_n|w_1,w_2,...,w_m)

(3) 即是二元統(tǒng)計(jì)語(yǔ)言模型(Bigram Model)。在形式上,二元模型是非常簡(jiǎn)潔優(yōu)雅的,這正符合了我們之前對(duì)模型形式的預(yù)期。

條件概率的估算

模型已經(jīng)構(gòu)建完畢,接下來(lái)需要考慮如何解模,而核心問(wèn)題就是如何估算條件概率 P(w_k|w_i),(i=k-1)。根據(jù)條件概率的定義

P(w_k|w_i)=\frac{P(w_i,w_k)}{P(w_i)},(i=k-1)

我們只需要在語(yǔ)料庫(kù)(Corpus)中統(tǒng)計(jì)w_i,w_kw_i 出現(xiàn)的次數(shù),再除以語(yǔ)料庫(kù)的體積,就能算出 w_i,w_kw_i的頻率。如果語(yǔ)料庫(kù)足夠大,我們就有大數(shù)定律作支撐,得到

P(w_k|w_i)=\frac{\langle w_i,w_k \rangle / \langle Corpus \rangle}{\langle w_i \rangle /\langle Corpus \rangle}=\frac{\langle w_i,w_k \rangle}{\langle w_i \rangle}    (4)

(4) 給出了計(jì)算二元條件概率的一般方法,其中\langle w_i \rangle 表示w_i在語(yǔ)料庫(kù)中出現(xiàn)的次數(shù)。

至此,二元統(tǒng)計(jì)語(yǔ)言模型已經(jīng)構(gòu)建完畢,基本原理也已介紹完畢。數(shù)學(xué)在此展現(xiàn)了非凡的簡(jiǎn)潔和優(yōu)雅,同時(shí)帶給了我們極高的效率。當(dāng)然,這個(gè)模型還很粗糙,要想讓二元模型走出實(shí)驗(yàn)室,走向?qū)嶋H應(yīng)用,還有很多細(xì)節(jié)需要討論。接下來(lái)的討論會(huì)有一些枯燥乏味,不過(guò)對(duì)數(shù)學(xué)細(xì)節(jié)不感興趣的讀者可以略過(guò)數(shù)學(xué)推導(dǎo),把注意力放在模型的原理之上。

統(tǒng)計(jì)語(yǔ)言模型用于分詞的細(xì)節(jié)討論

二元模型的擴(kuò)展

馬爾科夫假設(shè)將當(dāng)前詞語(yǔ)的概率限定只與之前一個(gè)詞有關(guān)。這樣的假設(shè)能在很大程度上降低計(jì)算的復(fù)雜性,但是卻和實(shí)際生活的情況相差甚遠(yuǎn)。比如

  • 小明的鉛筆

在這里「鉛筆」之前的詞是結(jié)構(gòu)助詞「的」。考慮到結(jié)構(gòu)助詞「的」的后面幾乎可以出現(xiàn)任何名詞,如果我們約定「鉛筆」出現(xiàn)的概率只和「的」有關(guān),那顯然是不合理的。

為了解決這個(gè)問(wèn)題,比較顯然的辦法是對(duì)馬爾科夫假設(shè)做擴(kuò)展。即,從假設(shè)當(dāng)前詞只與之前的一個(gè)詞有關(guān),擴(kuò)展到與之前的 p個(gè)詞有關(guān)。也就是將模型從二元模型擴(kuò)展到 p-元模型。很顯然,p的值越大,模型越接近真實(shí)情況;同時(shí),計(jì)算量和計(jì)算的復(fù)雜度以及耗費(fèi)的算力都會(huì)大大提升。因此,在實(shí)際使用中,需要在真實(shí)性和計(jì)算量之間取一個(gè)平衡點(diǎn),互相取舍。

經(jīng)過(guò)前人的大量實(shí)驗(yàn),當(dāng) p=3時(shí),模型的效果比較好,算力要求也在容忍范圍之內(nèi)。當(dāng) p 的取值從 3增加到4 的時(shí)候,效果的增長(zhǎng)不太明顯,算力的要求卻大大增加。因此,在實(shí)際使用過(guò)程中,大都是三元模型;對(duì)準(zhǔn)確性要求高,且不差錢(qián)的時(shí)候,一般會(huì)選擇使用四元模型。

統(tǒng)計(jì)語(yǔ)言模型的局限性

統(tǒng)計(jì)語(yǔ)言模型的主要思想是通過(guò)統(tǒng)計(jì)人類的語(yǔ)言習(xí)慣,代替文法分析,判斷某個(gè)句子的「合理性」(這個(gè)合理性通過(guò)概率的大小來(lái)量化)。

統(tǒng)計(jì)語(yǔ)言模型的局限性一個(gè)主要的方面來(lái)自計(jì)算機(jī)算力和容量的限制。這一點(diǎn)上一小節(jié)已經(jīng)討論過(guò)了。

另一方面,也有一些人為創(chuàng)造的歧義句子。這類句子,讓真實(shí)的人類來(lái)閱讀,也是可以有多種理解的;因此,統(tǒng)計(jì)語(yǔ)言模型也就不可能完美處理這類句子。比如

  • 有小便宜 得大解脫

這是李淡愚先生妙筆生花,將污濁之地「凈化」成「道場(chǎng)」的俗聯(lián)。根據(jù)句讀不同(還有多音字),可以理解出不同的意思。

  1. 有 | 小便(pian)宜,得(de) | 大解脫。
  2. 有小便(bian) | 宜,得(dei)大解 | 脫。

兩種斷句都有道理,都可以理解出通順的意思。好在這類句子在生活中并不常見(jiàn),對(duì)統(tǒng)計(jì)語(yǔ)言模型影響甚小。

統(tǒng)計(jì)語(yǔ)言模型的訓(xùn)練問(wèn)題

根據(jù)之前的分析,我們知道,在統(tǒng)計(jì)語(yǔ)言模型正式工作之前,需要用一個(gè)足夠大的語(yǔ)料庫(kù)進(jìn)行訓(xùn)練。訓(xùn)練的目的就是得到各個(gè) \langle w_k \rangle\langle w_i,w_k \rangle的值備用。

但是,在實(shí)際運(yùn)用過(guò)程中,還需要解決一個(gè)棘手的問(wèn)題。我們考慮以下問(wèn)題:

如果 w_i,w_k 是一個(gè)極其罕見(jiàn)的詞組,它在實(shí)際生活中可能遇到,但是并未包含在語(yǔ)料庫(kù)中。根據(jù) (4),我們會(huì)認(rèn)為 P(w_k|w_i)=0。再根據(jù) (3),P(w_k|w_i)=0會(huì)導(dǎo)致整個(gè) P(S)=0 。在這種情況下,語(yǔ)料庫(kù)不夠大導(dǎo)致了模型失真,而語(yǔ)料庫(kù)的不足是一個(gè)無(wú)法解決的問(wèn)題。所以我們必須接受模型在某些情況下可能失真,并找出辦法消除(或者至少是減弱)這種失真給模型帶來(lái)的影響。

在實(shí)際動(dòng)手之前,我們先來(lái)分析一下實(shí)際情況,搞清楚我們到底要修復(fù)什么。

問(wèn)題的根源在于語(yǔ)料庫(kù)不夠大,不足以反映真實(shí)語(yǔ)境的具體情況。而罕見(jiàn)詞語(yǔ)未在語(yǔ)料庫(kù)中出現(xiàn),導(dǎo)致整句話的概率為零,這樣的失真現(xiàn)象,只不過(guò)是語(yǔ)料庫(kù)不夠大的一個(gè)表現(xiàn)而已。那么,很自然地,我們需要思考一下,語(yǔ)料庫(kù)不夠大,只是會(huì)導(dǎo)致這一種失真的情況嗎?如果我們只對(duì)未出現(xiàn)在語(yǔ)料庫(kù)中的罕見(jiàn)詞語(yǔ)進(jìn)行適當(dāng)?shù)奶幚?,而忽略了其他可能的失真情況,那么模型依舊不夠好。

所謂「未出現(xiàn)」,其實(shí)是「出現(xiàn)次數(shù)為 0」的另一種表達(dá)方式。我們現(xiàn)在對(duì)出現(xiàn)次數(shù)為 0 的那些詞語(yǔ)產(chǎn)生了懷疑,懷疑語(yǔ)料庫(kù)是否能夠真實(shí)反映這部分詞語(yǔ)的情況;那么我們很自然地會(huì)懷疑那些出現(xiàn)次數(shù)為 1 甚至為 2 的詞語(yǔ):由于語(yǔ)料庫(kù)不夠大,這些詞語(yǔ)在語(yǔ)料庫(kù)中的出現(xiàn)次數(shù),是否足以反映它們?cè)谡鎸?shí)語(yǔ)境中出現(xiàn)的頻率呢?

于是我們發(fā)現(xiàn),我們對(duì)出現(xiàn)次數(shù)較少的那些詞語(yǔ)產(chǎn)生了一定的懷疑。特別地,出現(xiàn)次數(shù)越少,我們懷疑它的程度就越高。這樣一來(lái),我們的修復(fù)方案必須滿足一些要求:

  1. 對(duì)出現(xiàn)次數(shù)為 0 的那些詞語(yǔ),我們應(yīng)該賦予它們一個(gè)不為零但非常小的概率;
  2. 對(duì)于出現(xiàn)次數(shù)較少的那些詞語(yǔ),我們應(yīng)該對(duì)它們的統(tǒng)計(jì)結(jié)果做適當(dāng)?shù)恼鬯?,出現(xiàn)的次數(shù)越少,可疑程度越大,因此折算程度也應(yīng)該越大。

現(xiàn)在我們假設(shè),語(yǔ)料庫(kù)中共有N個(gè)詞語(yǔ),在語(yǔ)料庫(kù)中有 N_r 個(gè)詞語(yǔ)出現(xiàn)了 r 次。特別地,有N_0 個(gè)詞語(yǔ)出現(xiàn)了 0 次。顯然我們有:
N=\sum_{r=0}^{\infty}r·N_r
此外,一般來(lái)說(shuō),我們有:
revise(r)=N_{r+1}/N_r<1

即出現(xiàn) k次的詞語(yǔ)的數(shù)量,一般來(lái)說(shuō)會(huì)比出現(xiàn) k+1 次詞語(yǔ)的數(shù)量要多。并且 k越小,revise(r) 越大。于是我們可以這樣定義
d_r=(r+1)·revise(r)           (5)

如果我們將d_r 作為折算后的頻次,那么顯然有:
N=\sum_{r=0}^{\infty}d_r·N_r

即,這樣的折算依然滿足全概率為 1。注意到,d_0 是一個(gè)大于零的值;而且隨著 r 的增大,revise(r) 會(huì)減小,也就是說(shuō)折算的比例會(huì)減小。這些特性正符合我們對(duì)折算規(guī)則的預(yù)期要求。

盡管這樣的折算方案符合我們的預(yù)期要求,但它有點(diǎn)過(guò)于粗暴了。實(shí)際上,通常我們會(huì)認(rèn)為,在語(yǔ)料庫(kù)中出現(xiàn)頻次大于某一個(gè)閾值 T 的詞不需要進(jìn)行折算。而 (5)則囫圇地修改了所有詞的頻次。對(duì)于 P(w_k)來(lái)說(shuō),這樣粗暴的折算問(wèn)題不太大,但是對(duì)于條件概率 P(w_k|w_i),(i=k-1) 來(lái)說(shuō),不考慮閾值 T地這樣囫圇地折算,誤差就比較大了。

基于這樣的分析,我們對(duì)于二元條件概率的折算修正如下:

P(w_k|w_i)=\begin{cases} \frac{\langle w_i,w_k \rangle}{\langle w_i \rangle} & if \langle w_i,w_k \rangle>T \\ d_r·\frac{\langle w_i,w_k \rangle}{\langle w_i \rangle} & if 0 < \langle w_i,w_k \rangle \le T    (6)\\ Q(w_i)·\frac{\langle w_k \rangle}{\langle Corpus \rangle} & otherwise \\ \end{cases}

這里,r= \langle w_i,w_k \rangled_r 是據(jù) (5)計(jì)算出的值。Q(w_i) 是一個(gè)修正函數(shù),其定義為:
A=\sum_{w_k\in Corpus}P(w_k|w_i),\\ B=\sum_{w_k\notin Corpus}P(w_k),\\ Q(w_i)=\frac{1-A}{B}

至此,二元統(tǒng)計(jì)語(yǔ)言模型的修正就結(jié)束了。

語(yǔ)料庫(kù)的選取

上一小節(jié)我們修正了當(dāng)出現(xiàn)頻次很低時(shí),統(tǒng)計(jì)結(jié)果不準(zhǔn)確,導(dǎo)致的模型失真的問(wèn)題。這一小節(jié)我們討論可能導(dǎo)致模型不準(zhǔn)確的另一個(gè)方向的問(wèn)題。

仔細(xì)觀察 (4)你會(huì)發(fā)現(xiàn),模型計(jì)算語(yǔ)句 S 的概率,是依據(jù)語(yǔ)料庫(kù)中各個(gè)詞匯出現(xiàn)的頻次的。也就是說(shuō),最終的計(jì)算結(jié)果 P(S) 是和語(yǔ)料庫(kù)緊密相關(guān)的。

眾所周知,中國(guó)有很多所謂的「網(wǎng)絡(luò)流行語(yǔ)」。在網(wǎng)絡(luò)上發(fā)帖交流的網(wǎng)友,他們的說(shuō)話習(xí)慣和正式的新聞稿的語(yǔ)言習(xí)慣是有很大差別的。如果我們以新聞稿件為語(yǔ)料庫(kù)去訓(xùn)練模型,然后用于網(wǎng)絡(luò)語(yǔ)言的分詞,那么效果顯然不會(huì)太好。而如果用網(wǎng)絡(luò)語(yǔ)言作為語(yǔ)料庫(kù),雖然其中可能包括一些雜七雜八的奇怪單詞,但是由于語(yǔ)料庫(kù)與實(shí)際使用的類型一致,效果反而會(huì)更好。

分詞一致性與顆粒度

我們回到最初的分析方法,先來(lái)看兩個(gè)詞:

  • 清華大學(xué)
  • 山東大學(xué)

這是兩個(gè)大學(xué)的名字。在這里,對(duì)山東大學(xué)的分詞不會(huì)有什么分歧,它就是一個(gè)詞,不可分割。但是對(duì)清華大學(xué)的分詞就存在分歧了。有的人認(rèn)為清華大學(xué)是密不可分的,也有人認(rèn)為清華和大學(xué)應(yīng)該分開(kāi):清華作為修飾部分修飾大學(xué)二字。

這實(shí)際上是人們對(duì)于詞語(yǔ)顆粒度大小認(rèn)知不同導(dǎo)致的分詞不一致。對(duì)清華大學(xué)的兩種分詞方法都不能說(shuō)錯(cuò),關(guān)鍵是要看語(yǔ)言的使用場(chǎng)合。

在平時(shí)寫(xiě)文章的時(shí)候,沒(méi)有必要把清華和大學(xué)分開(kāi),它們就是一個(gè)詞。但是在做搜索引擎的時(shí)候,就有必要把分詞的顆粒度調(diào)整一下,變得小一些,認(rèn)為清華和大學(xué)是兩個(gè)詞。畢竟,如果用戶搜索「清華」而無(wú)法獲得和清華大學(xué)有關(guān)的結(jié)果,這樣的搜索引擎顯然是不合格的。

這樣的分析對(duì)我們是有啟發(fā)的。我們沒(méi)有必要糾結(jié)哪一種分詞顆粒度更好,實(shí)際情況告訴我們,在某些時(shí)候大顆粒度更好,某些時(shí)候小顆粒度更好。

那么,是否有必要為不同的顆粒度搭建不同的模型呢?答案是否定的。實(shí)際上,不管是大顆粒度的分詞,還是小顆粒度的分詞,模型方法都是一樣的,差別只在于對(duì)詞語(yǔ)的認(rèn)知問(wèn)題。如果站在模型的角度上去考慮:模型是不了解詞匯的含義的,具體應(yīng)該用何種顆粒度去構(gòu)建分詞,只取決于語(yǔ)料庫(kù)中對(duì)詞語(yǔ)的劃分。

因此,解決方案呼之欲出:
我們不需要設(shè)計(jì)兩套模型,只需要一套模型就可以完成工作。我們需要做的,是對(duì)「清華大學(xué)」這類復(fù)合詞做一個(gè)統(tǒng)計(jì),做成兩個(gè)詞表L_1L_2。其中 L_1包含小顆粒度的分詞結(jié)果,比如「清華」和「大學(xué)」;L_2 包含顆粒度較大的分詞結(jié)果,比如「清華大學(xué)」。在實(shí)際使用的過(guò)程中,根據(jù)需求,分別將 L_1 或者 L_2與語(yǔ)料庫(kù)合并,交由模型去訓(xùn)練就好了。

小結(jié)

這篇文章接著第一篇文章,討論了統(tǒng)計(jì)語(yǔ)言模型,特別是二元模型,在分詞方面的應(yīng)用。這篇文章給出了二元模型的具體描述,以及模型的具體解法。

之后,文章討論了二元模型不可避免的一些困難,同時(shí)對(duì)一些可以修復(fù)的問(wèn)題做了討論。

總的來(lái)說(shuō),運(yùn)用統(tǒng)計(jì)語(yǔ)言模型解決分詞是一個(gè)成熟的方案。實(shí)際運(yùn)用時(shí)效果的好壞,主要取決于以下幾個(gè)方面:

  • 工程實(shí)現(xiàn)的精度;
  • 語(yǔ)料庫(kù)的選??;
  • 復(fù)合詞表的完整度。

本文轉(zhuǎn)載自:https://liam0205.me/2015/07/26/mathematics-theory-of-natural-language-processing-2/

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

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容