基于Python的語(yǔ)料庫(kù)數(shù)據(jù)處理(一)
《Python玩語(yǔ)料庫(kù)數(shù)據(jù)》專(zhuān)欄·第1篇
文?| 段洵??
1032字 | 5?分鐘閱讀
【數(shù)據(jù)科學(xué)與人工智能】已開(kāi)通Python語(yǔ)言社群,學(xué)用Python,玩弄數(shù)據(jù),求解問(wèn)題,以創(chuàng)價(jià)值。喜樂(lè)入群者,請(qǐng)加微信號(hào)shushengya360,或掃描文末二維碼,添加為好友,同時(shí)附上Python-入群。有朋自遠(yuǎn)方來(lái),不亦樂(lè)乎,并誠(chéng)邀入群,以達(dá)相互學(xué)習(xí)和進(jìn)步之美好心愿。
一、計(jì)算二元組的共信息值
二元組(Bigram)指的是字符串中兩個(gè)相鄰的單詞組合。比如在字符串“I love Python programming”中有“I love”、“l(fā)ove Python”、“Python programming”三個(gè)二元組。我們可以通過(guò)計(jì)算二元組的共信息值來(lái)判斷該二元組內(nèi)的兩個(gè)單詞的共現(xiàn)是否具有顯著意義。二元組共信息值得計(jì)算公式如下:

其中f(x)為x詞在語(yǔ)料庫(kù)中出現(xiàn)的頻次,f(y)為y詞在語(yǔ)料庫(kù)中出現(xiàn)的頻次,f(x,y)為(x,y)在語(yǔ)料庫(kù)中共現(xiàn)的頻次,N為語(yǔ)料庫(kù)的庫(kù)容。
接下來(lái)舉一個(gè)例子加深理解:假設(shè)二元組(there,are)在某庫(kù)容為1000000詞的語(yǔ)料庫(kù)中共現(xiàn)的頻次為335,there在該語(yǔ)料庫(kù)中的頻次為2844,are在該語(yǔ)料庫(kù)中出現(xiàn)的頻次為4393,試計(jì)算二元組(there,are)的共信息值。

通過(guò)計(jì)算,共信息值約為4.74,說(shuō)明共現(xiàn)意義顯著。
二、計(jì)算二元組的T值
除了計(jì)算共信息值以外,還可以通過(guò)計(jì)算T值來(lái)判斷該二元組內(nèi)兩個(gè)單詞的共現(xiàn)是否具有顯著意義。二元組T值計(jì)算公式為:

其中f(x)為x詞在語(yǔ)料庫(kù)中出現(xiàn)的頻次,f(y)為y詞在語(yǔ)料庫(kù)中出現(xiàn)的頻次,f(x,y)為(x,y)在語(yǔ)料庫(kù)中共現(xiàn)的頻次,N為語(yǔ)料庫(kù)的庫(kù)容。
以上一二元組為例加深理解:假設(shè)二元組(there,are)在某庫(kù)容為1000000詞的語(yǔ)料庫(kù)中共現(xiàn)的頻次為335,there在該語(yǔ)料庫(kù)中的頻次為2844,are在該語(yǔ)料庫(kù)中出現(xiàn)的頻次為4393,試計(jì)算二元組(there,are)的共信息值。

通過(guò)計(jì)算,T約為17.62,說(shuō)明共現(xiàn)意義顯著。
三、頻次轉(zhuǎn)換
接下來(lái)我們來(lái)練習(xí)觀測(cè)頻次(observed frequency)與相對(duì)頻次(relative frequency)或標(biāo)準(zhǔn)化頻次(normalized frequency)的轉(zhuǎn)換。假設(shè)某單詞x在某語(yǔ)料庫(kù)中出現(xiàn)了1538次,那么1538就是該單詞在語(yǔ)料庫(kù)中的觀測(cè)頻次。在匯報(bào)數(shù)據(jù)時(shí),通常匯報(bào)觀測(cè)頻次,但相對(duì)頻次或標(biāo)準(zhǔn)化頻次也可匯報(bào),即某單詞在語(yǔ)料庫(kù)中每1000詞次或10000詞次出現(xiàn)的頻次。假設(shè)某語(yǔ)料庫(kù)的庫(kù)容為2156586詞,求單詞x的相對(duì)頻次或標(biāo)準(zhǔn)化頻次。

通過(guò)計(jì)算,每1000詞次中x的相對(duì)頻次或標(biāo)準(zhǔn)化頻次約為0.71,每10000詞次中x的相對(duì)頻次或標(biāo)準(zhǔn)化頻次約為7.13。
四、結(jié)語(yǔ)
這是基于Python的語(yǔ)料庫(kù)數(shù)據(jù)處理專(zhuān)欄的第一期,以后也會(huì)定期更新。有在研究語(yǔ)料庫(kù)的朋友可以一起來(lái)學(xué)習(xí),使用Python進(jìn)行語(yǔ)料庫(kù)數(shù)據(jù)處理會(huì)更方便、更快捷。
公眾號(hào)推薦
數(shù)據(jù)思踐
數(shù)據(jù)思踐公眾號(hào)記錄和分享數(shù)據(jù)人思考和踐行的內(nèi)容與故事。
Python語(yǔ)言群
誠(chéng)邀您加入
請(qǐng)掃下方二維碼加我為好友,備注Python-入群。有朋自遠(yuǎn)方來(lái),不亦樂(lè)乎,并誠(chéng)邀入群,以達(dá)相互學(xué)習(xí)和進(jìn)步之美好心愿。。
