国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SciBERT-BiLSTM-CRF-wordMixup的軟件實(shí)體識(shí)別研究

2024-10-08 00:00:00潘雪蓮錢雨菲王憲雨
現(xiàn)代情報(bào) 2024年10期

關(guān)鍵詞: 軟件實(shí)體識(shí)別; 命名實(shí)體識(shí)別; 深度學(xué)習(xí); 數(shù)據(jù)增強(qiáng);SciBERT

DOI:10.3969 / j.issn.1008-0821.2024.10.007

〔中圖分類號(hào)〕TP391 〔文獻(xiàn)標(biāo)識(shí)碼〕A 〔文章編號(hào)〕1008-0821 (2024) 10-0075-11

軟件在現(xiàn)代科學(xué)研究中發(fā)揮著重要作用, 它被用于科學(xué)研究的諸多方面, 但其學(xué)術(shù)價(jià)值一直被低估甚至忽略。近年來, 隨著數(shù)據(jù)密集型科學(xué)研究范式的興起和數(shù)據(jù)價(jià)值認(rèn)可度的提高, 一些學(xué)者開始呼吁重視軟件的價(jià)值, 因?yàn)椤皫缀跛械臄?shù)據(jù)都需要軟件進(jìn)行某種形式的處理”[1] 。一些國(guó)外組織機(jī)構(gòu)也開始將軟件認(rèn)定為有效科研成果[2-3],以鼓勵(lì)科學(xué)家開發(fā)和共享軟件。在此背景下, 學(xué)界開始探討如何量化評(píng)價(jià)軟件的影響力。一些學(xué)者提出使用被引次數(shù)來測(cè)度軟件的學(xué)術(shù)影響力[4] 。然而研究發(fā)現(xiàn),學(xué)術(shù)論文中軟件引用缺失嚴(yán)重且普遍存在[5-6] 。因此, 有學(xué)者提出用學(xué)術(shù)論文全文中的軟件使用頻次來評(píng)價(jià)軟件的學(xué)術(shù)影響力[7] 。隨之而來的問題是, 如何從學(xué)術(shù)論文全文中識(shí)別軟件??焖贉?zhǔn)確地從學(xué)術(shù)論文全文中識(shí)別出軟件實(shí)體, 將使得從軟件使用視角大規(guī)模量化評(píng)估軟件學(xué)術(shù)影響力成為可能, 為有關(guān)部門將軟件納入科研評(píng)價(jià)體系提供數(shù)據(jù)支撐, 對(duì)深入認(rèn)識(shí)軟件的學(xué)術(shù)價(jià)值、促進(jìn)科學(xué)軟件可持續(xù)發(fā)展和學(xué)術(shù)生態(tài)體系均衡發(fā)展具有重要意義。此外, 對(duì)學(xué)術(shù)論文中的軟件實(shí)體進(jìn)行識(shí)別和量化分析, 也有助于豐富和拓展信息計(jì)量學(xué)的研究對(duì)象, 還可以為其他知識(shí)實(shí)體的識(shí)別和計(jì)量提供方法參考。

軟件實(shí)體在學(xué)術(shù)論文中的分布非常稀疏, 邊界不清晰且形式多變, 識(shí)別難度較大。早期的軟件實(shí)體的識(shí)別大多基于人工或規(guī)則。基于人工的識(shí)別方法具有可靠性高的優(yōu)點(diǎn), 但是十分耗費(fèi)時(shí)間成本和人力成本, 難以滿足多領(lǐng)域大規(guī)模的軟件識(shí)別需求?;谝?guī)則和詞典的方法相較于人工識(shí)別能夠節(jié)省人力, 但是其可擴(kuò)展性并不高。首先, 規(guī)則的制定與詞典的生成依賴相關(guān)領(lǐng)域?qū)<乙庖姡?規(guī)則和詞典規(guī)模的擴(kuò)大通??梢蕴岣吣P偷淖R(shí)別準(zhǔn)確率和召回率,但這給專家構(gòu)建規(guī)則帶來了更大負(fù)擔(dān); 其次, 不同研究領(lǐng)域制定的規(guī)則和詞典往往難以被其他領(lǐng)域利用, 其可擴(kuò)展性有限; 最后, 對(duì)于軟件實(shí)體識(shí)別領(lǐng)域而言, 提及軟件的模式多變以及新軟件的不斷涌現(xiàn)使得制定普適性的軟件識(shí)別規(guī)則十分困難。鑒于此, 近年來一些學(xué)者使用機(jī)器學(xué)習(xí)和深度學(xué)習(xí)方法來自動(dòng)識(shí)別軟件實(shí)體。然而, 需要大量人工標(biāo)注數(shù)據(jù)訓(xùn)練模型的有監(jiān)督的機(jī)器學(xué)習(xí)方法也存在耗時(shí)長(zhǎng)的缺點(diǎn), 不適合用來處理多領(lǐng)域大規(guī)模的軟件識(shí)別任務(wù)。深度學(xué)習(xí)方法可以自動(dòng)學(xué)習(xí)詞匯語(yǔ)義、上下文依賴關(guān)系等, 已成為識(shí)別命名實(shí)體的一種較為有效的方法[8-10] 。因此, 一些學(xué)者嘗試將深度學(xué)習(xí)方法引入軟件實(shí)體識(shí)別領(lǐng)域。例如, Schindler D 等[11]在自建的社會(huì)科學(xué)研究語(yǔ)料庫(kù)上, 使用BiLSTMCRF進(jìn)行訓(xùn)練以識(shí)別軟件名稱, 孫超[12] 使用Glove-BiLSTM-CRF、BERT-BiLSTM-CRF 和BERT-BiL?STM-GCN-CRF 模型對(duì)軟件工程文本中的軟件實(shí)體進(jìn)行識(shí)別。這些研究為基于學(xué)術(shù)論文全文的軟件實(shí)體識(shí)別任務(wù)提供了借鑒思路。

本研究以學(xué)術(shù)論文中的軟件實(shí)體為研究對(duì)象。首先, 通過軟件實(shí)體定義和BIO 標(biāo)注構(gòu)建軟件實(shí)體識(shí)別領(lǐng)域語(yǔ)料庫(kù); 然后, 在此基礎(chǔ)上提出改進(jìn)的SciBERT-BiLSTM-CRF-wordMixup 模型并對(duì)該模型的識(shí)別效果進(jìn)行評(píng)估。此外, 本研究還針對(duì)人工標(biāo)注語(yǔ)料庫(kù)耗時(shí)耗力問題, 設(shè)計(jì)一種基于小型知識(shí)庫(kù)的程序輔助標(biāo)注方案。

1相關(guān)工作概述

命名實(shí)體識(shí)別(Named Entity Recognition,NER)是自然語(yǔ)言處理中的一個(gè)重要基礎(chǔ)任務(wù), 旨在從非結(jié)構(gòu)化文本中識(shí)別出人名、地名、事件名等具有特定含義的實(shí)體并加以歸類, 對(duì)句法分析、文本分類、機(jī)器翻譯等許多自然語(yǔ)言處理下游任務(wù)均具有重要的支撐作用[13] 。命名實(shí)體識(shí)別方法主要包括基于人工識(shí)別、基于規(guī)則和詞典提取、基于傳統(tǒng)機(jī)器學(xué)習(xí)和基于深度學(xué)習(xí)的抽取方法。軟件實(shí)體不是人名、地名、機(jī)構(gòu)名、時(shí)間、日期、貨幣和百分比這些傳統(tǒng)意義上的命名實(shí)體,軟件實(shí)體形式多樣, 在學(xué)術(shù)論文中邊界不清晰, 提及軟件實(shí)體的模式多變, 且提及軟件的模式也常被用來提及實(shí)驗(yàn)儀器設(shè)備和化學(xué)試劑等, 自動(dòng)識(shí)別難度較大。因此, 一些學(xué)者采用人工對(duì)有限數(shù)量論文中的軟件實(shí)體進(jìn)行識(shí)別。例如, Li K 等[14]為探究PLOS ONE 期刊論文中的R包引用情況, 對(duì)391篇抽樣論文全文文本中的R包進(jìn)行人工識(shí)別; Yang B等[15] 采用人工對(duì)生物信息學(xué)領(lǐng)域期刊論文全文中的軟件實(shí)體進(jìn)行識(shí)別, 并據(jù)此探究科學(xué)軟件對(duì)生物信息學(xué)研究的重要性; 孟文靜等[16] 采用人工方法對(duì)圖書情報(bào)學(xué)國(guó)際期刊論文中使用的Python軟件包進(jìn)行標(biāo)注, 并據(jù)此探究Python 軟件工具在圖書情報(bào)學(xué)領(lǐng)域的應(yīng)用擴(kuò)散過程。人工識(shí)別軟件實(shí)體具有可靠性高的優(yōu)點(diǎn), 但十分耗費(fèi)時(shí)間和人力, 該方法通常僅適用于樣本數(shù)量有限的小規(guī)模研究, 不太適用于針對(duì)多學(xué)科大規(guī)模文本數(shù)據(jù)的軟件識(shí)別任務(wù)。

基于規(guī)則和詞典的命名實(shí)體識(shí)別方法比人工識(shí)別方法效率高, 但由于軟件種類繁多, 目前尚無(wú)軟件詞典可用且新軟件不斷涌現(xiàn), 基于規(guī)則和詞典的方法難以很好地完成軟件實(shí)體識(shí)別任務(wù)。因此, 一些學(xué)者將基于規(guī)則和詞典的方法與機(jī)器學(xué)習(xí)方法相結(jié)合來識(shí)別非結(jié)構(gòu)化自由文本中的軟件、數(shù)據(jù)庫(kù)等有價(jià)值命名實(shí)體。例如, Thelen M 等[17] 提出了一種基于自擴(kuò)展的命名實(shí)體識(shí)別方法, 該方法只需要少量的種子詞和一個(gè)未標(biāo)注文本語(yǔ)料庫(kù)作為輸入。此后, 一些學(xué)者對(duì)該算法進(jìn)行改進(jìn)以提高算法性能。Yangarber R 等[18] 設(shè)計(jì)出模式精度和模式信度等指標(biāo)來過濾識(shí)別出來的模式和實(shí)體, 以提高算法精度。然而, 刪除小于一定閾值的模式會(huì)導(dǎo)致實(shí)體抽取的低召回率。Gupta S 等[19] 通過預(yù)判未標(biāo)注實(shí)體的標(biāo)簽來提高基于自擴(kuò)展的命名實(shí)體識(shí)別算法的性能。但是該算法需要借助外部領(lǐng)域詞典完成預(yù)判工作,并且該算法將高分模式抽取出的實(shí)體全部默認(rèn)為正確實(shí)體, 無(wú)法從中識(shí)別出錯(cuò)誤實(shí)體。Duck G 等[20]于2013 年開發(fā)了一種基于規(guī)則的命名實(shí)體識(shí)別器bioNerDS, 用于從生物信息學(xué)原始文獻(xiàn)中抽取數(shù)據(jù)庫(kù)和軟件名稱, F1 值位于63%~91%區(qū)間。Duck G等[21] 于2015 年對(duì)之前提出的針對(duì)數(shù)據(jù)庫(kù)和軟件實(shí)體的識(shí)別算法進(jìn)行改進(jìn), 實(shí)驗(yàn)結(jié)果表明, 基于詞典的方法F1 值為46%, 而機(jī)器學(xué)習(xí)方法在嚴(yán)格匹配和寬松匹配模式下的F1 值分別達(dá)63%和70%。Pan XL等[6] 借鑒Thelen M 等[17] 和Gupta S等[19] 的命名實(shí)體識(shí)別算法, 提出一種改進(jìn)的基于自擴(kuò)展的軟件實(shí)體自動(dòng)識(shí)別算法, 該算法對(duì)PLOS ONE 期刊論文文本中的軟件實(shí)體進(jìn)行識(shí)別, 識(shí)別效果(F1 值)為58%。

隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展和應(yīng)用的日益拓展, 一些學(xué)者開始將深度學(xué)習(xí)方法應(yīng)用于軟件實(shí)體識(shí)別任務(wù), 以提高識(shí)別效果。例如, Schindler D 等[11]在自建的社會(huì)科學(xué)研究語(yǔ)料庫(kù)上, 使用BiLSTMCRF進(jìn)行訓(xùn)練以識(shí)別軟件名稱, 該算法在測(cè)試集上的F1 值達(dá)82%。Lopez P 等[22] 使用CRF、BiL?STM-CRF(包括未加入特征、加入特征、加入EL?MO)、BERT-CRF 以及SCIBERT-CRT 模型對(duì)軟件實(shí)體進(jìn)行識(shí)別, 各模型在實(shí)驗(yàn)語(yǔ)料上的F1 值分別為66.3%、69.8%、69.3%、71.6%、65.3%和74.6%。孫超[12] 使用Glove-BiLSTM-CRF、BERT-BiLSTMCRF和BERT-BiLSTM-GCN-CRF 模型對(duì)軟件工程文本中的軟件實(shí)體進(jìn)行識(shí)別, 3 個(gè)模型對(duì)軟件實(shí)體的整體識(shí)別F1 值分別為67.37%、79.51%和79.60%。Zhang H 等[23] 基于SciBERT 和級(jí)聯(lián)二元標(biāo)注框架構(gòu)建了技術(shù)相關(guān)實(shí)體識(shí)別模型, 模型對(duì)自然語(yǔ)言處理領(lǐng)域論文中方法、數(shù)據(jù)集、指標(biāo)和工具4 種技術(shù)相關(guān)實(shí)體的整體識(shí)別F1 值為87%, 但文章并未給出模型對(duì)工具類實(shí)體的識(shí)別效果。章成志等[24] 使用CRF、BiLSTM-CRF、BERT-CRF、SciBERT-CRF模型對(duì)自然語(yǔ)言處理領(lǐng)域?qū)W術(shù)論文中的方法實(shí)體進(jìn)行識(shí)別, 4 個(gè)模型對(duì)工具實(shí)體的整體識(shí)別F1 值分別為27%、38%、56%和57%。深度學(xué)習(xí)方法已證實(shí)在軟件實(shí)體識(shí)別任務(wù)中的適用性, 但已有研究構(gòu)建的識(shí)別模型F1 值大多在80%以下, 模型識(shí)別效果有待進(jìn)一步提升。

2語(yǔ)料庫(kù)與識(shí)別模型構(gòu)建

2.1語(yǔ)料來源

本研究主要涉及兩個(gè)語(yǔ)料來源,一是SchindlerD等[25] 的公開數(shù)據(jù)集SoMeSci ( Version 0.2, ht?tps:/ / zenodo. org/record/4968738#.Yf9D49FBzb0),二是基于PLOS ONE期刊學(xué)術(shù)論文構(gòu)建的樣本庫(kù)PLoSSo。SoMeSci 是人工基于PubMed Center 開放獲取子集收錄的生物醫(yī)學(xué)領(lǐng)域?qū)W術(shù)論文文本構(gòu)建的語(yǔ)料庫(kù), 包含論文“方法部分” 文檔、“全文文本”文檔等多個(gè)原始文本及對(duì)應(yīng)標(biāo)注文件。PubMed Cen?ter 是生物醫(yī)學(xué)領(lǐng)域開放獲取出版物的優(yōu)質(zhì)來源,覆蓋率高, 且已被Du C等[26] 和Duck G 等[27] 多位學(xué)者用作軟件提及黃金標(biāo)準(zhǔn)數(shù)據(jù)集構(gòu)建和軟件使用研究的語(yǔ)料來源。相較其他軟件公開數(shù)據(jù)集, So?MeSci 對(duì)軟件實(shí)體的標(biāo)注更為細(xì)致, 在對(duì)軟件實(shí)體類別進(jìn)行細(xì)分的同時(shí)還對(duì)軟件使用類型進(jìn)行劃分,并對(duì)軟件的版本、發(fā)布時(shí)間、開發(fā)者等相關(guān)信息加以標(biāo)注。前人研究[28] 表明, 大部分軟件實(shí)體出現(xiàn)在學(xué)術(shù)文章的方法部分, 因此, 本研究選擇SoMeSci數(shù)據(jù)集中學(xué)術(shù)論文方法部分的數(shù)據(jù)(包括480 篇方法部分原始文本數(shù)據(jù)及其對(duì)應(yīng)標(biāo)注數(shù)據(jù))作為正例補(bǔ)充。為擴(kuò)展語(yǔ)料庫(kù)的適用范圍, 本研究還選擇PLOS ONE 期刊刊載的學(xué)術(shù)論文作為新增語(yǔ)料來源,使用自編Python 程序抽取章節(jié)名包含“Method”的段落文本構(gòu)建樣本庫(kù)PLoSSo, 該樣本庫(kù)包括6 114篇論文, 12 280個(gè)段落, 64 577個(gè)句子。選擇PLOS ONE 作為新增語(yǔ)料來源, 一方面是因?yàn)椋校蹋希?ONE 是開放獲取期刊且其刊載了數(shù)量可觀的生物學(xué)、醫(yī)學(xué)、計(jì)算機(jī)科學(xué)、社會(huì)科學(xué)、工程技術(shù)等多學(xué)科學(xué)術(shù)論文, 另一方面是因?yàn)榭梢酝ㄟ^PLOS ONE 出版商提供的公共API 快速獲取適合機(jī)器處理的期刊論文全文本數(shù)據(jù)且該期刊的全文本數(shù)據(jù)已被Pan X L 等[7] 、Schindler D 等[11] 和Li K等[14] 多位學(xué)者用作軟件識(shí)別研究以及軟件黃金標(biāo)準(zhǔn)數(shù)據(jù)集構(gòu)建的語(yǔ)料來源。

2.2數(shù)據(jù)標(biāo)注

標(biāo)注好的數(shù)據(jù)才能輸入到機(jī)器學(xué)習(xí)模型和深度學(xué)習(xí)模型中, 使模型理解其蘊(yùn)含的語(yǔ)義信息[29] 。在進(jìn)行數(shù)據(jù)標(biāo)注前, 本研究參考Li K 等[30] 、SchindlerD 等[31] 的軟件類別劃分方法將軟件劃分為應(yīng)用程序(Application)、插件(PlugIn)、操作系統(tǒng)(Oper?ating System)、編程環(huán)境( Programming Environ?ment)四大類別。其中, 應(yīng)用程序指的是為終端用戶設(shè)計(jì)的獨(dú)立程序, 對(duì)應(yīng)用程序的使用通常會(huì)產(chǎn)出數(shù)據(jù)或項(xiàng)目文件的結(jié)果, 如Excel、Stata 等, Web端的應(yīng)用程序也包含在此類別中。插件指的是對(duì)于軟件的擴(kuò)充, 而其本身不能單獨(dú)存在使用, 例如Ggplot2 是R 的一個(gè)繪圖擴(kuò)展包, 并不能脫離于R這個(gè)平臺(tái)單獨(dú)成為一個(gè)軟件工具。操作系統(tǒng)是一種特殊類型的軟件, 是用來管理計(jì)算機(jī)所有硬件且執(zhí)行所有軟件進(jìn)程的軟件。編程環(huán)境指的是一個(gè)圍繞編程語(yǔ)言構(gòu)建的集成環(huán)境, 用于設(shè)計(jì)程序或腳本,通常包括編譯器和解釋器, 如C 語(yǔ)言環(huán)境等。

除了對(duì)軟件類型加以劃分外, 本研究還參考軟件使用和提及相關(guān)研究[25,32] 將軟件提及類型劃分為使用(Usage)、提及(Mention)、沉積(Deposi?tion)、創(chuàng)造(Creation)四大類。其中, 使用指的是科研人員在其研究過程中所使用的軟件, 如“本研究所有分析均使用SPSS 軟件完成”。提及指的是科研人員在學(xué)術(shù)文章中提到但實(shí)際并沒有使用到當(dāng)前研究中的軟件。沉積指的是科研人員在研究過程中根據(jù)自身研究需求對(duì)軟件進(jìn)行的調(diào)整、優(yōu)化或更新等工作。創(chuàng)造指的是科研人員在研究過程中產(chǎn)出了新的軟件, 較可能出現(xiàn)于提出技術(shù)創(chuàng)新的學(xué)術(shù)文章中。此外, 本研究還對(duì)軟件的屬性特征進(jìn)行定義, 歸納出如下8 種常見的屬性特征: 開發(fā)者(De?veloper)、版本(Version)、URL、引用信息(Citation)、縮寫(Abbreviation)、別名(Alternative Name)、擴(kuò)展信息(Extension)和發(fā)布(Release)。

合適的標(biāo)注工具能夠幫助標(biāo)注人員更加便捷、快速地完成相應(yīng)的語(yǔ)料文本標(biāo)注任務(wù)。因此, 本研究在進(jìn)行數(shù)據(jù)標(biāo)注前對(duì)常用的標(biāo)注工具進(jìn)行比較分析, 據(jù)此選擇能夠滿足本研究的標(biāo)注需求、易用且操作體驗(yàn)較好的Markup 在線標(biāo)注平臺(tái)(https://get?markup.com/)作為標(biāo)注工具。

在標(biāo)注模式方面, 本研究使用命名實(shí)體識(shí)別領(lǐng)域常用的BIO 標(biāo)注法。BIO標(biāo)注法是CoNLL-2003采用的標(biāo)注法, 其中B 表示Begin, I 表示Inside,O表示Outside。以“Tom Hanks is My Name” 為例,Tom 的標(biāo)注即為B -PER, Hanks 的標(biāo)注即為IPER,其他3 個(gè)詞由于與所要提取的實(shí)體無(wú)關(guān), 因此皆標(biāo)注為O。將BIO 標(biāo)注法與上述標(biāo)注類型定義相結(jié)合共產(chǎn)生41 個(gè)標(biāo)簽, 如圖1 所示。其中, 應(yīng)用程序和插件分別對(duì)應(yīng)4 種提及類型, 即Applica?tion_Usage、Application_Mention、Application_Depo?sition、Application_Creation、PlugIn_Usage、PlugIn_Mention、PlugIn_Deposition 和PlugIn_Creation, 而操作系統(tǒng)和編程環(huán)境在實(shí)際情況中較少會(huì)出現(xiàn)沉積以及創(chuàng)造類型, 因而對(duì)其設(shè)定兩種提及類型, 即OperatingSystem_ Mention、OperatingSystem _ Usage、ProgrammingEnvironment_ Mention、ProgrammingEn?vironment_Usage。

為節(jié)省標(biāo)注人力和標(biāo)注時(shí)間, 本研究設(shè)計(jì)了一種基于小型知識(shí)庫(kù)的程序輔助標(biāo)注方案, 如圖2 所示。需要說明的是, 該標(biāo)注方案中的知識(shí)庫(kù)概念并非目前學(xué)術(shù)界廣泛使用的知識(shí)庫(kù)概念, 而是采用了狹義的知識(shí)庫(kù)定義, 即一個(gè)知識(shí)合集[33],后續(xù)可隨著標(biāo)注語(yǔ)料的不斷擴(kuò)充對(duì)知識(shí)進(jìn)行增補(bǔ)。本研究首先對(duì)軟件實(shí)體識(shí)別領(lǐng)域的公開數(shù)據(jù)集以及前期相關(guān)實(shí)驗(yàn)產(chǎn)生的數(shù)據(jù)集進(jìn)行收集, 并編寫程序?qū)σ褬?biāo)注的軟件實(shí)體及其相關(guān)信息進(jìn)行合并去重; 其次,將相應(yīng)實(shí)體與參考標(biāo)注類型進(jìn)行關(guān)聯(lián), 形成“詳例—類型” 列表, 并對(duì)其中的軟件實(shí)體進(jìn)行篩選生成“名稱—類型” 的標(biāo)注知識(shí)(如ViewPoint—Application_Usage)。對(duì)屬于多個(gè)類型的軟件實(shí)體進(jìn)行標(biāo)注時(shí), 優(yōu)先考慮選擇標(biāo)注頻次最高的類型。經(jīng)過上述處理, 一共獲得865個(gè)消歧后的軟件實(shí)體名稱, 1 364個(gè)包含開發(fā)者等信息的標(biāo)注參考數(shù)據(jù)和621個(gè)聚焦于軟件“名稱—類型” 標(biāo)注參考數(shù)據(jù)。

在標(biāo)注方案的主流程部分, 本研究首先使用自編Python程序?qū)⑺x的樣本庫(kù)與上述所建小型知識(shí)庫(kù)中的信息加以匹配, 同時(shí)生成待標(biāo)注文檔和標(biāo)注參考表格供后續(xù)使用,如圖2 所示。然后, 將待標(biāo)注文檔導(dǎo)入Markup在線標(biāo)注平臺(tái), 并依據(jù)上一步驟得到的標(biāo)注參考表格對(duì)待標(biāo)注文檔進(jìn)行人工標(biāo)注。按此標(biāo)注流程對(duì)上述基于PLOS ONE期刊學(xué)術(shù)論文自建的樣本庫(kù)PLoSSo 進(jìn)行標(biāo)注, 共得到3634個(gè)實(shí)體。需要指出的是, 為控制標(biāo)注質(zhì)量, 先由一名擁有軟件標(biāo)注經(jīng)驗(yàn)的老師擬定軟件實(shí)體標(biāo)注規(guī)范, 再由一名情報(bào)學(xué)專業(yè)三年級(jí)碩士研究生對(duì)語(yǔ)料進(jìn)行先后兩輪的標(biāo)注, 隨后由老師和碩士研究生對(duì)兩輪標(biāo)注結(jié)果中不一致的地方進(jìn)行討論決定一致標(biāo)注結(jié)果。最后, 將處理后的SoMeSci 標(biāo)注結(jié)果與PLoSSo 的標(biāo)注結(jié)果進(jìn)行合并, 形成最終實(shí)驗(yàn)所用的黃金標(biāo)準(zhǔn)數(shù)據(jù)集。實(shí)驗(yàn)數(shù)據(jù)集共包括6 773個(gè)實(shí)體, 各類別實(shí)體數(shù)量分布情況如表1 所示, 學(xué)術(shù)論文對(duì)應(yīng)用程序、插件、操作系統(tǒng)、編程環(huán)境4 種類型軟件的提及和使用存在明顯差別。應(yīng)用程序在學(xué)術(shù)論文中得到了更多的提及和使用, 兩個(gè)數(shù)據(jù)集共標(biāo)注“Ap?plication”類型的軟件實(shí)體2472個(gè)(占實(shí)體總數(shù)的36.50%),其中“Application_Usage” 類型實(shí)體個(gè)數(shù)最多(2 359個(gè)),“Application_Mention”類型實(shí)體個(gè)數(shù)次之(97 個(gè)), 而“Application_Creation”和“Application_Deposition” 類型實(shí)體則相對(duì)較少(共16 個(gè))。較之應(yīng)用程序, 學(xué)術(shù)論文對(duì)其他三類軟件的提及和使用較少。其中, 編程環(huán)境類軟件實(shí)體有463個(gè), 插件類軟件實(shí)體有428 個(gè), 操作系統(tǒng)類軟件實(shí)體有81 個(gè)。編程環(huán)境和插件類軟件實(shí)體數(shù)量相當(dāng)可能是因?yàn)樽髡咛峒熬唧w插件的同時(shí)通常也會(huì)提及其所在編程環(huán)境, 例如R 和“lme4”常在同一句話中出現(xiàn)。此外, 作者更傾向于提及軟件的版本(1 250個(gè), 占比36.30%) 和開發(fā)者(888?jìng)€(gè),25.78%)信息,而較少提及其URL、發(fā)布等其他相關(guān)信息。

2.3基于SciBERT-BiLSTM-CRF-wordMixup的軟件實(shí)體識(shí)別模型

通過對(duì)已有軟件實(shí)體識(shí)別相關(guān)研究進(jìn)行調(diào)研發(fā)現(xiàn), 現(xiàn)有基于深度學(xué)習(xí)的軟件實(shí)體識(shí)別研究的實(shí)驗(yàn)框架主要包括CRF、BiLSTM-CRF、BERT-CRF、Sci?BERT-CRF 4 種組合類型[9,11,14,27,34] , 涉及LSTM、CRF、BERT 3 種基礎(chǔ)模型。其中, LSTM 模型, 又稱長(zhǎng)短期記憶網(wǎng)絡(luò)(Long Short-Term Memory)模型,是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Net?works, RNN)模型。LSTM 模型在RNN 模型的基礎(chǔ)上加入遺忘門、輸入門以及輸出門來控制信息的遺忘、保存以及輸出[35] 。然而,單向的LSTM 模型只能考慮到先前的輸入信息對(duì)當(dāng)前內(nèi)容的影響, 但文本序列中, 一個(gè)詞語(yǔ)的出現(xiàn)可能與上下文信息都密切相關(guān)。因此, 為了包含下文信息的影響, 在網(wǎng)絡(luò)結(jié)構(gòu)中再加入一層LSTM 構(gòu)成雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Bidirectional Long Short-Term Memory Network,BiLSTM)。BiLSTM 由負(fù)責(zé)從前往后掃描上文信息的向前LSTM 層和負(fù)責(zé)從后往前掃描下文信息的后向LSTM 層組成, 最后以向前LSTM 層與后向LSTM 層的輸出結(jié)合計(jì)算得到最終的輸出結(jié)果[36] ??紤]到本研究是基于詞的軟件實(shí)體自動(dòng)識(shí)別, 在模型訓(xùn)練中需要同時(shí)考慮當(dāng)前詞的上下文信息, 因此, 本研究選擇BiLSTM 模型而非LSTM 模型, 以提高軟件實(shí)體識(shí)別的準(zhǔn)確性。CRF 模型, 又稱條件隨機(jī)場(chǎng)(Conditional Random Fields)模型, 是由Lafferty J D等[37] 于2001 年提出的一個(gè)通過建立概率模型獲取和標(biāo)記序列數(shù)據(jù)的模型, 其通過將所有特征進(jìn)行全局歸一化來得到全局最優(yōu)解, 能夠較好地解決標(biāo)記偏置等問題[37-38] 。雖然BiLSTM 能夠?qū)W習(xí)到當(dāng)前詞的上下文信息, 但不會(huì)考慮前后輸出結(jié)果之間的關(guān)系, 這可能導(dǎo)致預(yù)測(cè)錯(cuò)誤。鑒于此, 一些學(xué)者在BiLSTM 的輸出層后再加入一層CRF 結(jié)構(gòu)(即BiL?STM-CRF模型)來獲取前后輸出結(jié)果之間的關(guān)系,以確保最終預(yù)測(cè)結(jié)果是有效的、符合邏輯的, 從而提高預(yù)測(cè)序列的準(zhǔn)確度[10] 。BERT 是由谷歌AI 團(tuán)隊(duì)于2018 年發(fā)布的以Transformer 雙向編碼器表示的一種新的語(yǔ)言表征模型, 該模型可以獲取語(yǔ)境化的詞向量, 在包括命名實(shí)體識(shí)別在內(nèi)的多項(xiàng)自然語(yǔ)言處理任務(wù)上表現(xiàn)優(yōu)異[39] 。近年來, 一些學(xué)者將BERT 與BiLSTM-CRF 相結(jié)合形成混合模型BERTBiLSTM-CRF 以提升命名實(shí)體識(shí)別性能[40-42] 。

綜合考慮上述模型的優(yōu)缺點(diǎn)以及相關(guān)命名實(shí)體識(shí)別的實(shí)驗(yàn)結(jié)果, 本研究選擇在命名實(shí)體識(shí)別任務(wù)上表現(xiàn)較好的BiLSTM-CRF 模型作為基線, 然后引入BERT 預(yù)訓(xùn)練語(yǔ)言模型。為了更好地對(duì)比模型識(shí)別效果, 分別進(jìn)行單獨(dú)的BERT 訓(xùn)練以及將BERT加入基線模型的BERT-BiLSTM-CRF模型訓(xùn)練。本文使用的BERT-BiLSTM-CRF 模型包括3 個(gè)模塊, 總體結(jié)構(gòu)如圖3所示。首先, 利用BERT 預(yù)訓(xùn)練語(yǔ)言模型將原始輸入文本轉(zhuǎn)換為相應(yīng)的詞向量;然后, 將得到的詞向量輸入到BiLSTM 中以進(jìn)一步提取輸入文本的上下文特征; 最后, 使用CRF模塊對(duì)BiLSTM 模塊的輸出結(jié)果進(jìn)行解碼并輸出具有最高概率的標(biāo)注序列。

本研究在BERT-BiLSTM-CRF模型框架基礎(chǔ)上進(jìn)行優(yōu)化, 主要包括數(shù)據(jù)層面以及模型層面兩方面的優(yōu)化工作, 具體優(yōu)化設(shè)計(jì)如圖4 所示。本研究在數(shù)據(jù)層面分別使用BERT 和SciBERT 詞向量訓(xùn)練模型獲取模型輸入數(shù)據(jù)的特征表示, 再依據(jù)識(shí)別實(shí)驗(yàn)結(jié)果擇優(yōu)選擇。之所以分別嘗試BERT 和SciB?ERT,是因?yàn)榭紤]到SciBERT是Beltagy I 等[43] 于2019 年提出的用于尋找與新冠肺炎相關(guān)文章的算法模型, 該模型是由醫(yī)學(xué)以及計(jì)算機(jī)科學(xué)領(lǐng)域共計(jì)114 萬(wàn)篇學(xué)術(shù)文章預(yù)訓(xùn)練而來, 可能更適用于本研究的自然語(yǔ)言處理任務(wù)。

考慮到本研究的訓(xùn)練數(shù)據(jù)規(guī)模較小, 神經(jīng)網(wǎng)絡(luò)模型在此情況下可能會(huì)出現(xiàn)過擬合的問題, 在數(shù)據(jù)層面引入R-Drop 以防止模型過擬合, 增強(qiáng)模型魯棒性和泛化性。R-Drop[44] 將Dropout兩次的想法應(yīng)用在有監(jiān)督文本分類任務(wù)上, 在常規(guī)交叉熵的基礎(chǔ)上加上一項(xiàng)強(qiáng)化模型魯棒性的正則項(xiàng), 用以彌補(bǔ)Dropout帶來的訓(xùn)練模型以及測(cè)試模型的不一致性。結(jié)合R-Drop的模型如圖5 所示, 每個(gè)訓(xùn)練樣本會(huì)經(jīng)過兩次向前傳播, 從而得到兩次預(yù)測(cè)輸出。具體計(jì)算公式如式(1) ~(3) 所示:

此外, 為解決數(shù)據(jù)匱乏的問題, 在模型層面引入Mixup[45] 進(jìn)行數(shù)據(jù)增強(qiáng)。之所以不選擇常用的EDA(Easy Data Augmentation)作為本研究的數(shù)據(jù)增強(qiáng)方法, 是因?yàn)椋牛模?包含的同義詞替換、隨機(jī)插入、隨機(jī)交換、隨機(jī)刪除4 種操作都有可能破壞命名實(shí)體的合法性, 從而使得數(shù)據(jù)集出現(xiàn)謬誤[46] , 這導(dǎo)致其不適用于命名實(shí)體識(shí)別任務(wù)。而Mixup 是從計(jì)算機(jī)視覺領(lǐng)域引入的一種數(shù)據(jù)增強(qiáng)方法。Guo HY 等[47] 將Mixup 引入到NLP 領(lǐng)域, 提出了將Mix?up 應(yīng)用于句子分類任務(wù)的兩種策略, 一種是基于句子的senMixup, 一種是基于詞的wordMixup。由于命名實(shí)體識(shí)別任務(wù)需要對(duì)每個(gè)單詞進(jìn)行分類, 本研究選擇基于詞的wordMixup。

3實(shí)驗(yàn)

3.1實(shí)驗(yàn)設(shè)定

本研究以Google Research 團(tuán)隊(duì)開發(fā)的Colabo?ratory(https://colab.research.google.com/ , 簡(jiǎn)稱Co?lab)為實(shí)驗(yàn)環(huán)境。Colab 是一種托管式Jupyter 筆記本服務(wù), 用戶可以通過Colab 使用免費(fèi)的GPU 等計(jì)算資源, 減少了很多環(huán)境配置問題。本研究各項(xiàng)實(shí)驗(yàn)均在Python 3.8.5 環(huán)境下編寫運(yùn)行。數(shù)據(jù)處理部分主要涉及Pandas、Numpy、Stanza 等軟件庫(kù), 其中, Stanza ( v1.4.2, https://stanfordnlp. github. io/stanza/ installation_usage.html)是斯坦福大學(xué)自然語(yǔ)言處理組開發(fā)的一個(gè)純Python 版本的深度學(xué)習(xí)NLP 工具包, 被用來對(duì)本研究的學(xué)術(shù)論文文本數(shù)據(jù)進(jìn)行分詞處理。神經(jīng)網(wǎng)絡(luò)模型部分采用Facebook人工智能研究院開發(fā)的開源軟件庫(kù)PyTorch 框架實(shí)現(xiàn)。相較于被廣泛使用的Tensorflow 框架, PyTorch是更Python 化的框架, 具有內(nèi)置的動(dòng)態(tài)DAG, 可以隨時(shí)定義、隨時(shí)更改、隨時(shí)執(zhí)行節(jié)點(diǎn), 相當(dāng)靈活且易用性好, 還在代碼理解等方面表現(xiàn)優(yōu)異。

本實(shí)驗(yàn)中的BiLSTM 模型和BERT 模型的關(guān)鍵參數(shù)設(shè)置如表2 所示。其中, BiLSTM 模型的關(guān)鍵參數(shù)設(shè)置如下: 學(xué)習(xí)率(learning_rate)設(shè)為1e-4,詞向量維度(embedding_dim)設(shè)為100, 編碼層隱藏層大?。ǎ瑁椋洌洌澹睿撸洌椋恚┰O(shè)為256,單次訓(xùn)練樣本數(shù)(batch_size) 為64, 優(yōu)化器(optimizer) 為Adam,Dropout 比例設(shè)為0. 5, 訓(xùn)練迭代次數(shù)(epochs)設(shè)為1000。BERT 模型的關(guān)鍵參數(shù)設(shè)置如下: 學(xué)習(xí)率(learning_rate)設(shè)為4e-5, 預(yù)熱學(xué)習(xí)率(warmup_proportion)設(shè)為0.1, 單次訓(xùn)練樣本數(shù)(batch_size)為64,Dropout 比例設(shè)為0. 5, 訓(xùn)練迭代次數(shù)(ep?ochs)設(shè)為100。此外, 本實(shí)驗(yàn)將數(shù)據(jù)集按照0.70∶0.15∶0.15的比例劃分為訓(xùn)練集、測(cè)試集和驗(yàn)證集。進(jìn)行3次實(shí)驗(yàn), 最后?。?次實(shí)驗(yàn)結(jié)果的均值作為最終的實(shí)驗(yàn)結(jié)果。

3.2實(shí)驗(yàn)評(píng)估指標(biāo)

本研究選擇通用的命名實(shí)體識(shí)別評(píng)價(jià)指標(biāo), 即準(zhǔn)確率P、召回率R 和調(diào)和平均數(shù)F1 值對(duì)模型的識(shí)別效果進(jìn)行評(píng)估。準(zhǔn)確率指標(biāo)用來評(píng)估模型識(shí)別結(jié)果的準(zhǔn)確程度, 召回率指標(biāo)用來評(píng)估模型將正例正確識(shí)別的能力, F1 值用來評(píng)估模型的綜合性能,是對(duì)模型準(zhǔn)確率和召回率進(jìn)行綜合評(píng)價(jià)的指標(biāo)。3個(gè)評(píng)價(jià)指標(biāo)的計(jì)算公式如式(4) ~(6) 所示:

其中, T表示模型正確識(shí)別的實(shí)體數(shù)量, F表示模型識(shí)別錯(cuò)誤的實(shí)體數(shù)量, F 表示模型沒有檢測(cè)到的相關(guān)實(shí)體的個(gè)數(shù)。

3.3實(shí)驗(yàn)結(jié)果分析

軟件命名實(shí)體識(shí)別結(jié)果如表3 和表4 所示。表3列出了基線模型BiLSTM-CRF 在實(shí)驗(yàn)數(shù)據(jù)集上的軟件實(shí)體識(shí)別結(jié)果。從表3 可以看出, BiLSTM-CRF模型的整體F1 值為74%, 略低于Schindler D 等[11]基于SoMeSci 數(shù)據(jù)集的F1 值(76%)。這可能與本研究的軟件類別細(xì)化程度更高有關(guān), Schindler D 等[11]的研究是對(duì)軟件整體進(jìn)行識(shí)別, 而本研究是對(duì)軟件各細(xì)分類別進(jìn)行識(shí)別。從表3 還可以看出, 不同標(biāo)簽的識(shí)別效果具有較大差別。例如, “Citation” 的F1 值最低, 僅有51%, 而“Version” 和“Program?mingEnvironment_Usage” 的F1 值高達(dá)81%。此外,通過實(shí)驗(yàn)發(fā)現(xiàn), 樣本量很少的類別(如“Applica?tion_Creation” 等)容易出現(xiàn)無(wú)法識(shí)別出實(shí)體和結(jié)果較為振蕩的問題。

表4顯示了基于多種模型的軟件實(shí)體識(shí)別結(jié)果。從表4 可以看出, 相較于基線模型BiLSTMCRF,單純使用BERT 預(yù)訓(xùn)練模型所得的模型準(zhǔn)確率偏低(74.2%), 但在召回率上得到了較大幅度的提升, 整體F1 值提升了3.4%, 這說明BERT 預(yù)訓(xùn)練語(yǔ)言模型比傳統(tǒng)的word2vec 能更好地表示訓(xùn)練語(yǔ)料詞匯的語(yǔ)義信息。將BERT 與BiLSTM-CRF 結(jié)合之后的模型BERT-BiLSTM-CRF 對(duì)軟件實(shí)體的識(shí)別效果比單獨(dú)使用BiLSTM-CRF 或BERT 有較大提升, 準(zhǔn)確率和召回率均達(dá)到了80%以上, 整體F1 值提升超過5%。而將SciBERT 預(yù)訓(xùn)練語(yǔ)言模型和R-Drop引入基線模型得到的SciBERT-BiLSTMCRF模型的識(shí)別性能獲得進(jìn)一步提高, 各項(xiàng)評(píng)價(jià)指標(biāo)均提升了1~2 個(gè)百分點(diǎn), 說明在本研究的軟件實(shí)體識(shí)別任務(wù)中, SciBERT 和R-Drop 的結(jié)合使用能夠進(jìn)一步優(yōu)化識(shí)別效果。SciBERT-BiLSTMCRF模型引入wordMixup 后的改進(jìn)模型的識(shí)別性能得到進(jìn)一步提升, 改進(jìn)模型SciBERT-BiLSTM -CRF-wordMixup 的整體F1 值達(dá)到87.5%, 說明數(shù)據(jù)匱乏問題對(duì)軟件實(shí)體識(shí)別任務(wù)有較大影響, 在模型訓(xùn)練時(shí)有必要進(jìn)行數(shù)據(jù)增強(qiáng)處理。

本研究將改進(jìn)模型SciBERT-BiLSTM-CRFwordMixup在測(cè)試集上的識(shí)別結(jié)果與人工標(biāo)注結(jié)果進(jìn)行對(duì)比分析發(fā)現(xiàn), 該模型在識(shí)別軟件實(shí)體方面還存在一些不足: ①召回結(jié)果存在偏差, 包括召回信息不完全和召回多余信息等情況。例如, 在“AllStatistical Analyses Were Conducted Using SPSS22. ”中, 該模型將“SPSS22” 識(shí)別為軟件實(shí)體, 但實(shí)際上“SPSS” 為軟件實(shí)體, “22” 為版本信息, 由于模型將“SPSS22” 整體識(shí)別為軟件實(shí)體, 導(dǎo)致識(shí)別結(jié)果中的軟件版本信息遺漏?;蛘?, 模型將“Frequencies and Percentages Were Calculated UsingMicrosoft Excel Version 14.6.8” 中的“ MicrosoftExcel” 識(shí)別為軟件實(shí)體, 但實(shí)際上該句中的“Ex?cel” 為軟件實(shí)體, “Microsoft” 為開發(fā)商信息, 模型錯(cuò)誤地將軟件開發(fā)商信息也抽取進(jìn)軟件實(shí)體, 這會(huì)給后續(xù)的軟件實(shí)體消歧合并帶來困難; ②識(shí)別錯(cuò)誤, 主要涉及將硬件、操作設(shè)備、研究方法等實(shí)體錯(cuò)誤識(shí)別為軟件實(shí)體。例如, 模型將“For MultipleGroup Comparisons, We Used One-way ANOVA Fol?lowed by t Tests with Bonferroni Corrections” 中的“One-way ANOVA” 識(shí)別為軟件實(shí)體, 但實(shí)際上One-way ANOVA 是一種統(tǒng)計(jì)分析方法。針對(duì)上述發(fā)現(xiàn)的不足, 未來可以通過增加更多的標(biāo)注樣本和增加負(fù)反饋機(jī)制來提升識(shí)別效果。

4結(jié)論

本研究聚焦在科學(xué)研究中發(fā)揮著重要作用的軟件實(shí)體, 構(gòu)建了軟件黃金標(biāo)準(zhǔn)語(yǔ)料庫(kù)并提出改進(jìn)的軟件實(shí)體自動(dòng)識(shí)別模型SciBERT-BiLSTM-CRFwordMixup。在黃金標(biāo)準(zhǔn)語(yǔ)料庫(kù)構(gòu)建部分, 本研究先對(duì)軟件實(shí)體、軟件使用類型實(shí)體、軟件相關(guān)信息實(shí)體加以細(xì)化定義, 并按照BIO標(biāo)注法生成41個(gè)實(shí)體標(biāo)簽, 接著設(shè)計(jì)一種基于小型知識(shí)庫(kù)的程序輔助標(biāo)注方案幫助人工快速標(biāo)注語(yǔ)料, 最終基于PLOSONE 期刊論文文本構(gòu)建出共包含6 773個(gè)實(shí)體的軟件黃金標(biāo)準(zhǔn)語(yǔ)料庫(kù)。該語(yǔ)料庫(kù)可以為后續(xù)軟件識(shí)別實(shí)驗(yàn)所使用。在軟件實(shí)體識(shí)別模型優(yōu)化部分, 本研究將目前廣泛應(yīng)用于實(shí)體識(shí)別領(lǐng)域的BiLSTM-CRF模型作為基線模型, 測(cè)試其在本研究語(yǔ)料庫(kù)上的識(shí)別效果。接著對(duì)BiLSTM-CRF 基線模型加以優(yōu)化改進(jìn), 分別引入目前通用命名實(shí)體識(shí)別領(lǐng)域流行的BERT 模型和針對(duì)科學(xué)論文文本訓(xùn)練出的SciBERT模型來代替Word2vec 作為詞向量訓(xùn)練模型。然后,在數(shù)據(jù)層面引入R-Drop 以增強(qiáng)模型的魯棒性和泛化性, 在模型層面引入Mixup 進(jìn)行數(shù)據(jù)增強(qiáng)。實(shí)驗(yàn)結(jié)果表明, 在BiLSTM-CRF、BERT、BERT-BiL?STM-CRF、SciBERT-BiLSTM-CRF 和SciBERT -BiLSTM- CRF- wordMixu 5種模型中, SciBERT -BiLSTM-CRF-wordMixu模型在本研究語(yǔ)料庫(kù)上的識(shí)別表現(xiàn)最好, 其整體F1 值達(dá)到87.5%。這說明,本研究提出的改進(jìn)模型SciBERT-BiLSTM-CRF-wordMixup 能夠有效地從學(xué)術(shù)論文文本中識(shí)別出軟件及其相關(guān)信息實(shí)體。

本研究還存在一些不足之處。首先, 本研究?jī)H以PLOS ONE 期刊論文作為實(shí)驗(yàn)語(yǔ)料數(shù)據(jù), 數(shù)據(jù)集較小, 未來研究將擴(kuò)大數(shù)據(jù)集并在PLOS ONE 期刊論文以外的數(shù)據(jù)集上開展軟件實(shí)體識(shí)別, 以提升模型的泛化能力; 其次, 本研究提出的改進(jìn)模型的軟件實(shí)體識(shí)別性能尚有提升空間, 未來將考慮在改進(jìn)模型中引入注意力機(jī)制來提高模型的軟件實(shí)體識(shí)別性能。

旅游| 武川县| 广丰县| 临澧县| 罗田县| 舟山市| 轮台县| 鄱阳县| 隆昌县| 锡林郭勒盟| 阿合奇县| 浏阳市| 澜沧| 塘沽区| 通辽市| 大连市| 大田县| 南丹县| 苍溪县| 仁化县| 马鞍山市| 通许县| 公主岭市| 西盟| 中牟县| 清原| 山东省| 松桃| 宁乡县| 油尖旺区| 从化市| 固安县| 平果县| 阳高县| 辉县市| 阆中市| 土默特右旗| 资阳市| 佛坪县| 庆阳市| 思南县|