首先,我最近開(kāi)始學(xué)感知器算法來(lái)進(jìn)行中文詞性標(biāo)注,英文詞性標(biāo)注等一系列任務(wù),是看了這篇文章:《200行代碼實(shí)現(xiàn)英文詞性標(biāo)注》以及其他講感知器算法的文章的啟示?,F(xiàn)在我大致讀懂了這篇文章并實(shí)現(xiàn)了他的算法。
但是,我對(duì)于《200行代碼實(shí)現(xiàn)英文詞性標(biāo)注》這篇文章有一點(diǎn)要說(shuō)明: 他的正確率97%是在訓(xùn)練集上,測(cè)試集上正確率只有65%!
我并沒(méi)有貶低他的意思,事實(shí)上用區(qū)區(qū)200行(事實(shí)上他用了300行)代碼實(shí)現(xiàn)一個(gè)感知器是一個(gè)優(yōu)美的工作,而且他的解釋很好,的確帶我入了門(mén)。但是我覺(jué)得把訓(xùn)練集上的準(zhǔn)確率和別人測(cè)試集上的準(zhǔn)確率比較是很不妥當(dāng)?shù)模視?huì)誤導(dǎo)初學(xué)者。所以,這篇文章的算法是只能幫助你入門(mén)的簡(jiǎn)單算法,并不是什么靈丹妙藥能直接擊敗其他復(fù)雜的算法。
數(shù)據(jù)集是文章附帶的華爾街語(yǔ)料WSJ的部分,這個(gè)數(shù)據(jù)集比較難,因?yàn)樵~性標(biāo)注地太細(xì)了,而且標(biāo)注我不是很看的懂他的意思。
我覺(jué)得英文有詞形式變化應(yīng)該比中文好標(biāo)注吧。事實(shí)上人民日?qǐng)?bào)的語(yǔ)料標(biāo)注粒度小,而且數(shù)據(jù)比較大。我找到了一個(gè)比較小的華爾街日?qǐng)?bào)數(shù)據(jù)集,還標(biāo)注地很細(xì),所以同樣是感知器算法,前者能上90,后者只有68左右。
與簡(jiǎn)單感知器實(shí)現(xiàn)中文詞性標(biāo)注幾乎一模一樣,不同的是英文由于多了詞形式變化的特征,抽的特征會(huì)更加多樣。
英文相比中文多了詞形式變化,所以可以抽特征多了前綴后綴,PRefix,suffix等。
因?yàn)槲沂歉鶕?jù)那篇文章來(lái)的,所以效果和他差不多。 他在測(cè)試集上是0.65,我是0.68。 在訓(xùn)練集上我們有幾乎有0.97或者0.98(但這個(gè)意義不大)。
感知器算法在正確率收斂附近可能會(huì)產(chǎn)生波動(dòng)甚至一直震蕩,進(jìn)而是穩(wěn)定性不佳,而且可能會(huì)影響模型最終表現(xiàn)。對(duì)此產(chǎn)生了平均感知器的算法。
文章中的代碼直接對(duì)每一輪迭代模型求平均,這樣做的缺點(diǎn)是收斂會(huì)很慢。
所以我們可以到一定階段,比如兩輪迭代測(cè)試集上的正確率相差不大時(shí)候開(kāi)始平均下面每一輪迭代的模型權(quán)重,或者動(dòng)態(tài)調(diào)整步長(zhǎng)之類(lèi)的。屬于一個(gè)感知器的小trick。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注