王雨婷
摘 要:目前文獻可視化平臺集中在文獻統計、共引關系分析上,缺乏對文獻研究趨勢的平臺設計。為了解決阿爾茲海默病文獻數量多、研究趨勢難以分析的問題,搭建了AD文獻計量分析可視化平臺。利用biopython提供的Entrez接口,爬取NCBI網站的AD相關文獻約12萬篇,并基于Echart實現了可視化。結果表明,區別于傳統文獻可視化平臺,該平臺展示了阿爾茲海默癥的文獻研究趨勢,可查看歷年論文統計信息、各國家論文數量隨時間相對變化趨勢、頂級期刊論文被引用數量隨時間變化趨勢、各國家熱門關鍵詞以及關鍵詞隨時間變化趨勢等。
關鍵詞:阿爾茲海默癥;Entrez;文獻計量;可視化
DOI:10.11907/rjdk.173010
中圖分類號:TP319
文獻標識碼:A 文章編號:1672-7800(2018)006-0111-05
Abstract:At present, the literature visualization platform is focused on the literature statistics and the analysis between the general relationship, but it lacks literature research trends platform design. The visualization platform of AD statistical analysis is constructed to solve the problems that the number of Alzheimer′s disease is large and the research trend is difficult to analyze. By using Entrez interface provided by biopython crawl about 12 million AD related literature on NCBI site, the platform achieves visualization based on echart.The results show that the platform is different from the traditional literature visualization platform, it shows the trend of literature research of Alzheimer′s disease, and the statistical information of the papers over the years, the relative trend of the number of papers in each country over time,the relative trend of the number of cited papers in top journals over time, the hot keywords of each country and the relative trend of the hot keyword over time can be reviewed.
Key Words:Alzheimer′s Disease; Entrez; bibliometrics; visualization
0 引言
阿爾茲海默癥(Alzheimer's Disease ,AD)是一種最常見的老年期癡呆疾病[1],主要癥狀為認知和行為功能不可逆的緩慢喪失,至今仍是重大慢性疾病領域唯一尚無法治愈的疾病[2-3]。目前AD相關文獻數量高達12萬篇,文獻數量多,研究趨勢難以分析。因此,需要借助文獻計量方法對文獻進行統計分析[4-5],并借助可視化手段展示分析結果。
在文獻分析平臺、軟件領域,焦宏官[6]初步研究了中國中醫藥期刊文獻數據庫在線分析平臺,該平臺主要實現了文獻統計、作者發文量統計以及作者合作關系分析,根據用戶需求展現結果,展示方式包括匯總圖、條形圖、拓撲圖、雷達圖、餅狀圖等。張震等[7]開發了基于Solr的大規模標準文獻可視化分析系統,實現了可以自由定制的數據統計功能以及對標準文獻起草人、起草機構的關聯分析功能。張少龍等[8]構建了專利文獻引用關聯的可視化系統,為企業或專利文獻檢索單位提供了參考。胡亮[9]設計了實時文獻作者共引可視化系統,為學者和科研人員提供引文的可視化查詢及分析平臺。
目前已有的文獻計量平臺集中在文獻數據統計以及共引關系分析上,缺乏針對研究趨勢的分析平臺。阿爾茲海默癥研究領域廣,不斷變化的研究熱點和不斷更新的研究發現導致其研究趨勢難以分析,而利用文獻計量可以很好地解決該問題[10-11]。該平臺主要實現了歷年論文統計信息可視化、各個國家發文量隨時間的相對變化趨勢可視化、頂級期刊論文被引用量隨時間相對變化趨勢可視化、各個國家熱門關鍵詞可視化和熱門關鍵詞隨時間相對變化趨勢可視化等。
1 可視化系統設計
1.1 系統架構
AD文獻計量分析可視化平臺主要針對海量的AD文獻進行相對變化趨勢分析,提取出有用信息并進行可視化,針對用戶的需求為用戶提供一個直觀的分析結果,以便科研工作者更方便地掌握有用信息。
該平臺包含4個子系統:爬蟲系統、數據存儲系統、數據分析處理系統、數據可視化系統。系統架構如圖1所示。
爬蟲系統抓取NCBI網站(NCBI是美國國立生物技術信息中心,其數據庫囊括最全面的生物相關文獻)上阿爾茲海默癥的全部相關文獻,用于接下來的數據存儲以及統計分析。
數據存儲系統對抓取的初始AD文獻進行解析存儲,并對用于文獻統計分析的數據進行存儲。爬蟲系統抓取的AD相關文獻初始為xml格式,將其全部存入非關系型數據庫mongodb中。利用beautifulsoup對初始文獻內容進行解析,以獲取本文研究需要的信息,將解析結果存入關系數據庫mysql。
數據分析處理系統分析了AD文獻的相對研究趨勢,包括文獻歷年統計信息分析、各國發文量變化趨勢分析、頂級期刊發文量變化趨勢分析、熱門關鍵詞分析以及熱門關鍵詞變化趨勢分析。根據分析需求,從mysql數據庫中提取相應的信息,進而利用python腳本進行統計分析。
數據可視化系統對數據分析結果進行可視化處理,為用戶提供可視化的選擇權利。本文采用Echars、ajax對分析結果進行可視化。其中歷年AD論文統計信息利用折線圖展現,各個國家發文量隨時間的相對變化趨勢、頂級期刊的論文被引用量隨時間的相對變化趨勢由堆疊區域圖或平鋪區域圖表示,各國熱門關鍵詞由詞云圖表示,各國研究的關鍵詞隨時間變化趨勢由直角坐標系中的熱力圖表示。
1.2 系統流程
系統流程分為數據爬取、數據存儲、數據分析處理、數據可視化4個步驟,如圖2所示。
2 系統功能實現
2.1 爬蟲實現
主要利用biopython的Bio.Entrez模塊以編程方式訪問Entrez,用python腳本實現對相關數據庫的搜索以及數據下載,批量抓取NCBI網站上相關AD文獻12萬篇。
2.1.1 爬蟲流程
首先通過Entrez接口獲取全部文獻的ID列表,根據文獻ID批量抓取文獻,抓取到的初始文獻存入mongodb數據庫,利用beautifulsoup存入mysql數據庫。該平臺爬取流程如圖3所示。
2.1.2 爬蟲優化
針對NCBI網站抓取文獻過程中遇到的問題,進行如下優化處理:
(1)利用文獻編號快速抓取文獻。由于NCBI網站直接翻頁無法實現,抓取NCBI的文獻需要作如下處理:通過biopython的Esearch獲取并存儲文章編號;隨后讀取文獻編號,通過biopython的EFetch抓取文獻。
(2)批量抓取文獻提升抓取效率。文獻抓取的過程包含以下4個步驟:①向NCBI發送請求;②NCBI在數據庫中搜索結果;③格式化成XML格式;④將請求結果全部返回。
文獻單個抓取準確率高,但當網絡不穩定時,爬蟲程序的突發性崩潰使得爬取請求被重新發送,從而降低文獻的抓取效率。文獻批量抓取,可減輕NCBI的負擔,同時提升抓取效率。
(3)設置“抓取斷點”提供進程保護。為了防止抓取過程中發生崩潰,創建文獻抓取記錄日志文件,抓取文獻時,每100篇發送一次抓取請求,獲取100篇文獻抓取結果的臨時文件,保存該臨時文件,日志做記錄,繼續抓取接下來100篇直至全部爬取。如果發生崩潰,從發生崩潰的地方繼續爬取。
(4)“二次爬取”保證數據完整性。mysql創建文獻抓取記錄表,存入所有文獻ID,設置是否已抓取并保存字段。對抓取結果的所有臨時文件,依次作切片處理,將100篇文獻的抓取結果分割成一篇篇,并以文獻ID、文獻結果的方式存入mongodb數據庫中,存入同時在mysql數據庫中設置該文獻已爬取為真。對比mongodb數據庫里的文獻ID與mysql數據庫里的文獻ID,對mongodb數據庫中不存在的文獻,再次爬取,再次做切片操作存入mongodb。
2.2 數據庫設計實現
采用非關系型數據庫mongodb存儲爬取的文獻結果,以及傳統的關系型數據庫mysql存儲用于文獻統計分析數據。爬取AD文獻過程中有大量數據信息高并發頻繁變更,文檔型數據庫mongodb以bson結構進行存儲,對海量數據存儲的讀寫速度比mysql有明顯的優勢。文獻統計分析過程中,關系型數據庫mysql在關聯查詢分析方面具備高性能。通過對平臺信息的分析,利用表存儲數據,數據庫設計如下:
(1)爬取階段,mongodb文獻表(article)主要用來存放已經爬取的文獻信息,mysql爬取記錄表(crawlrecords)主要用來做斷點記錄文獻是否已經爬取。
(2)數據分析階段,表全部存放在mysql數據庫中,mysql文獻表(alzheimer)用來存儲解析后的各種文獻信息,如國家、發表時間、關鍵詞、期刊名、被引用數量等。
(3)數據分析處理后,用于可視化的表也存在mysql中,國家發文量占比表(proportion_of_country)主要存儲國家、發文量、年限、占比等信息,用來展示國家發文比例變化趨勢;期刊被引用量占比表(proportion_of_journal)主要存儲期刊、年限、發文量、被引用量、占比等信息,用來統計期刊被引用數相對變化趨勢;關鍵詞次數表(count_of_keyword)主要存儲國家、關鍵詞、出現次數等信息,用來繪制關鍵詞詞云圖;關鍵詞占比表(proportion_of_keyword)主要存儲國家、關鍵詞、年限、占比等信息,用來統計熱門關鍵詞變化趨勢。
2.3 數據分析實現
2.3.1 歷年文獻統計信息分析
該分析用于展現歷年AD文獻的變化趨勢。統計每一年的AD文獻數量,從中看出AD文獻數量歷年的變化趨勢。
2.3.2 各個國家發文量相對變化趨勢分析
該分析用于展現不同國家的AD發文量所占比重變化情況,通過每年每個國家發文量所占比例反映比重,因此統計了一定的年限內發文量排名前10的國家,進而分析這些國家發文量隨時間的相對變化趨勢。該比例的計算公式如下:
2.3.3 頂級期刊相對變化趨勢分析
該分析用于展現各個頂級期刊的論文被引用量所占比重變化情況,通過每年每個期刊被引用量所占比例反映比重,統計一定年限內被引用排名前10的期刊,進而分析這些頂級期刊被引用量隨時間的相對變化趨勢。該比例的計算公式如下:
2.3.4 關鍵詞相對變化趨勢分析
該分析用于展現各個國家的熱門關鍵詞,以及各國熱門關鍵詞所占比重的變化情況,通過每年各國每個熱門關鍵詞所占比例反映比重。該比例的計算公式如下:
2.4 可視化實現
主要利用Ajax技術向服務器發送請求,服務器收到請求后,讀取相應數據庫中用于可視化的數據,返回給Ajax,用Ajax的Success方法對返回的json數據作相應處理,由Echarts渲染出可視化結果。
平臺實現了用戶可自由選擇統計年限、統計國家的功能。利用Echarts折線圖、柱狀圖、堆疊區域圖、平鋪圖、熱力圖對相應的統計結果進行可視化,并加入Echarts的工具欄,提供區域縮放、可視化結果保存的功能。
3 實驗結果
3.1 抓取結果
本文選擇爬取NCBI網站,首先進行數據檢索,進入NCBI頁面,在TOPIC字段里輸入alzheimer′s disease作為關鍵詞進行檢索,PMC數據庫共檢索到121 390篇相關論文,PubMed數據庫共檢索到121 664篇相關論文。其中,PubMed覆蓋了全世界70多個國家4 300多種主要生物醫學期刊的摘要和部分全文,PubMedCentral(PMC)是美國國家衛生研究院國家醫學圖書館(NIH / NLM)的生物醫學和生命科學期刊文獻的免費全文數據庫。
本平臺爬取PMC數據庫中AD相關論文12萬篇,提取了pmcID(每篇PMC文獻NCBI給定的獨一無二的標識ID號)、期刊名、文獻題目、摘要、第一作者信息(一般包含作者所在機構和國家)、所有作者姓名、發表時間、關鍵詞、所有引用文章的pmcID。根據發表時間信息,分析出歷年AD文獻統計信息;根據第一作者信息和發表時間分析出發文量較多的國家,進而分析出發文量較多國家的論文數量隨時間的相對變化趨勢;根據第一作者信息和關鍵詞分析出中、美以及其它國家的熱門關鍵詞,再綜合發表時間信息,分析出中、美及其它國家研究關鍵詞隨時間的相對變化趨勢以及研究側重點。針對以上分析結果進行相應的可視化處理。
爬取PubMed數據庫中AD相關論文12萬篇,提取了pubmedID(每篇收錄在PubMed數據庫的AD文獻NCBI給定的獨一無二的標識)、期刊名、發表時間、被引用數量。根據期刊名、發表時間和被引用數量信息篩選出頂級期刊,進而分析頂級期刊論文被引用數量隨時間的相對變化趨勢。
3.2 可視化結果
平臺于2016年11月爬取數據,NCBI網站雖收錄了2016年的文獻,但是未完全展示摘要等信息,故可視化展現出來的文獻均在2016年之前。
(1)系統可視化展示歷年AD文獻的統計結果,其中x軸代表統計年限,y軸代表當年的AD文獻總量。系統默認展示文獻統計的整體趨勢折線圖,用戶可選擇所展示的統計年限(近10年、近20年或全部年限下的整體趨勢);平臺提供了圖形縮放按鈕,可供用戶在已選定的統計年限內,自由選擇欲查看的年限內文獻統計結果;平臺提供了圖片保存按鈕可供用戶保存統計結果。用戶選擇展示近10年的文獻統計結果如圖4所示。
(2)系統可視化展示排名前列國家的發文量,其中x軸代表國家發文量,y軸代表國家。系統默認展示排名前20的國家發文量,以柱狀圖形式展示。用戶可選擇展示國家的排名位數(前10位、前15位或前20位);平臺提供了圖片保存按鈕可供用戶保存發文量前列國家的統計結果。系統默認展示的國家發文量統計圖見圖5。
系統可視化展示主要國家文獻的發文量相對變化趨勢,不同顏色區域代表不同國家,區域大小代表國家發文量所占比例,x軸代表統計年限,y軸代表發文量比例。
系統默認展示近20年發文量排名前10的國家AD文獻發文量相對變化趨勢堆疊圖,可由用戶選擇統計的年限(近10年或近20年)、統計的國家(用戶可自由選擇排名前10國家中感興趣的國家)、變化趨勢圖展示的方式(堆疊式或平鋪式);平臺提供了圖形縮放按鈕,可供用戶在已選定統計年限內,自由選擇欲查看的年限;平臺提供了圖片保存按鈕可供用戶保存國家發文量趨勢圖的分析結果。用戶選擇展示近10年排名前5的國家發文量變化趨勢堆疊圖如圖6所示(彩圖見封二),可以看出美國一直處于AD研究前列,中國后來者居上,近年來AD研究超越了英、德等國家。
(3)系統可視化展示頂級期刊文獻的變化趨勢,下方x軸代表期刊的發文總量以及被引用總量,上方x軸代表期刊的平均被引用量,y軸代表期刊。系統默認展示排名前15的頂級期刊被引用量、發文量柱狀展示以及平均被引用量折線圖。可由用戶自由選擇展示頂級文獻排名(前10、前15)變化趨勢圖展示的方式(數據視圖、折線圖、柱狀圖)。用戶選擇展示頂級期刊的被引用量、發文量、平均被引用量折線圖如圖7所示。
系統可視化展示頂級期刊文獻占比的相對變化趨勢,不同顏色區域代表不同頂級期刊,區域大小代表頂級期刊被引用量所占比例,x軸代表統計年限,y軸代表被引用量的比例。
系統默認展示近20年被引用量排名前10的頂級期刊文獻被引用量相對變化趨勢堆疊圖,可由用戶選擇統計的年限(近10年、近20年)、統計的頂級期刊(用戶可自由選擇排名前10頂級期刊中感興趣的期刊)、變化趨勢圖展示的方式(堆疊式或平鋪式);平臺提供了圖形縮放按鈕,可供用戶在已選定統計年限內,自由選擇欲查看的年限;平臺提供了圖片保存按鈕可供用戶保存頂級期刊被引用量變化趨勢圖的分析結果。用戶選擇展示近10年被引用量排名前10的頂級期刊文獻變化趨勢圖的平鋪圖如圖8所示,可以看出關于AD研究各期刊各年間被引用比例變化較大,沒有一家獨秀的期刊。
(4)系統可視化展示各國的熱門關鍵詞,由單詞大小展示關鍵詞詞頻高低。系統默認展示美國的熱門關鍵詞詞云,可由用戶選擇展示的國家(美國、中國、除中美之外的其它國家)。圖9為用戶選擇展示美國的關鍵詞詞云,可以看出brain、amyloid、inflammation是美國的研究熱點。
(5)系統可視化展示各國的熱門關鍵詞變化趨勢,由色度條展現熱度高低,其中顏色淺的地方表示熱度低,顏色深的地方表示熱度高,x軸代表統計年限,y軸代表熱門關鍵詞。系統默認展示美國的關鍵詞變化趨勢,可由用戶選擇展示的國家(美國、中國、除中美之外的其它國家)。圖10(彩圖見封二)為用戶選擇展示美國的熱門關鍵詞變化趨勢,可以看出amyloid、brain是近年來美國的研究重點。
4 結語
本文開發設計了AD文獻計量分析可視化平臺,區別于傳統文獻可視化平臺集中進行文獻統計、共引關系分析,該平臺針對阿爾茲海默癥的相對研究趨勢進行可視化分析。
平臺爬取NCBI網站關于AD的相關文獻12萬篇,統計歷年文獻信息,分析了各國論文發文量研究趨勢、頂級期刊論文被引用量研究趨勢、各國熱門關鍵詞及其變化趨勢,基于echart對文獻研究趨勢的結果進行了可視化,并可根據研究者需求展現結果以供研究者查看。該平臺通過文獻分析,方便科研工作者深入了解AD研究領域中前沿熱點的變化趨勢,有利于推動科學向前發展。
參考文獻:
[1] 王麗英,郭冬梅,張琨.2002-2011年阿爾茨海默病的中醫藥研究文獻計量分析[J].中國現代中藥,2012,14(12):18-21.
[2] 劉承浩,周衛東.2004-2014年中國阿爾茨海默病的研究現狀及發展趨勢文獻計量學分析[J].中國老年學,2016,36(21):5403-5404.
[3] CHEN H, HO Y S. Highly cited articles in biomass research: a bibliometric analysis[J]. Renewable & Sustainable Energy Reviews, 2015,49(6):12-20.
[4] 李梅,陳鳴鳳.阿爾茨海默病文獻計量分析研究[J].中華神經科雜志,2000,33(1):14-16.
[5] 周純,馬絲竹,姚志彬.阿爾茨海默病的文獻計量學分析[J].解剖學研究,2002,24(2):145-148.
[6] 焦宏官.中國中醫藥期刊文獻數據庫在線分析平臺初步建設研究[J].光明中醫,2012,27(4):635-637.
[7] LU S, LI R M, TJHI W C, et al. A framework for cloud-based large-scale data analytics and visualization: case study on multiscale climate data[C]. IEEE Third International Conference on Cloud Computing Technology and Science. IEEE Computer Society, 2011:618-622.
[8] 張震,甘克勤.基于Solr的大規模標準文獻可視化分析系統[J].計算機系統應用,2016,25(3):67-71.
[9] 張少龍,周寧,吳佳鑫.專利文獻引用關聯可視化系統的構建——以“美國專利數據庫(USPTO)檢索系統”為例[J].現代圖書情報技術,2007,2(2):64-66.
[10] 胡亮.實時文獻作者共引可視化系統研究[D].天津:天津大學,2009.
[11] CHEN H, WAN Y, JIANG S, et al. Alzheimer′s disease research in the future: bibliometric analysis of cholinesterase inhibitors from 1993 to 2012[J]. Scientometrics, 2014,98(3):1865-1877.
[12] SONG M, HEO G E, LEE D. Identifying the landscape of Alzheimer′s disease research with network and content analysis[J]. Scientometrics, 2015,102(1):905-927.
(責任編輯:何 麗)