一種參考文獻格式檢查方法
【專利摘要】本發(fā)明提供一種參考文獻格式檢查方法,包括:步驟1、將參考文獻著錄項格式規(guī)則采用Schema進行表述,其中所述參考文獻著錄項格式中包括以下的至少一個著錄項:責(zé)任者、題名、參考文獻類型、出版者、出版日期、頁碼;步驟2、讀取各條參考文獻,進行著錄項切分;步驟3、識別參考文獻著錄項,并將識別出的著錄項提取成為XML節(jié)點;其中所述著錄項包括以下的至少一種:責(zé)任者、題名、出版地、出版者、出版日期等;同時,判斷該參考文獻著錄項中是否包括文獻類型標志,如果沒有則根據(jù)著錄項添加該參考文獻的文獻類型標志;步驟4、利用所述參考文獻著錄項格式規(guī)則對著錄項進行驗證。
【專利說明】
-種參考文獻格式檢查方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及屬于文本處理技術(shù)領(lǐng)域,特別是指一種參考文獻格式檢查方法。
【背景技術(shù)】
[0002] 在各種論文中都不可避免的要引述在先公開的參考文獻W幫助閱讀者理解論文 的背景知識。一般引述參考文獻時需要提供參考文獻的作者(author)、標題(title)、出版 者(publisher,即該著作在何處公開發(fā)表,)、出版頁碼(publish page)、出版日期(publish year)。但是在會議文集、大型期刊等論文很集中的文件中,每一篇論文都會引述大量參考 文獻,運樣很難保證每一篇論文都W相同的格式引述參考文獻。
[0003] 現(xiàn)有都是依靠審稿人在對論文進行審稿的同時審核格式要求,然后再由編輯再次 審核;但是運種純依靠人工進行審核的方式很難確保不出現(xiàn)遺漏。
【發(fā)明內(nèi)容】
[0004] 針對現(xiàn)有技術(shù)中采用人工審核參考文獻格式的方式很容易出現(xiàn)遺漏,無法確保文 集或期刊中每一篇論文都采用相同的規(guī)則引述參考文獻的問題,本發(fā)明要解決的技術(shù)問題 是提供一種能夠自動對電子版的論文中的參考文獻引述是否符合預(yù)設(shè)規(guī)則進行審核的參 考文獻格式檢查方法和系統(tǒng),確保參考文獻格式的規(guī)范性且提高效率、防止出現(xiàn)遺漏。
[0005] 為了解決上述問題,本發(fā)明實施例提出了一種參考文獻格式檢查方法,包括:
[0006] 步驟1、將參考文獻著錄項格式規(guī)則采用Schema進行表述,其中所述參考文獻著錄 項格式中包括W下的至少一個著錄項:著錄者、題名、參考文獻類型、出版者、出版日期、頁 碼;
[0007] 步驟2、讀取各條參考文獻,進行著錄項切分;
[000引步驟3、識別參考文獻著錄項,并將識別出的著錄項提取成為XML節(jié)點;其中所述著 錄項包括W下的至少一種:責(zé)任者、題名、出版地、出版者、出版日期等;同時,判斷該參考文 獻著錄項中是否包括文獻類型標志,如果沒有則根據(jù)著錄項添加該參考文獻的文獻類型標 志;
[0009] 步驟4、利用所述參考文獻著錄項格式規(guī)則對著錄項進行驗證。
[0010] 其中,所述方法還包括:
[0011] 步驟5、當(dāng)參考文獻著錄項存在錯誤時,對著錄項進行修改;具體包括;
[0012] 當(dāng)錯誤為缺項時,補全著錄項并加上標點符號重組形成格式規(guī)范的參考文獻;
[0013] 當(dāng)錯誤為多項時,刪除該著錄項并加上標點符號重組形成格式規(guī)范的參考文獻;
[0014] 當(dāng)錯誤為錯項時,按照規(guī)范的格式進行修改后加上標點符號重組形成格式規(guī)范的 參考文獻。
[001引其中,所述步驟2包括:
[0016] 步驟21、利用Apache P0I對文檔進行識別W提取參考文獻內(nèi)容;。
[0017] 步驟22、對提取出的參考文獻內(nèi)容進行切分W得到著錄項,包括:
[0018] 對參考文獻中的符號進行識別,W判斷參考文獻中是否包括非半角符號,如果包 括則將其替換為相應(yīng)的半角符號;
[0019] 根據(jù)著錄用符號對著錄項進行切分。
[0020] 其中,所述步驟3包括:利用預(yù)設(shè)的著錄項識別模型對論文文字中所引述的參考文 獻進行識別W提取所述參考文獻的著錄項,其中所述著錄項識別模型為根據(jù)預(yù)設(shè)語料庫進 行學(xué)習(xí)獲得的;具體包括:
[0021] 步驟31、提取語料庫;
[0022] 步驟32、采用預(yù)設(shè)的語料庫,利用肥R算法進行訓(xùn)練W獲得著錄項識別模型;
[0023] 步驟33、判斷參考文獻中是否包括參考文獻類型參數(shù),如果不包括則利用參考文 獻的著錄項判斷所述參考文獻的類型。
[0024] 其中,所述步驟33包括:
[0025] 步驟331:構(gòu)建出著錄項的決策樹;具體包括:
[00%] 通過W下公式計算基尼指數(shù)Gini,賭化tropy,錯誤率化rror):
[0029] Error = l-max{p(i) I i in[l,n]}
[0030] 并計算信息增益Gain和信息增益率GainRate [0031 ] Gain(U, V) =E;nt;ropy(U)-Ent;ropy 化,V))
[0032] GainRate 化,ν) =Gain 化,V)/E;nt;ropy(V)
[0033] W確定決策樹的根節(jié)點和最佳分組變量;
[0034] 步驟332,對數(shù)據(jù)進行預(yù)處理,具體驟包括:對所述參考文獻的著錄項完整性進行 檢查,W將非數(shù)字型、非名稱型的數(shù)據(jù)轉(zhuǎn)化為數(shù)字型、名稱型;查找參考文獻中是否具有缺 少的著錄項,如果有則根據(jù)參考文獻中相關(guān)的著錄項對空缺值進行填充;根據(jù)著錄項的相 關(guān)性,刪除其中可忽略的著錄項;對數(shù)據(jù)進行概化表述;
[0035] 步驟333、利用參考文獻的決策樹和預(yù)處理后的數(shù)據(jù)進行類型判定。在本發(fā)明實施 例中,采用WEKA平臺進行類型判定。
[0036] 其中,所述步驟333具體包括:
[0037] 步驟3331、導(dǎo)入要測試的數(shù)據(jù)集;
[0038] 步驟3332、獲取步驟332進行預(yù)處理后的待測數(shù)據(jù);
[0039] 步驟3333、將處理后的數(shù)據(jù)集置于不同的學(xué)習(xí)方案中進行學(xué)習(xí)并建立預(yù)測模型來 預(yù)測未知的實例;
[0040] 步驟3334、對預(yù)測的結(jié)果進行評估。
[0041] 本發(fā)明的上述技術(shù)方案的有益效果如下:
[0042] 隨著科技論文的大量涌現(xiàn),國家有關(guān)部口推行了學(xué)術(shù)期刊的標準化和規(guī)范化,其 中參考文獻的格式標準已被作為廣大作者和編輯工作人員所必須遵守的規(guī)則。作者在撰寫 學(xué)術(shù)論文過程中要學(xué)習(xí)標準規(guī)范才能高質(zhì)量地完成論文,而編輯工作人員同樣需要學(xué)習(xí)標 準規(guī)范才能高效率地完成論文的核對工作。因此,作者和編輯工作人員都需要一種方便的 工具進行參考文獻格式規(guī)范性的檢測。由于不同類型的參考文獻有不同的格式,同一種參 考文獻有很多著錄項,所W作者在編寫過程中難免會出錯,因此在學(xué)術(shù)論文的參考文獻中 仍存在大量不規(guī)范的現(xiàn)象,運給編輯工作人員增加了核對的難度。本課題主要解決參考文 獻格式規(guī)范性問題,具有較高的實用價值。
[0043] 1)運項研究可W使參考文獻格式檢查工作更加智能化,減少參考文獻著錄差錯, 提高參考文獻格式檢查工作的效率。
[0044] 2)對參考文獻各個著錄項進行正確理解,利于日后為參考文獻的進一步發(fā)掘利用 (如分析引用和被引信息,評估學(xué)術(shù)著作的研究水平,W及梳理相關(guān)作者的研究成果等)。
[0045] 本發(fā)明實施例可W對參考文獻格式規(guī)范性進行檢測,具體定位到錯誤的位置,并 提示如何改正,為研究者提供了方便。本課題的研究成果對于提高數(shù)字出版質(zhì)量、促進文檔 信息的高效傳播利用、節(jié)省排版的人工成本等具有重要的價值。
【附圖說明】
[0046] 圖1為本發(fā)明實施例的流程示意圖;
[0047] 圖2為Word文件中基于XML的00XML結(jié)構(gòu)的代碼;
[004引圖3為Word文檔元素層次關(guān)系示意圖;
[0049] 圖4為作為例子的10條格式規(guī)范的參考文獻;
[0050] 圖5為本發(fā)明實施例的參考文獻決策樹的結(jié)構(gòu)示意圖;
[0051 ]圖6為ARFF文件中部分記錄的示意圖;
[0052] 圖7為本發(fā)明實施例中的轉(zhuǎn)化的示意圖;
[0053] 圖8為作為例子的10條待測參考文獻;
[0054] 圖9為參考文獻著錄項識別的部分結(jié)果;
[0055] 圖10是圖8中待測參考文獻的檢測結(jié)果;
[0化6]圖11為檢測過程中生成的XML文件。
【具體實施方式】
[0057]為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具 體實施例進行詳細描述。
[005引本發(fā)明實施例提出了一種參考文獻格式檢查方法,包括:
[0059] 步驟1、使用Schema定義標準格式模板。目的是為了驗證由參考文獻各著錄項所生 成的XML文件的正確性。
[0060] 步驟2、讀取各條參考文獻,進行著錄項切分。使用著錄項的切分目的是使識別的 類別盡可能單一,為下一步識別參考文獻著錄項打下基礎(chǔ),只有準確地切分了各著錄項才 能提高著錄項識別的準確性。
[0061] 步驟3、識別參考文獻著錄項。在步驟2參考文獻著錄項的切分方法基礎(chǔ)上進行參 考文獻各著錄項的識別,著錄包括責(zé)任者,題名,出版地,出版者和出版日期等。
[0062] 步驟4、將識別出的著錄項提取成為XML節(jié)點。
[0063] 步驟5、判斷文獻類型標志。在GB/T 7714-2005中規(guī)定的文獻類型標志如下:普通 圖書(M),匯編(G),標準(S),期刊(J),計算機程序(CP),學(xué)位論文(D),報告(R),專利(P),數(shù) 據(jù)庫(DB),電子公告化B),磁帶(MT),磁盤(DK),會議錄(C),光盤(CD),報紙(N),聯(lián)機網(wǎng)絡(luò) (0L)。在步驟4)中識別后的題名著錄項中查找是否含有GB/T 7714-2005中所規(guī)定的文獻類 型標志。
[0064] 步驟6、基于步驟1中所述的標準格式模板進行驗證。如果含有文獻類型標志,則調(diào) 用相應(yīng)文獻類型的Schema標準格式模板進行驗證,如果未含有文獻類型標志,則先判斷文 獻類型,然后再調(diào)用相應(yīng)文獻類型的Schema標準格式模板進行驗證。如果通過了驗證,說明 參考文獻的格式正確,如果沒有參考驗證,則說明參考文獻的格式錯誤。
[0065] 步驟7、判斷出錯誤的著錄項并進行修改。包括檢查著錄項的順序,最終生成正確 的XML實例。具體設(shè)計思路如下:XML文件未通過Schema驗證時,提取出XML文件中具體未通 過驗證的著錄項,對于未通過驗證的著錄項可歸納為Ξ種情況,一種情況是缺項,一種情況 是多項,另外是錯項。對于缺項的情況,補全著錄項并加上標點符號重組形成格式規(guī)范的參 考文獻。對于多項的情況,刪除該著錄項并加上標點符號重組形成格式規(guī)范的參考文獻。對 于錯項的情況,按照規(guī)范的格式進行修改后加上標點符號重組形成格式規(guī)范的參考文獻。
[0066] 下面對本發(fā)明實施例的每一步驟進行詳細的說明。
[0067] 步驟1、將參考文獻著錄項格式規(guī)則采用代碼進行表述,其中所述參考文獻著錄項 格式中包括W下的至少一個著錄項:著錄者、題名、參考文獻類型、出版者、出版日期、頁碼。
[0068] 在本發(fā)明實施例中,可W通過XML Schema語言來對進行表述,其中所述參考文獻 著錄項格式中包括W下的至少一個著錄項:著錄者、題名、參考文獻類型、出版者、出版日 期、頁碼;
[0069] W下為采用XML Schema語言表述的參考文獻著錄項格式規(guī)則的一個實例,是W XML Schema表述的會議論文集
[0070] (l)<?xml version = "l .0"encoding = "GB2312"?>
[0071 ] (2)<xs:schemaxmlns:xs = "http://www.w3.org/2001/XMLSchema"
[0072] (3)xmlns = "http://www.wSschoo1. com.cn"
[0073] (4)targetNamespace = http://www.w3school. com. cn"
[0074] (5)elementF'o;rmDefault = "qualified"〉
[0075] (6)<xs:element name = "reference"〉
[0076] (7)<xs:complexType)
[0077] (8)<xs: sequence)
[0078] (9)<xs:element name = "author"type = "xs:string"/〉
[0079] (lOXxs:element name = "title"type = "xs:string"/〉
[0080] (11)<xs:element name = "type"type = "xs:string"/〉
[0081 ] (12)<xs:element name = "publish"type = "xs:string"min0ccirs = "0"/〉
[0082] (13)<xs:element name = "publisher"type = "xs:string"/〉
[0083] (14)<xs:element name = "publish_year"type = "xs:string"/〉
[0084] (15)<xs:element name = "page_number"minOccirs = "0"/〉
[00 化](16)<xs:simpleType〉
[0086] (17)<xs:restriction base = "xs:string"〉
[0087] (18)<xs:pattem value = "(\d{l ,4}-)?\d{l ,4}"/〉
[0088] (19)</xs:restriction)
[0089] (2〇X/xs: simpleType)
[0090] (21)</xs:element)
[0091] (22)</xs: sequence)
[0092] (23)</xs:complexType)
[0093] (24)</xs:element)
[0094] (25)</xs: schema)
[0095] 步驟2、利用預(yù)設(shè)文庫提取文字中引述的參考文獻,并提取其中的著錄項;所述步 驟2包括參考文獻內(nèi)容提取和參考文獻著錄項提取兩部分內(nèi)容。因此步驟2具體包括:
[0096] 步驟21、利用Apache P0I對文檔進行識別W提取參考文獻內(nèi)容。
[0097] 由于現(xiàn)有的文檔大多都是用Microsoft Word格式或是兼容Word的格式來進行存 儲的。在Microsoft Word文檔中,信息W基于XML的00XML (Open Office XML)格式進行存 儲。因此可W采用Apache P0I 3.13對文檔進行識別。
[0098] W下本申請W舉例對00XML結(jié)構(gòu)的含義進行說明。在Microsoft Word2013中編輯 兩段文字,分別為"中文參考文獻著錄項識別"和"論文",其對應(yīng)的XML代碼如圖2所示。
[0099] 在代碼中,<w: document〉元素為文檔的根元素,其他所有的元素都是它的子元素。 元素后面通過屬性定義了若干個命名空間。
[0100] <w: body〉元素是文檔內(nèi)容所在的元素,是唯一必須的元素。其下包含許多子元素, 具體參見00XML標準。在眾多的子元素中,最基本的元素有Ξ個,分別為<¥: P〉元素,<w: r>元 素和<w: t>元素。其中,<w:P〉元素代表一個段落,用于定義一個開始于新行的內(nèi)容;<w:r〉元 素表示句層的內(nèi)容,可W是句、數(shù)學(xué)內(nèi)容、智能標記和用戶自定義標記等,句是可W設(shè)置式 樣的最小單元;<w:t>元素表示句內(nèi)的具體文本內(nèi)容。運些元素的層級關(guān)系示意圖如圖3所 /J、- 〇
[0101] 由于參考文獻的位置是固定的,在了解了基于XML的00XML(化en Office XML)格 式的信息之后,就可W利用Apache P0I 3.13對文檔進行識別,W提取其中的參考文獻的內(nèi) 容。
[0102 ]步驟22、從所述參考文獻內(nèi)容中提取著錄項。
[0103] 由于參考文獻由若干著錄項組成,因此需要先將著錄項進行切分,然后才能進行 識別。具體包括:
[0104] 符號規(guī)范化步驟:對參考文獻中的符號進行識別,W判斷參考文獻中費否包括非 半角符號,如果包括則將其替換為相應(yīng)的半角符號;
[0105] 切分步驟:根據(jù)參考文獻國標GB/T 7714-2005中規(guī)定的著錄用符號對著錄項進行 切分。
[0106] 在參考文獻國標GB/T 7714-2005中,所有的著錄用符號都作為前置符。比如參考 文獻中第一個著錄項的責(zé)任者前不使用任何標志符號;用于題名項和析出文獻題名項 等的前置符等。通過對GB/T 7714-2005的分析,將不同的前置符作為分隔點進行著錄項的 切分。
[0107] 在對一些畢業(yè)生學(xué)位論文進行抽樣分析過程中發(fā)現(xiàn),格式錯誤的種類形式各異, 可W利用統(tǒng)計方法計算得出書寫錯誤的概率模型。例如如果在一條參考文獻中含有則 此條參考文獻中基本不會出現(xiàn)V'作為著錄項之間的分隔符;如果在一條參考文獻中含有 作為著錄項之間的分隔符,則此條參考文獻中基本不會出現(xiàn)V'作為著錄項之間的分隔 符。
[0108] 步驟3、利用預(yù)設(shè)的著錄項識別模型對論文文字中所引述的參考文獻進行識別W 提取所述參考文獻的著錄項,其中所述著錄項識別模型為根據(jù)預(yù)設(shè)語料庫進行學(xué)習(xí)獲得 的。
[0109] 在本發(fā)明實施例中,采用基于條件隨機場的斯坦福大學(xué)命名實體識別方法 (Stanford Named Entity Recognizer,肥R)。肥R可W按照類別將實體進行標記,例如人 名,公司名,地區(qū),基因和蛋白質(zhì)的名字等。肥R配備了精屯、設(shè)計的特征提取器對命名實體進 行識別,經(jīng)過訓(xùn)練即可得到訓(xùn)練模型。理論上用于訓(xùn)練的數(shù)據(jù),即大量人工標記好的文本越 多,肥R識別效果越好。為了滿足新的需求要重新訓(xùn)練模型。
[0110] 因此步驟3中具體包括;
[0111] 步驟31、提取語料庫;具體的語料庫采用抽取的1998年1月份《人民日報》標注語料 庫和2015年北大版《中文核屯、期刊要目總覽》。
[0112] 其中;
[0113] 1、抽取的1998年1月份《人民日報》標注語料:由于《人民日報》語料中人名,地名等 名詞所占比例較多,因此可W作為很好的訓(xùn)練語料庫。
[0114] 2、2015年北大版《中文核屯、期刊要目總覽》;由于除了人名、地名之外,通常論文中 希望能夠更好地識別出常用的期刊名稱W及一些論文標題中常用的關(guān)鍵詞,因此采用《中 文核屯、期刊要目總覽》配合《人民日報》。
[0115] 比如畢業(yè)論文的題目或期刊的題目中常含有"基于"一詞,所W在《人民日報》語料 的基礎(chǔ)上增加了2015年北大版《中文核屯、期刊要目總覽》中出現(xiàn)的期刊名稱及統(tǒng)計出的標 題中常用的關(guān)鍵詞,最終將運幾部分組合在一起共同作為本實驗的系統(tǒng)訓(xùn)練集,將其保存 在testda化.tsv文件中,并用于系統(tǒng)的封閉測試。
[0116] 另外,2015年北大版《中文核屯、期刊要目總覽》為抽取的本校畢業(yè)論文中的文后參 考文獻,將其組成測試集用于系統(tǒng)的開放測試。
[0117] 其中,提取出的參考文獻內(nèi)容可W如圖4所示的。
[0118] 步驟32、采用預(yù)設(shè)的語料庫,利用肥R算法進行訓(xùn)練W獲得著錄項識別模型。
[0119] 肥財是供了兩種訓(xùn)練模型的方式,分別為命令行方式及配置文件方式。
[0120] 在本發(fā)明實施例中,可W采用配置文件的方式。
[0121 ] 具體的,在Stanford肥R中配置文件名稱為austen.prop,利用如下表1所示的修 改其參數(shù)
[0122] 表1 austen. prop修改參數(shù)表
[0123]
[0124] 其中,trainFile指定用于訓(xùn)練的數(shù)據(jù)集,serial izeTo指定訓(xùn)練后輸出的模型名 稱。將修改后的配置文件保存,并與訓(xùn)練數(shù)據(jù)集testdata.tsv共同放在程序的根目錄下,執(zhí) 行命令W下命令:
[0125] java-cp Stanford-ner.jaredu. Stanford.nip.ie. erf.CRF Classifier-prop 曰 listen, prop"
[01 %]當(dāng)執(zhí)行成功后,在目錄下生成ner-model. ser. gz,即為訓(xùn)練數(shù)據(jù)得到的模型。
[0127] 在獲得了著錄項識別模型之后,可W通過著錄項識別模型對步驟2中的著錄項進 行識別。
[0128] 由于參考文獻中信息有可能是不完整的,有可能會缺失參考文獻類型,而參考文 獻類型是否準確對后續(xù)的參考文獻格式檢查有重要影響,因此本發(fā)明實施例中可W進一步 包括:
[0129] 步驟33、判斷參考文獻中是否包括參考文獻類型參數(shù),如果不包括則利用參考文 獻的著錄項判斷所述參考文獻的類型。
[0130] 具體的,步驟33包括:
[0131] 步驟331:構(gòu)建出著錄項的決策樹。
[0132] 還是W如圖4所示的參考文獻內(nèi)容為例,其包括10條格式規(guī)范。由圖4可知,每條參 考文獻由很多著錄項組成,不同類型的參考文獻其著錄項的組成各不相同。通過對10條參 考文獻的分析,歸納其參考文獻的著錄項及其屬性值描述,如表2所示。
[0133] 表2參考文獻的著錄項及其屬性值描述
[0134]
[0135] 經(jīng)數(shù)據(jù)變換后得到的圖4中各條參考文獻的信息模型如表3所示:[0136] 表3圖4中各條參考文獻的信息模型
[0139]因此可W根據(jù)表3構(gòu)建出如圖5所示的著錄項決策樹。根據(jù)圖5中的決策樹可W對 未知類型的文獻進行預(yù)測,比如現(xiàn)有一條參考文獻如下:
[0137]
[013 引
[0140] 朱剛.新型流體有限元法及葉輪機械正反混合問題.北京:清華大學(xué),1996.
[0141] 根據(jù)如圖5所示的決策樹可W預(yù)測它屬于學(xué)位論文。
[0142] 要生成如圖5所示的決策樹,其中有兩個關(guān)鍵問題:
[0143] -是如何從眾多的輸入變量中選擇一個當(dāng)前最佳的分組變量?比如為什么要把出 版者類型作為決策樹的根節(jié)點?為什么選擇著者類型作為下層的子節(jié)點而不是其它著錄 項?
[0144] 二是如何從分組變量的眾多取值中找到一個最佳的分割點?比如出版者類型為名 稱類型,其屬性包括"期刊"、"教育機樹V'其它'、"出版社',為什么選擇"教育機樹'作為分 割點?解決了運兩個關(guān)鍵問題即可W容易地構(gòu)造出決策樹。
[0145] 決策樹中需要引入"純度"概念。常用的衡量純度方法有Ξ種,分別為基尼指數(shù) (Gini),賭化ntropy),錯誤率化;rror);本發(fā)明實施例中可W通過W下公式計算基尼指數(shù) (Gini),賭化ntropy),錯誤率化rror):
[0146] 假定著錄項的屬性具有η類不同的屬性值ia = l,2,…,η),每類屬性值所占的比 例p(i)=第i類屬性值的數(shù)量/該屬性值總數(shù)量,p(i)的取值范圍為[0,1]。
[0149] Error = l-max{p(i) I i in[l,n]}
[0150] 上面Ξ純度的公式1-3均為值越大,表示越"不純",越小表示越"純"。實踐證明Ξ 種公式的選擇對最終分類準確率的影響并不大。在本發(fā)明實施例中還使用賭公式,由賭公 式引申出兩個常用的屬性選擇變量,分別為如公式4的信息增益(Gain)和如公式5的信息增 益率(GainRate)。
[0151 ] Gain(U,V) =E;nt;ropy(U)-Entropy 化,ν))
[0152] GainRate 化,ν) =Gain 化,V)/E;nt;ropy(V)
[0153] 在信息論中,信息傳遞過程看作是一個由信源、信道和信宿組成的傳遞系統(tǒng)實現(xiàn) 的,信源是信息的發(fā)送端,信宿是信息的接收端。W上面參考文獻類型標志預(yù)測為例,將著 者類型(T1),報告號(T2),專利號(T3),出版者類型(T4),年卷期標志(T5),頁碼(T6)作為輸 入變量,參考文獻類型標志為輸出變量。決策樹將輸出變量(參考文獻類型標志)看作信源 發(fā)出的信息U,輸入變量看作信宿接收到的一系列信息V。
[0154] Gain(U,V) =E;nt;ropy(U)-Ent;ropy 化,ν))
[01 巧]GainRate 化,ν) =Gain 化,V)/E;nt;ropy(V)
[0156] 采用信息增益率(GainRate)對上述兩個關(guān)鍵問題分別進行計算,計算過程如下:
[0157] W著者類型T1為例:分別計算E;n1:;ropy(U)、Ent;ropy化 I T1)、Gains化,ΤΙ)、GainsR (U,T1),其中期刊、學(xué)位論文和圖書類型文獻各2條,報告、會議集、專利和標準類型文獻各1 條。
[0158] 假定著錄項具有Μ個不同類型的屬性,屬性值m(i = l,2,…,M),每類屬性值所占 的比例為P(Ui),著者類型T1具有N個不同屬性值tij(j = l,2,…,N)。
[0161 ] Gain化,ΤΙ) =E;nt;ropy(U)-Ent;ropy化 I ΤΙ) =0.553
[0162] GainRate 化,ΤΙ) =Gains(U, ΤΙ)/Entropy (V) =0.628
[0163] 即得到著者類型(ΤΙ)的信息增益率為0.628, W相同的方式計算其它各著錄項,最 終得到T4信息增益率值最大為1.275,因此應(yīng)選擇T4作為最佳分組變量,即為決策樹的根節(jié) 點。
[0164] 在出版者類型中有4個屬性,分別為"期刊"、"教育機構(gòu)"、巧它"、"出版社",那么 如何選擇分割點,計算過程與上面類似,經(jīng)計算得到"教育機構(gòu)"的信息增益率值最大為 3.948,因此應(yīng)選擇"教育機構(gòu)"作為最佳分組變量。
[0165] 由上述分析可W看出,本發(fā)明實施例的決策樹是一種直觀的決策分析方法,其優(yōu) 點顯而易見。決策樹模型可讀性好,具有一定的描述性,有助于人工分析;并且執(zhí)行效率高, 只需要一次構(gòu)建就可W反復(fù)使用,可W很自然地嵌入專家的先驗知識。
[0166] 由于該參考文獻的著錄項中可能出現(xiàn)數(shù)據(jù)不一致、數(shù)據(jù)重復(fù)、數(shù)據(jù)含有噪聲、數(shù)據(jù) 維度高等問題。因此在對著錄項進行分類之前,需要對數(shù)據(jù)進行預(yù)處理。即,所述步驟33還 包括:
[0167] 步驟332,對數(shù)據(jù)進行預(yù)處理。
[0168] 具體的,數(shù)據(jù)預(yù)處理步驟包括:
[0169] 步驟3321、對所述參考文獻的著錄項完整性進行檢查。
[0170] 由于決策樹的變量有兩種類型:數(shù)字型、名稱型;所W在構(gòu)造決策樹前需要做的主 要預(yù)處理工作為將非數(shù)字型和非名稱型的數(shù)據(jù)轉(zhuǎn)化為數(shù)字型或者名稱型。
[0171] 在數(shù)據(jù)挖掘中從原始數(shù)據(jù)里選取合適的屬性作為數(shù)據(jù)挖掘?qū)傩裕捎玫臄?shù)據(jù)原 則為:盡可能將屬性名和屬性值賦予明確的含義、去除重復(fù)的數(shù)據(jù)、去除可忽略字段、合理 選擇關(guān)聯(lián)字段。下面具體介紹進行預(yù)處理的過程。
[0172] 原始數(shù)據(jù)為提取出的參考文獻,然后將參考文獻各著錄項進行拆分,每個拆分后 的著錄項可W看作每條記錄的屬性,如下的表4為從原始數(shù)據(jù)中選取的一個片斷。
[0173] 表4原始數(shù)據(jù)記錄
[0174]
[0175] 從上表中可W看出,將一條參考文獻拆分后,某些字段值空缺,某些字段可W忽 略,因此步驟332可W包括W下Ξ個子步驟:
[0176] 步驟3322、查找參考文獻中是否具有缺少的著錄項,如果有則根據(jù)參考文獻中相 關(guān)的著錄項對空缺值進行填充。
[0177] 例如表4中的的"專利國別","專利號","報告編號',然后將所選的數(shù)據(jù)所有空缺 值進行填補??杖敝档奶钛a原則為遵從該字段已存在的值的類型,比如在已存在的記錄中 某個字段的部分值為數(shù)字型,那么該字段的其它空缺值的填補值也將為數(shù)字型值,如果該 字段的部分值為名稱型,則該字段的其它空缺值的填補值也為名稱型值。
[0178] 步驟3323、根據(jù)著錄項的相關(guān)性,刪除其中可忽略的著錄項。例如圖4所示的參考 文獻內(nèi)容,其中的序列編號(即前面的1、2、3……10)對結(jié)果預(yù)測沒有任何作用,反而會增加 計算的復(fù)雜性,因此可W刪除。比如出版地字段,無論出版地是哪里都將不會影響最終參考 文獻的類型,所W對于"出版地"字段可將其忽略。
[0179] 步驟3323、對數(shù)據(jù)進行概化表述。運是由于在原始記錄的數(shù)據(jù),每一字段都可W被 概括為數(shù)個類。例如:對于"責(zé)任者"字段來說,"責(zé)任者"字段的值可W概括為兩類,一類是 具體的人名,另一類是組織機構(gòu)名稱。通過"責(zé)任者"字段是人名還是組織機構(gòu)名來對文獻 的類型進行預(yù)測,而與具體的人是什么名字W及與組織機構(gòu)是什么名字無關(guān)。因此,可W將 "責(zé)任者"字段進行數(shù)據(jù)概化為人名和組織機構(gòu)名兩類。依此類推,將所有類似情況的數(shù)據(jù) 都將進行概化。
[0180] 經(jīng)過上述的步驟之后可W得到如表5所示的經(jīng)過預(yù)處理后的數(shù)據(jù)。
[0181] 表5預(yù)處理后的數(shù)據(jù)
[0182]
[0183] 從表5中可W看到預(yù)處理的字段及字段值都為英文,當(dāng)然運只是本發(fā)明實施例的 一種方式,還可W采取其他任何形式的來表達經(jīng)過預(yù)處理的字段及字段值。由于本發(fā)明實 施例中是采用WEKA系統(tǒng)來進行參考文獻類型來進行類型判定,因此采用英文的字段和字段 值可W獲得更好的計算效果。
[0184] W表5的例子來對本發(fā)明實施例每一字段的字段值來舉例說明:
[01化]"責(zé)任者"字段值為陽R. Individual和陽R. Group,其中陽R指文獻中提及的個人或 人群,P邸.Individua巧日陽R.Group為陽R的子類,分別指個人,人群或組織。
[01化]。題目特征標記"字段值為title_D_tag,title_C_tag等,比如t i t le_C_tag是 指會議論文集的題目中含有"會議集"特征標記,報告的題目一般會含有"報告"特征標記; 其它類型沒有特征標記的值記為no。
[0187] 。出版社"字段值為 PUB. Press, PUB Journal, PUB. School, PUB. Institution 和 NUL,分別指非學(xué)校類的出版社,期刊,學(xué)校類出版社和研究院所,NUL指缺項。
[0188] 在步驟33中,通過步驟331構(gòu)建了決策樹,并通過步驟332進行了數(shù)據(jù)預(yù)處理后,需 要對參考文獻進行類型判定。即所述方法還包括:
[0189] 步驟333、利用參考文獻的決策樹和預(yù)處理后的數(shù)據(jù)進行類型判定。在本發(fā)明實施 例中,采用WEKA平臺進行類型判定。
[0190] WEKA平臺中進行數(shù)據(jù)挖掘的過程如下:
[0191] 1)導(dǎo)入要測試的數(shù)據(jù)集;
[0192] 2)對待測數(shù)據(jù)進行預(yù)處理(步驟332已經(jīng)完成);
[0193] 3)將處理后的數(shù)據(jù)集置于不同的學(xué)習(xí)方案中進行學(xué)習(xí)并建立預(yù)測模型來預(yù)測未 知的實例;
[0194] 4)對預(yù)測的結(jié)果進行評估并可視化。下面針對上述四個步驟進行具體介紹。
[01巧]因此步驟333具體包括:
[0196] 步驟3331、導(dǎo)入要測試的數(shù)據(jù)集。
[0197] 由于肥KA平臺下能處理的數(shù)據(jù)格式為CSV和ARFF文件,但是最理想的格式為ARFF 文件,所W運里使用ARFF格式文件,需要先將文件的格式進行轉(zhuǎn)換后再導(dǎo)入要測試的數(shù)據(jù) 集。原始數(shù)據(jù)存儲在EXC化文件中,先將其轉(zhuǎn)換為CSV文件,再轉(zhuǎn)換為ARFF文件。其中ARFF文 件中部分記錄如圖6所示。
[0198] 步驟3332、獲取步驟332的預(yù)處理后的數(shù)據(jù)。
[0199] 步驟3333、選擇具體的分類算法用于訓(xùn)練和測試分類。在WEKA系統(tǒng)的分類模塊中, 集成了約50種的分類算法,本發(fā)明實施例中選用了巧中經(jīng)典分類算法NativeBays,J48(決策 樹)和ZeroR對測試集進行分類測試。
[0200] 第四步對不同分類算法的結(jié)果進行評估。評估分類精度的方法很多,主要有交叉 法(cross-validation)、保持法(holdout)、留一法(leave-one-out)、回代法(back- substitution)。交叉法和保持法最為常用。留一法可W看作交叉法的一種特例?;卮ㄓ?于它評估過度擬合導(dǎo)致了分類精度偏高,一般不使用。結(jié)果的可視化既可W對一次分類的 結(jié)果進行可視化,也可W對一個數(shù)據(jù)集的結(jié)果進行可視化。其中數(shù)據(jù)集的可視化顯示的是 關(guān)于每對屬性的一個二維散點圖,某一次分類的輸出結(jié)果可視化顯示的是分類誤差、樹、成 本曲線、R0C曲線等,用來評估各學(xué)習(xí)方案的性能。
[0201] -些算法對文獻類型標志的判定雖然準確率相對較高,但是不可能達到100%的 準確率,運將影響到最終的文獻格式錯誤檢測的準確率。
[0202] 為了盡量減小預(yù)測誤差,本發(fā)明實施例中采用了特征標記的方法。即在決策樹進 行文獻類型標志判定后再根據(jù)特征標記來進行判定,若二者判定結(jié)果相同則將其作為最終 結(jié)果,若二者判定不相同則W根據(jù)特征標記來判定的結(jié)果為準。表6列出了各類特征標記與 參考文獻類型的對應(yīng)關(guān)系。
[0203] 表6特征標記與文獻類型的關(guān)系表
[0204]
[0205]
[0206] 步驟4、利用所述參考文獻著錄項格式規(guī)則代碼,對識別出的所述參考文獻的著錄 項進行檢查。具體包括:將識別后的各著錄項根據(jù)參考文獻類型標志生成相應(yīng)的XML文檔, 然后使用Schema進行驗證;如果通過驗證則說明該條文獻格式正確,否則說明該條文獻的 格式存在錯誤。
[0207] 在本發(fā)明實施例中,其中生成的期刊類型的XML文檔如下
[0208] (l)<?xmlversion = "1.0"encoding = "GB2312"standalone = "no"?〉
[0209] (2)〈reference xmlns = "http: //www/w3school. com. cn"
[0210] (3)xmlns:xsi二"http://www.w3.org/2001/XMLSchema_instance"
[0211] (4)xsi : schemaLocation = "http: //www.wSschool. com. cn J_pre. xsd"〉
[0212] (5)<author authorLoc二"1"〉陳路瑤</au化or〉
[0213] (6)<title titleLoc二"2"〉信息文檔結(jié)構(gòu)信任模式的提取及邏猜描述〈/title〉
[0214] (7)<type typeLoc二"2"〉J_pre</type〉
[0215] (8)<publish publisliLoc二"3"〉北京〈/publish〉
[0216] (9)<publisher publisherLoc二"4"〉計算機應(yīng)用研究〈/publisher〉
[0217] (10)<publish_yea:rpublish_yearLoc = "5"〉2015</publish_year〉
[0218] (ll)〈volumn_markvolumn_markLoc="6"〉27〈/volumn_mark〉
[0219] (12)<page_numberoage_numberLoc 二"7"〉4624-4629</page_number〉
[0220] (13)〈/reference〉
[0221] 在通過Schema模板進行驗證后,未通過編譯器驗證將返回錯誤信息。錯誤信息包 括錯誤類型和錯誤描述,通過錯誤類型可W大致判斷出現(xiàn)的問題,若想具體定位錯誤需要 結(jié)合錯誤描述。下面歸納了 Ξ種常見的錯誤類型;
[0222] (1 )cvc-complex-type · 3 · 1D這種錯誤類型是XML中屬性值與Schema中定義的屬性 值不匹配,比如標簽之間的順序顛倒。
[0223] (2)cvc-complex-type · 2 · 4 .a。這種錯誤類型是XML文件中的邏猜結(jié)構(gòu)不符合 Schema規(guī)范,比如出現(xiàn)了 Schema規(guī)范中未定義的元素 D
[0224] (3)cvc-compleχ-type.2.4.bD這種錯誤類型是XML文件的內(nèi)容不完整,比如缺項D
[0225] 在參考文獻中出現(xiàn)的格式錯誤類型都可W歸結(jié)為上述蘭類錯誤的一種或幾種。錯 誤檢測的過程見表7所示。
[0226] 表7參考文獻格式錯誤檢測算法
[0227]
[0228] 在表7的算法中,R是待測參考文獻集合,r是R集合中的一條參考文獻。ERRORS為 XML Schema驗證參考文獻未通過的錯誤類型集合,化是一條參考文獻對應(yīng)的錯誤類型。在 檢測后,為了解決錯誤項的定位問題,需要將編譯器提供的錯誤描述信息轉(zhuǎn)化為相應(yīng)的位 置信息,下面通過一個例子來說明如何進行轉(zhuǎn)化,見圖7所示。
[0229] 由圖7可W看出,著錄項錯誤包括Ξ種情況:多項、缺項和亂序。每種情況對應(yīng)的位 置編號變化各不相同,因此,根據(jù)位置編號及著錄項內(nèi)容設(shè)計算法2,見表8所示。
[0230] 表8參考文獻錯誤項定位算法
[0231]
[0232]
[0233] 經(jīng)算法分析后,下面W圖8中的10條待測參考文獻為例,使用本系統(tǒng)對10條參考文 獻進行規(guī)范性檢測,檢測的結(jié)果如圖9和圖10所示。
[0234] 本專利應(yīng)用于文后參考文獻的格式檢查,對有誤的參考文獻格式進行校正。本發(fā) 明中的參考文獻信息提取采用從Microsoft Word文檔中提取,同樣適用于從文本文件中提 取參考文獻。W下通過例子進行描述。
[0235] 圖9是參考文獻著錄項識別的部分結(jié)果,W圖8中第一條參考文獻為例,圖9中前8 行為第一條參考文獻的識別結(jié)果。其中第一行"J_pre"表示第一條文獻缺少文獻類型標志, 通過文獻類型標志的判定將其預(yù)測為期刊類型;第二行表示將"陳路瑤"識別為作者;第Ξ 行表示將"信息文檔結(jié)構(gòu)信任模式的提取及邏輯描述"識別為題名;第四行表示將"北京"識 別為出版地;第五行表示將"計算機應(yīng)用研究"識別為期刊類型的出版者;第六行表示將 "2010"識別為出版年;第村于表示將"27"識別為卷;第八行表示將"4624-4629"識別為頁 碼。
[0236] 圖10是10條參考文獻的檢測結(jié)果,對于格式不規(guī)范的參考文獻提示具體錯誤位置 信息并給出修改建議,W方便修改。圖11為檢測過程中生成的XML文件。
[0237] 本發(fā)明具有W下有益效果:
[0238] 隨著科技論文的大量涌現(xiàn),國家有關(guān)部口推行了學(xué)術(shù)期刊的標準化和規(guī)范化,其 中參考文獻的格式標準已被作為廣大作者和編輯工作人員所必須遵守的規(guī)則。作者在撰寫 學(xué)術(shù)論文過程中要學(xué)習(xí)標準規(guī)范才能高質(zhì)量地完成論文,而編輯工作人員同樣需要學(xué)習(xí)標 準規(guī)范才能高效率地完成論文的核對工作。因此,作者和編輯工作人員都需要一種方便的 工具進行參考文獻格式規(guī)范性的檢測。由于不同類型的參考文獻有不同的格式,同一種參 考文獻有很多著錄項,所W作者在編寫過程中難免會出錯,因此在學(xué)術(shù)論文的參考文獻中 仍存在大量不規(guī)范的現(xiàn)象,運給編輯工作人員增加了核對的難度。本課題主要解決參考文 獻格式規(guī)范性問題,具有較高的實用價值。
[0239] 1)運項研究可W使參考文獻格式檢查工作更加智能化,減少參考文獻著錄差錯, 提高參考文獻格式檢查工作的效率。
[0240] 2)對參考文獻各個著錄項進行正確理解,利于日后為參考文獻的進一步發(fā)掘利用 (如分析引用和被引信息,評估學(xué)術(shù)著作的研究水平,W及梳理相關(guān)作者的研究成果等)。
[0241] 本發(fā)明實施例可W對參考文獻格式規(guī)范性進行檢測,具體定位到錯誤的位置,并 提示如何改正,為研究者提供了方便。本課題的研究成果對于提高數(shù)字出版質(zhì)量、促進文檔 信息的高效傳播利用、節(jié)省排版的人工成本等具有重要的價值。
[0242] W上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員 來說,在不脫離本發(fā)明所述原理的前提下,還可W作出若干改進和潤飾,運些改進和潤飾也 應(yīng)視為本發(fā)明的保護范圍。
【主權(quán)項】
1. 一種參考文獻格式檢查方法,其特征在于,包括: 步驟1、將參考文獻著錄項格式規(guī)則采用Schema進行表述,其中所述參考文獻著錄項格 式中包括以下的至少一個著錄項:責(zé)任者、題名、參考文獻類型、出版者、出版日期、頁碼; 步驟2、讀取各條參考文獻,進行著錄項切分; 步驟3、識別參考文獻著錄項,并將識別出的著錄項提取成為XML節(jié)點;其中所述著錄項 包括以下的至少一種:責(zé)任者、題名、出版地、出版者、出版日期等;同時,判斷該參考文獻著 錄項中是否包括文獻類型標志,如果沒有則根據(jù)著錄項添加該參考文獻的文獻類型標志; 步驟4、利用所述參考文獻著錄項格式規(guī)則對著錄項進行驗證。2. 根據(jù)權(quán)利要求1所述的參考文獻格式檢查方法,其特征在于,所述方法還包括: 步驟5、當(dāng)參考文獻著錄項存在錯誤時,對著錄項進行修改;具體包括; 當(dāng)錯誤為缺項時,補全著錄項并加上標點符號重組形成格式規(guī)范的參考文獻; 當(dāng)錯誤為多項時,刪除該著錄項并加上標點符號重組形成格式規(guī)范的參考文獻; 當(dāng)錯誤為錯項時,按照規(guī)范的格式進行修改后加上標點符號重組形成格式規(guī)范的參考 文獻。3. 根據(jù)權(quán)利要求1所述的參考文獻格式檢查方法,其特征在于,所述步驟2包括: 步驟21、利用Apache POI對文檔進行識別以提取參考文獻內(nèi)容; 步驟22、對提取出的參考文獻內(nèi)容進行切分以得到著錄項,包括: 對參考文獻中的符號進行識別,以判斷參考文獻中是否包括非半角符號,如果包括則 將其替換為相應(yīng)的半角符號; 根據(jù)著錄用符號對著錄項進行切分。4. 根據(jù)權(quán)利要求1所述的參考文獻格式檢查方法,其特征在于,所述步驟3包括:利用預(yù) 設(shè)的著錄項識別模型對論文文字中所引述的參考文獻進行識別以提取所述參考文獻的著 錄項,其中所述著錄項識別模型為根據(jù)預(yù)設(shè)語料庫進行學(xué)習(xí)獲得的;具體包括: 步驟31、提取語料庫; 步驟32、采用預(yù)設(shè)的語料庫,利用NER算法進行訓(xùn)練以獲得著錄項識別模型; 步驟33、判斷參考文獻中是否包括參考文獻類型參數(shù),如果不包括則利用參考文獻的 著錄項判斷所述參考文獻的類型。5. 根據(jù)權(quán)利要求4所述的參考文獻格式檢查方法,其特征在于,所述步驟33包括: 步驟331:構(gòu)建出著錄項的決策樹;具體包括: 通過以下公式計算基尼指數(shù)Gini,熵Entropy,錯誤率(Error):Error =l-max{p(i) | i in[ 1 ,η]} 并計算信息增益Gain和信息增益率GainRate Gain(U,V)=Entropy(U)-Entropy(U,V)) GainRate(U,V)=Gain(U,V)/Entropy(V) 以確定決策樹的根節(jié)點和最佳分組變量; 步驟332,對數(shù)據(jù)進行預(yù)處理,具體驟包括:對所述參考文獻的著錄項完整性進行檢查, 以將非數(shù)字型、非名稱型的數(shù)據(jù)轉(zhuǎn)化為數(shù)字型、名稱型;查找參考文獻中是否具有缺少的著 錄項,如果有則根據(jù)參考文獻中相關(guān)的著錄項對空缺值進行填充;根據(jù)著錄項的相關(guān)性,刪 除其中可忽略的著錄項;對數(shù)據(jù)進行概化; 步驟333、利用參考文獻的決策樹和預(yù)處理后的數(shù)據(jù)進行類型判定。在本發(fā)明實施例 中,采用WEKA平臺進行類型判定。6.根據(jù)權(quán)利要求5所述的參考文獻格式檢查方法,其特征在于,所述步驟333具體包括: 步驟3331、導(dǎo)入要測試的數(shù)據(jù)集; 步驟3332、獲取步驟332進行預(yù)處理后的待測數(shù)據(jù); 步驟3333、將處理后的數(shù)據(jù)集置于不同的學(xué)習(xí)方案中進行學(xué)習(xí)并建立預(yù)測模型來預(yù)測 未知的實例; 步驟3334、對預(yù)測的結(jié)果進行評估。
【文檔編號】G06F17/22GK105824791SQ201610153946
【公開日】2016年8月3日
【申請日】2016年3月17日
【發(fā)明人】李寧, 侯霞, 趙琳, 田英愛
【申請人】北京信息科技大學(xué)