亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

中文維基百科文本數(shù)據(jù)獲取與預(yù)處理

loostudy / 2127人閱讀

摘要:下載數(shù)據(jù)方法使用官方的數(shù)據(jù)最新打包的中文文檔下載地址是。中文維基數(shù)據(jù)繁簡混雜大家都說存在這個問題,但的網(wǎng)站是將繁體中文和簡體中文分開處理的,所以一直覺得從數(shù)據(jù)庫到結(jié)構(gòu)都應(yīng)有方法將兩者區(qū)分開,暫罷,待有空研究其數(shù)據(jù)時再議。

照例,先講下環(huán)境,Mac OSX 10.11.2 ,Python 3.4.3。

下載數(shù)據(jù)

方法1:使用官方dump的xml數(shù)據(jù)

最新打包的中文文檔下載地址是:https://dumps.wikimedia.org/zhwiki/latest/zhwiki-latest-pages-articles.xml.bz2 。

方法2:也是官方,結(jié)構(gòu)化數(shù)據(jù)(json)

下載地址是:https://dumps.wikimedia.org/wikidatawiki/entities/ 。目前尚未測試使用此數(shù)據(jù),不多作介紹。但數(shù)據(jù)模型和已有的工具都可以在wikidata的站點上找到。

解壓與轉(zhuǎn)存

我使用方法1,下載后需要對該xml文件的壓縮包作處理,所幸gensim的WikiCorpus已經(jīng)預(yù)置了部分處理。幾行關(guān)鍵的python代碼如下:

input_file = "zhwiki-latest-pages-articles.xml.bz2"
wiki = WikiCorpus(input_file, lemmatize=False, dictionary={})
    for text in wiki.get_texts():
        str_line = bytes.join(b" ", text).decode()
        #以下可以存入文件或數(shù)據(jù)庫

更詳細的關(guān)于WikiCorpus的介紹可以看這里。

在上面的代碼中,補下自己的漏,python3里,str和bytes是兩個不同的東西,有點類似python2中的str和unicode。下面是str和bytes的相互轉(zhuǎn)換方法:

# str轉(zhuǎn)bytes
data = ""  #string
data = "".encode()  #bytes
data = b""  #bytes

# bytes轉(zhuǎn)str
data = b""  #bytes
data = b"".decode()  #string
data = str(b"")  #string

除了用gensim,還有個哥們寫了一個wikiextractor工具來處理wiki的dump數(shù)據(jù),若感興趣可拿來參考,詳見github地址。

根據(jù)我的數(shù)據(jù),1.17G的原始數(shù)據(jù)處理所得的文本文件845M,246497篇文章(這個數(shù)字隨時間往后是越來越大)。

繁簡轉(zhuǎn)換

這是個糟糕的話題,占這么大篇幅真得感嘆中華崛起之重要。中文維基數(shù)據(jù)繁簡混雜——大家都說存在這個問題,但wikipedia的網(wǎng)站是將繁體中文和簡體中文分開處理的,所以一直覺得從數(shù)據(jù)庫到dump結(jié)構(gòu)都應(yīng)有方法將兩者區(qū)分開,暫罷,待有空研究其數(shù)據(jù)時再議。關(guān)于繁簡轉(zhuǎn)換,來斯惟和52nlp的博文都用到了一個繁簡轉(zhuǎn)換工具——OpenCC,關(guān)于此,引官方介紹如下:

Open Chinese Convert(OpenCC)是一個中文簡繁轉(zhuǎn)換開源項目,提供高質(zhì)量的簡繁轉(zhuǎn)換詞庫和可供調(diào)用的函數(shù)庫(libopencc)。還提供命令行簡繁轉(zhuǎn)換工具,人工校對工具,詞典生成程序,以及圖形用戶界面。

這里使用的是命令行工具。至于安裝方法,可以看Google Code上的項目頁面。如在Mac下,直接:

brew install opencc

將繁體轉(zhuǎn)為簡體的命令如下:

opencc -i wiki_zh.text -o wiki_zhs.text -c zht2zhs_config.json
那個json是什么鬼?OpenCC的配置文件,現(xiàn)在已支持json寫法,如下:

{
  "name": "Traditional Chinese to Simplified Chinese",
  "segmentation": {
    "type": "mmseg",
    "dict": {
      "type": "ocd",
      "file": "TSPhrases.ocd"
    }
  },
  "conversion_chain": [{
    "dict": {
      "type": "group",
      "dicts": [{
        "type": "ocd",
        "file": "TSPhrases.ocd"
      }, {
        "type": "ocd",
        "file": "TSCharacters.ocd"
      }]
    }
  }]
}
中文分詞

OK,這是個大話題,有很多選擇,網(wǎng)上有不少推薦結(jié)巴分詞,其實是挺不錯的。但這里使用哈工大的LTP,github地址,篇幅原因暫時不詳細介紹這個了,只講我認為的三點:

計算語言學(xué)的基本任務(wù),解釋地比較透徹,無論是代碼還是文檔。

配套論文產(chǎn)量和質(zhì)量都不錯。

良心的python封裝。

盡管,國內(nèi)大學(xué)中不乏類似工作,清華、復(fù)旦等也做了不少。

LTP目前我使用release里的3.3.2,模型文件使用3.3.1,python封裝使用0.1.9。由于是Mac下使用源文件編譯,所以由于OSX編譯器類型變遷,pyltp 0.1.9的setup.py中一定要記得修改這行:

extra_compile_args += ["-std=c++11", "-Wno-c++11-narrowing","-mmacosx-version-min=10.8","-stdlib=libc++"]

其重點是-mmacosx-version-min這個參數(shù)。當然,根據(jù)issue記錄,25天前這個問題已修復(fù)且合并進mater分支。所以據(jù)拍腦袋估計,git源碼安裝也是可行:

$ git clone https://github.com/HIT-SCIR/pyltp
$ git submodule init
$ git submodule update
$ python setup.py install

具體分詞的寫法就比較簡單了,例子如下:

# -*- coding: utf-8 -*-
from pyltp import Segmentor
segmentor = Segmentor()
segmentor.load("/path/to/your/cws/model")
words = segmentor.segment("這句句子要分詞")
print "|".join(words)
segmentor.release()

找一篇語料對比下分詞前后,分詞前:

巨蟹座 是一顆環(huán)繞巨蟹座 a運轉(zhuǎn)的系外行星 軌道周期為 地球日 它是距離其中央恒星第三近的行星 其質(zhì)量接近于土星 該行星于 日被發(fā)現(xiàn) 發(fā)現(xiàn)
和大多數(shù)系外行星一樣 而之前 巨蟹座 該恒星仍然會出現(xiàn)視向速度位移 進一步的探測發(fā)現(xiàn)在距中央恒星 但是即使摒除了這兩顆行星的影響
中央恒星仍然存在周期為 地球日的擾動現(xiàn)象 由于該周期接近于巨蟹座 a的自轉(zhuǎn)周期 盡管如此 在同一份報告中 科學(xué)家宣布發(fā)現(xiàn)了巨蟹座 d和巨蟹座
對其中央恒星進行的長達 而且視向速度位移的幅度較大 無法為巨蟹座 a不大活躍的光球?qū)踊顒铀忉?軌道和質(zhì)量 在巨蟹座 行星系統(tǒng)中
迄今為止已經(jīng)發(fā)現(xiàn)了 顆行星 顆行星中 巨蟹座 c的軌道屬于輕度偏心軌道 其遠拱點較之近拱點遠了 該行星的軌道周期要長于熱木星
但是其軌道與巨蟹座 模擬表明該行星與巨蟹座 的比值 由于視向速度法的局限性 如果此預(yù)測無誤 那么該行星的真實質(zhì)量就為 倍木星質(zhì)量 物理特性
由于科學(xué)家只能間接地探測該行星 所以至今還不知道其半徑 物質(zhì)構(gòu)成和表面溫度 該行星質(zhì)量接近土星 所以它可能屬于類木行星 從而并不擁有固體表面
參考文獻 外部鏈接 extrasolar visions cancri

分詞后:

巨蟹座|是|一|顆|環(huán)繞|巨蟹座|a|運轉(zhuǎn)|的|系|外行星|軌道|周期|為|地球日|它|是|距離|其|中央|恒星|第三|近|的|行星|其|質(zhì)量|接近|于|土星|該|行星|于|日|被|發(fā)現(xiàn)|發(fā)現(xiàn)|和|大多數(shù)|系外|行星|一樣|而|之前|巨蟹座|該|恒星|仍然|會|出現(xiàn)|視|向|速度|位移|進一步|的|探測|發(fā)現(xiàn)|在|距|中央|恒星|但是|即使|摒除|了|這|兩|顆|行星|的|影響|中央|恒星|仍然|存在|周期|為|地球日|的|擾動|現(xiàn)象|由于|該|周期|接近|于|巨蟹座|a|的|自轉(zhuǎn)|周期|盡管|如此|在|同一|份|報告|中|科學(xué)家|宣布|發(fā)現(xiàn)|了|巨蟹座|d|和|巨蟹座|對|其|中央|恒星|進行|的|長|達|而且|視|向|速度|位移|的|幅度|較|大|無法|為|巨蟹座|a|不|大|活躍|的|光球?qū)觸活動|所|解釋|軌道|和|質(zhì)量|在|巨蟹座|行星|系統(tǒng)|中|迄今為止|已經(jīng)|發(fā)現(xiàn)|了|顆|行星|顆|行星|中|巨蟹座|c|的|軌道|屬于|輕度|偏心|軌道|其|遠|拱點|較之|近|拱點|遠|了|該|行星|的|軌道|周期|要|長|于|熱|木星|但是|其|軌道|與|巨蟹座|模擬|表明|該行星|與|巨蟹座|的|比值|由于|視|向|速度|法|的|局限性|如果|此|預(yù)測|無誤|那么|該行星|的|真實|質(zhì)量|就|為|倍|木星|質(zhì)量|物理|特性|由于|科學(xué)家|只能|間接|地|探測|該行|星所|以至今|還|不|知道|其|半徑|物質(zhì)|構(gòu)成|和|表面|溫度|該行|星|質(zhì)量|接近|土星|所以|它|可能|屬于|類|木行星|從而|并|不|擁有|固體|表面|參考|文獻|外部|鏈接|extrasolar|visions|cancri

小結(jié)

這篇主要基于網(wǎng)絡(luò)上的資料,重走了一遍數(shù)據(jù)下載到中文分詞的技術(shù)點,并匯總了已知的工具鏈。上述結(jié)果對比維基的原網(wǎng)頁,明顯還存在不少問題,例如語料中的數(shù)字均丟失了,對于其中數(shù)量、年份等信息對于文本理解其實很重要。尚不確定是否是WikiCorpus造成的問題。

下一篇計劃嘗試用此語料做詞嵌入相關(guān)的部分實驗。

To be continued.

原文鏈接:http://qiancy.com/2016/05/08/wiki-text-analysis-prepare/

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/37907.html

相關(guān)文章

  • 前端開發(fā)者手冊2019

    摘要:年,和前端開發(fā)者與應(yīng)用程序前端開發(fā)者之間產(chǎn)生了巨大的分歧。開發(fā)最常見的解決方案有手機和平板的原生應(yīng)用程序桌面應(yīng)用程序桌面應(yīng)用程序原生技術(shù)最后,前端開發(fā)者可以從瀏覽器開發(fā)中學(xué)習(xí)到,編寫代碼不需要考慮瀏覽器引擎的限制。 前端開發(fā)者手冊2019 Cody Lindley 編著 原文地址 本手冊由Frontend Masters贊助,通過深入現(xiàn)代化的前端工程課程來提高你的技能。 下載:PDF ...

    church 評論0 收藏0
  • 前端開發(fā)者手冊2019

    摘要:年,和前端開發(fā)者與應(yīng)用程序前端開發(fā)者之間產(chǎn)生了巨大的分歧。開發(fā)最常見的解決方案有手機和平板的原生應(yīng)用程序桌面應(yīng)用程序桌面應(yīng)用程序原生技術(shù)最后,前端開發(fā)者可以從瀏覽器開發(fā)中學(xué)習(xí)到,編寫代碼不需要考慮瀏覽器引擎的限制。 前端開發(fā)者手冊2019 Cody Lindley 編著 原文地址 本手冊由Frontend Masters贊助,通過深入現(xiàn)代化的前端工程課程來提高你的技能。 下載:PDF ...

    xiao7cn 評論0 收藏0
  • 前端開發(fā)者手冊2019

    摘要:年,和前端開發(fā)者與應(yīng)用程序前端開發(fā)者之間產(chǎn)生了巨大的分歧。開發(fā)最常見的解決方案有手機和平板的原生應(yīng)用程序桌面應(yīng)用程序桌面應(yīng)用程序原生技術(shù)最后,前端開發(fā)者可以從瀏覽器開發(fā)中學(xué)習(xí)到,編寫代碼不需要考慮瀏覽器引擎的限制。 前端開發(fā)者手冊2019 Cody Lindley 編著 原文地址 本手冊由Frontend Masters贊助,通過深入現(xiàn)代化的前端工程課程來提高你的技能。 下載:PDF ...

    鄒立鵬 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<