使用ChunkLinkCTB生成漢語組塊語料庫

組塊(chunk)簡介

組塊這一概念最早由Steven Abney在Parsing by chunks一文中提出。

CoNLL-2000正式把組塊分析作為共享任務,把組塊定義為:句子是由一些短語構成,而每一個短語內是由句法相關的詞構成,這些短語彼此不重疊、無交集,不含嵌套關系。


國內組塊分析現狀

荷蘭蒂爾堡大學的Sabine Buchholz開發(fā)了機器自動程序Chunklink,對賓州大學英文句法分析樹庫(Upenn English Treebank)進行組塊數據自動抽取,生成出一個大規(guī)模的英語組塊語料庫,為英語組塊分析方法提供了一個統一的訓練和測試語料庫。

國內學者仿照英文組塊的概念,提出對漢語進行組塊分析。目前,對于漢語組塊的研究并不完備,還沒有一個對漢語組塊的標準定義,也沒有統一的訓練和測試語料庫。研究者根據自己的研究目的提出了各自的組塊定義,并各自生成了自己的漢語組塊語料庫。這些語料庫大多不公開,無法獲取。


獲取漢語組塊語料庫

我的畢業(yè)設計題目是《基于深度學習的漢語組塊分析研究》。為此我查閱資料,發(fā)現了一種獲取漢語組塊語料庫的方法。

1、CTB(賓州中文樹庫)簡介及獲取方法

首先需要獲取CTB(賓州中文樹庫)。

CTB建設開始于1998年,目的是為了建立一個具有句法標記的中文句法語料庫。該樹庫是經過自動分詞、詞性標注和句法標注的精加工文本,為從中抽取組塊提供了方便。對于該語料的切分、詞性標注和句法標注都形成了一個完整的規(guī)范。語料庫中每一個語句都形成了一個以詞語為葉子節(jié)點,以整句為根的樹狀圖。

CTB是收費的,并且在不斷更新。幾個老版本的獲取地址:

CTB2.0:Chinese Treebank 2.0 - Linguistic Data Consortium

CTB4.0:Chinese Treebank 4.0 - Linguistic Data Consortium

CTB5.0:Chinese Treebank 5.0 - Linguistic Data Consortium

CTB6.0:Chinese Treebank 6.0 - Linguistic Data Consortium

我使用的是CTB7.0,是從研究組學長那里要到的。

data中包括bracketed(句法標注)、postagged(POS詞性標注)、segmented(分詞)、raw四個文件夾。

CTB7.0_data

bracketed包含文件:

chtb_0001.nw~chtb_0325.nw(.nw代表來源于newswire)

chtb_0400.nw~chtb_0454.nw

chtb_0500.nw~chtb_0554.nw

chtb_0590.nw~chtb_0596.nw

chtb_0600.nw~chtb_0885.nw

chtb_0900.nw~chtb_0931.nw

chtb_1001.mz~chtb_1078.mz(.mz代表來源于magazine articles)

chtb_1100.mz~chtb_1151.mz

chtb_2000.bn~chtb_3145.bn(.bn代表來源于broadcast news)

chtb_4000.nw~chtb_4050.nw

chtb_4051.bn~chtb_4111.bn

chtb_4112.bc~chtb_4197.bc(.bc代表來源于broadcast conversations)

chtb_4198.wb~chtb_4411.wb(.wb代表來源于weblogs)

2、使用ChunkLinkCTB處理CTB

ChunkLinkCTB是從CTB中抽取漢語組塊的工具,運行在Perl環(huán)境下,由Wenliang Chen, Yujie Zhang, Hitoshi Isahara開發(fā)。他們定義了12種組塊類型,具體見文獻An Empirical Study of Chinese Chunking。他們使用該工具構建漢語組塊語料庫,并進行了漢語組塊識別研究。

ChunkLinkCTB下載地址:GitHub - rainarch/ChunkLinkCTB: A tool for extracting chunks from Penn Chinese Treebank

安裝Perl環(huán)境

ChunkLinkCTB運行在Perl環(huán)境下,所以我們需要先安裝Perl。

Perl下載地址:Perl Download - www.perl.org

我選擇的是Windows10環(huán)境下StrawBerry版本,按照安裝程序步驟直接下一步即可(可以改變安裝路徑,但貌似只能安裝在每個盤的根目錄下。我選擇D:\Program\StrawBerry報錯,直接選擇D:\StrawBerry就可以了......我也不知道為什么)。

安裝完成后在cmd中輸入perl -v,產生如圖輸出則安裝成功。

使用ChunkLinkCTB

首先打開cmd,進入需要提取的CTB文件所在的路徑(我將chtb_0001.nw直接放到了E:/,所以下面截圖中的路徑都是E:/)。

輸入perl chunklinkctb.pl,會提示操作命令:

操作命令

隨意輸入一個命令,會報錯:Can't locate getopts.pl in @INC


錯誤提示

這是由于perl從5.16開始,移除了getopts.pl。我們需要做的是安裝Perl4::CoreLibs這個模塊。

可以使用cpan來安裝。在cmd輸入cpan,進入cpan環(huán)境:

進入cpan環(huán)境

輸入install Perl4::CoreLibs,cpan就會開始自動安裝Perl4::CoreLibs這個模塊了。

安裝Perl4::CoreLibs

安裝完成后,輸入exit退出cpan。

退出cpan

輸入perl chunklinkctb.pl -fhHct chtb_0001.nw > tree.chunk,意思是將句法樹文件chtb_0001.nw提取為組塊文件tree.chunk。

將句法樹文件chtb_0001.nw提取為組塊文件tree.chunk

得到組塊語料的內容:

tree.chunk

每一列分別是:文章id ?? 句子id ?? 詞id ?? IOB組塊標注 ?? POS詞性標注 ?? 詞

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容