趙婧帆,潘利民,黃永剛,史寶林
(河北北方學(xué)院附屬第一醫(yī)院,河北張家口 075000)
隨著科學(xué)技術(shù)發(fā)展水平的提升,科研誠(chéng)信已成為了熱點(diǎn)問題。加強(qiáng)科研誠(chéng)信的建設(shè),對(duì)于科技發(fā)展和保障社會(huì)公平正義具有重要的意義。隨著科研數(shù)據(jù)量的快速增長(zhǎng),對(duì)其進(jìn)行深入地分析不僅要針對(duì)現(xiàn)有數(shù)據(jù),還需對(duì)未來快速增長(zhǎng)的數(shù)據(jù)也進(jìn)行準(zhǔn)確可靠的預(yù)測(cè)。而區(qū)塊鏈技術(shù),恰好適合解決此類數(shù)據(jù)交互問題。
區(qū)塊鏈也被稱為分布式賬本,其是一個(gè)防篡改的附加數(shù)據(jù)交易列表,并對(duì)這些交易使用密碼學(xué)進(jìn)行鏈接和保護(hù)。同時(shí),區(qū)塊鏈技術(shù)去中心化的組織模式,也保證了數(shù)據(jù)交互不會(huì)被篡改。因此,該文基于科研數(shù)據(jù)的建模,使用區(qū)塊鏈技術(shù)研究了科研誠(chéng)信數(shù)據(jù)的分析與評(píng)估問題。
為了對(duì)科研數(shù)據(jù)進(jìn)行評(píng)估,該文提出了一個(gè)誠(chéng)信模型,其涉及相似性、可信度與最終聲譽(yù)的測(cè)量。該模型根據(jù)事件進(jìn)行更新,相似性測(cè)量依賴近鄰數(shù)據(jù)的相關(guān)度量測(cè)。最終聲譽(yù)通常使用一般聲譽(yù)和基于近鄰數(shù)據(jù)的聲譽(yù)來評(píng)估可信度值。
該文使用皮爾遜相關(guān)系數(shù)量測(cè)兩個(gè)數(shù)據(jù)之間的相關(guān)性[1]。數(shù)據(jù)u和數(shù)據(jù)k之間的相關(guān)性PCu,k可由式(1)得出:
可信度量化了數(shù)據(jù)與其鄰近數(shù)據(jù)之間的關(guān)系[3]。若數(shù)據(jù)u對(duì)于鄰近數(shù)據(jù)k的分析結(jié)果影響增大,則u在k中的可信度增加[4]。數(shù)據(jù)u和k之間的可信度Tu,k的計(jì)算如式(2)所示:
式中,nu,k表示由k傳遞給u的數(shù)據(jù)分析結(jié)果;Nu,k表示k被選為u的鄰近數(shù)據(jù)的次數(shù)。
可信度是基于單一數(shù)據(jù)個(gè)體的科研數(shù)據(jù)可靠性量測(cè)指標(biāo),此外還使用最終聲譽(yù)來量測(cè)總體數(shù)據(jù)的可靠性[5]。為此,該文采用了一般數(shù)據(jù)聲譽(yù)和基于鄰近數(shù)據(jù)的聲譽(yù)兩種不同數(shù)據(jù)的綜合建模方法。
一般數(shù)據(jù)聲譽(yù)采用數(shù)據(jù)本身的平均可信度來量化數(shù)據(jù)聲譽(yù)。數(shù)據(jù)u在系統(tǒng)中的一般數(shù)據(jù)聲譽(yù)Ru如式(3)所示:
式中,Tu,k可由式(2)得出,而U表示整體數(shù)據(jù)。
基于鄰近數(shù)據(jù)的聲譽(yù)使用數(shù)據(jù)與其鄰近數(shù)據(jù)間的成對(duì)可信度來量化數(shù)據(jù)的聲譽(yù)。數(shù)據(jù)k包含數(shù)據(jù)u的基于鄰近數(shù)據(jù)的聲譽(yù)Ru,k可由式(4)得出:
其中,t代表u和k之間的共同鄰近數(shù)據(jù);Tu,t是數(shù)據(jù)u和t之間的成對(duì)可信度;n是u和k之間的鄰近數(shù)據(jù)總數(shù)[6-8]。
從式(1)-(4)可以看出,任何一個(gè)數(shù)據(jù)的鄰近數(shù)據(jù)均會(huì)對(duì)算法產(chǎn)生重大影響。該文使用k-NN(k-Nearest Neighboors)算法,對(duì)科研數(shù)據(jù)進(jìn)行在線聚類[9],并為每個(gè)傳入的評(píng)級(jí)事件近乎實(shí)時(shí)地進(jìn)行預(yù)測(cè)與模型更新。同時(shí)為了識(shí)別近鄰數(shù)據(jù),采用皮爾遜相關(guān)算法確定數(shù)據(jù)間的相關(guān)性,以檢測(cè)最近的鄰近數(shù)據(jù)。而聚類生成數(shù)據(jù)用于支持以下兩種分析方法[10]:
1)使用式(1)來計(jì)算采用多標(biāo)準(zhǔn)評(píng)級(jí)的ru,i,然后通過式(5)確定數(shù)據(jù)u對(duì)特征i評(píng)分ru,i的預(yù)測(cè)。
式(5)中,*表示內(nèi)積運(yùn)算。
2)基于信任的數(shù)據(jù)分析方法。首先使用式(3)計(jì)算數(shù)據(jù)k被識(shí)別為數(shù)據(jù)u鄰近數(shù)據(jù)的次數(shù)。式(6)定義了數(shù)據(jù)u的n個(gè)臨近數(shù)據(jù)的可信度Tu,k為數(shù)據(jù)u對(duì)特征i的評(píng)級(jí)預(yù)測(cè)
為確保數(shù)據(jù)分析的安全性,該文使用區(qū)塊鏈技術(shù),用于實(shí)現(xiàn)數(shù)據(jù)文件跟蹤、驗(yàn)證與歷史跟蹤的流程。所使用的區(qū)塊鏈系統(tǒng)如圖1 所示[11-12]。
圖1 系統(tǒng)框架
該系統(tǒng)支持現(xiàn)有存儲(chǔ)基礎(chǔ)架構(gòu)中的數(shù)據(jù)保留、歸檔、文件驗(yàn)證和歷史跟蹤,并可監(jiān)視由用戶注釋的文件或指示是否可以更改以及何時(shí)更改[13]。此外,該系統(tǒng)在區(qū)塊鏈上還能夠自動(dòng)生成與部署這些智能合約,并提供審計(jì)功能和對(duì)存儲(chǔ)在區(qū)塊鏈上的元數(shù)據(jù)的安全訪問。系統(tǒng)的主要功能包括存在證明、文件驗(yàn)證和歷史跟蹤。
該節(jié)使用區(qū)塊鏈技術(shù)監(jiān)控文件的工作流程如圖2 所示,其包括以下步驟[14]:
圖2 區(qū)塊鏈注釋監(jiān)控流程
1)用戶對(duì)文件進(jìn)行注釋,以便進(jìn)行長(zhǎng)期文件跟蹤。
2)根據(jù)文件跟蹤模板,自動(dòng)生成該文件的專用智能合約。
3)將生成的文件追蹤合約提交至區(qū)塊鏈。
4)成功部署到區(qū)塊鏈后,返回唯一的智能合約地址,并將其作為元數(shù)據(jù)附加到存儲(chǔ)系統(tǒng)的文件中,同時(shí)關(guān)聯(lián)智能合約和文件。
5)使用加密單向散列函數(shù)計(jì)算文件散列。
6)將所有數(shù)據(jù)解析為對(duì)應(yīng)的文件合約。
7)系統(tǒng)收到數(shù)據(jù)并將其寫入?yún)^(qū)塊鏈。
8)若存在某個(gè)文件的其他隊(duì)列交易,系統(tǒng)將把所有交易按照時(shí)間順序提交到區(qū)塊鏈。
驗(yàn)證跟蹤文件的工作流程如圖3 所示[15]。
圖3 驗(yàn)證文件工作流程
驗(yàn)證文件的工作流程如下:
1)用戶從文件系統(tǒng)中請(qǐng)求訪問一個(gè)文件。
2)系統(tǒng)根據(jù)元數(shù)據(jù)附加的智能合約地址來加載相應(yīng)的文件跟蹤合約。
3)系統(tǒng)從加載的文件跟蹤合約中尋找最后一個(gè)已知的哈希值。
4)智能合約驗(yàn)證功能在區(qū)塊鏈的最新副本上進(jìn)行本地執(zhí)行,獲取存儲(chǔ)在區(qū)塊鏈上的最后一個(gè)已知哈希值。
5)計(jì)算存儲(chǔ)系統(tǒng)中存儲(chǔ)文件版本的哈希值。
6)當(dāng)前產(chǎn)生的哈希值與存儲(chǔ)在智能合約中的最后一個(gè)值進(jìn)行相互比較;若兩個(gè)值匹配,則認(rèn)定文件一致[16]。
7)系統(tǒng)允許用戶加載驗(yàn)證文件。
此外,系統(tǒng)允許用戶根據(jù)存儲(chǔ)在區(qū)塊鏈網(wǎng)絡(luò)上的真實(shí)情況驗(yàn)證其本地文件副本,且無需接觸遠(yuǎn)程文件。
通過使用專用智能合約將包括存儲(chǔ)系統(tǒng)維護(hù)等附加屬性(例如所有者、時(shí)間戳及URI)的文件哈希存儲(chǔ)在區(qū)塊鏈上,從而能夠確定文件的更改時(shí)間。若存儲(chǔ)的文件被修改,則包括新文件哈希在內(nèi)的更新文件屬性將被附加到智能合約上,并存儲(chǔ)于區(qū)塊鏈網(wǎng)絡(luò)中。而一旦交易被確認(rèn),便可唯一確定網(wǎng)絡(luò)中的所有操作記錄,這是因?yàn)閰^(qū)塊鏈上的交易無法修改或刪除。此外,文件歷史追蹤還能夠在無任何第三方干擾的情況下完成。
驗(yàn)證實(shí)驗(yàn)均采用節(jié)點(diǎn)集群,且每個(gè)節(jié)點(diǎn)都配備了一個(gè)四核Intel Xeon CPU,16 GBRAM 和三個(gè)1 TB的7 200 RPM 機(jī)械數(shù)據(jù)存儲(chǔ)磁盤,且所有節(jié)點(diǎn)均通過單個(gè)交換機(jī)與一個(gè)千兆以太網(wǎng)相連。同時(shí),節(jié)點(diǎn)內(nèi)運(yùn)行Linux 操作系統(tǒng)和Java1.8.0 軟件語言。
為了對(duì)文中設(shè)計(jì)的技術(shù)進(jìn)行研究,通過使用KNN算法預(yù)測(cè)評(píng)分,并評(píng)估該方法的預(yù)測(cè)及準(zhǔn)確性。首先通過使用基于區(qū)塊鏈的科研數(shù)據(jù)分析算法,在不同的數(shù)據(jù)近鄰分類策略下,分別計(jì)算數(shù)據(jù)分析的召回率、目標(biāo)召回率以及均方根誤差,結(jié)果如表1 所示。其中,較低的均方根誤差和較高的分類值(召回率和目標(biāo)召回率)均可體現(xiàn)出算法具有較為理想的分析準(zhǔn)確度。
表1 分析結(jié)果對(duì)比
從表1 可以看出,隨著近鄰數(shù)據(jù)個(gè)數(shù)的增加,算法對(duì)于數(shù)據(jù)分析的準(zhǔn)確度逐漸上升,且均方根誤差持續(xù)減小。
科研數(shù)據(jù)分析技術(shù)的優(yōu)劣不僅取決于對(duì)數(shù)據(jù)的分析質(zhì)量,還取決于分析技術(shù)的正式運(yùn)行情況,因此,該文還對(duì)科研數(shù)據(jù)寫入及驗(yàn)證文件的響應(yīng)時(shí)間進(jìn)行了測(cè)試。實(shí)驗(yàn)在Linux 操作系統(tǒng)下生成固定大?。?4~8 192 MB)的隨機(jī)文件,其寫入時(shí)間的測(cè)試如圖4所示。
圖4 文件寫入時(shí)間測(cè)試
如圖4 所示,科研文件大小均在1 024 MB 以內(nèi)時(shí),收集元數(shù)據(jù)以及發(fā)送和確認(rèn)合約交易的平均響應(yīng)時(shí)間為48.5 s,且寫入響應(yīng)時(shí)間大致相同,因此與文件大小關(guān)系并不明顯。此外還可以發(fā)現(xiàn),寫入時(shí)間的最大值和最小值相差較大,分別為45.590 s 和125.843 s。這是因?yàn)榻灰状_認(rèn)占用了大部分響應(yīng)時(shí)間,故測(cè)試網(wǎng)絡(luò)在考慮效率的情況下應(yīng)該將大型文件進(jìn)行延遲處理。
圖5 為系統(tǒng)驗(yàn)證不同大小文件響應(yīng)時(shí)間的實(shí)驗(yàn)結(jié)果。在使用區(qū)塊鏈技術(shù)讀取文件之前,對(duì)文件進(jìn)行了50 次修改,以生成相應(yīng)文件跟蹤合約內(nèi)的數(shù)據(jù)。當(dāng)文件較小時(shí)(小于1 024 MB),與寫入響應(yīng)時(shí)間相比,驗(yàn)證的耗時(shí)較少,且均在20 s 以內(nèi)。原因是檢索文件哈希智能合約的執(zhí)行可在本地完成,所以無需在區(qū)塊鏈網(wǎng)絡(luò)上進(jìn)行任何交易。
圖5 驗(yàn)證響應(yīng)時(shí)間實(shí)驗(yàn)
該文采用Gas 來衡量創(chuàng)建及修改單個(gè)文件的成本。Gas 是區(qū)塊鏈技術(shù)中使用的特殊單位名稱,其用于衡量一個(gè)動(dòng)作或一組動(dòng)作需要執(zhí)行的工作量。實(shí)驗(yàn)時(shí),首先生成一個(gè)1 024 MB 的文件;然后將文件加載到系統(tǒng)中,并重復(fù)10 次上述兩個(gè)步驟,以覆蓋系統(tǒng)的文件,即可以保證系統(tǒng)的數(shù)據(jù)安全可靠。在系統(tǒng)安全的前提下對(duì)文件的操作成本統(tǒng)計(jì)如下:當(dāng)一個(gè)創(chuàng)建文件在部署相應(yīng)的智能合約時(shí),第一步需要花費(fèi)147 060 Gas,且之后的每次修改均會(huì)持續(xù)花費(fèi)132 060 Gas,這是因在測(cè)試網(wǎng)絡(luò)上執(zhí)行的操作數(shù)量完全相同。需要強(qiáng)調(diào)的是,測(cè)試網(wǎng)中的文件操作Gas 消耗量可能與公共網(wǎng)絡(luò)上有所不同。因此,在公共網(wǎng)絡(luò)上使用區(qū)塊鏈分析技術(shù)時(shí),不僅需要考慮到文件操作的成本,還應(yīng)分析需要跟蹤文件的成本及數(shù)量。
針對(duì)科研誠(chéng)信數(shù)據(jù)的分析與評(píng)估問題,該文使用多種評(píng)價(jià)指標(biāo)建立了一個(gè)誠(chéng)信模型。同時(shí)為保證科研數(shù)據(jù)文件跟蹤、驗(yàn)證和歷史追蹤的可靠性,利用區(qū)塊鏈技術(shù)建立了數(shù)據(jù)分析方法,并通過實(shí)驗(yàn)驗(yàn)證了該技術(shù)的可靠性。更廣泛的科研誠(chéng)信數(shù)據(jù)具有大時(shí)間跨度的特點(diǎn),且基于多種語言載體,其具有異常細(xì)節(jié)難以全面量化的問題,這將是未來研究的重點(diǎn)。