李子孝,劉翔宇,朱皞罡,王孟,楊昕,王春娟,姜勇,林琳,王韜,趙性泉1,,王擁軍1,(*第一作者)
作者單位
1100070 北京首都醫科大學附屬北京天壇醫院神經病學中心2國家神經系統疾病臨床醫學研究中心
3國家神經系統疾病醫療質量控制中心
4北京航空航天大學生物與醫學工程學院
5軟件開發環境國家重點實驗室
6北京大數據精準醫療高精尖創新中心(北京航空航天大學&首都醫科大學)
7首都醫科大學附屬北京天壇醫院信息中心
健康醫療大數據作為我國國家戰略資源,助力《“健康中國2030”規劃綱要》和人工智能發展戰略的實施[1]。來自醫院信息系統的數據,如電子病歷、檢驗報告、影像資源、醫囑和病案首頁成為健康醫療大數據主要來源之一[2],應用于醫療質量過程評價的數據來源[3]。如何實現醫院間的數據可信、安全和持續的互聯互通是開展基于數據決策的醫療質量評價和改進的基礎。
醫療質量評價和改進是提高缺血性卒中醫療服務質量和降低患者卒中復發的有效途徑之一[4-5]。持續地獲得患者診療過程數據是開展醫療質量評價和改進的基石[6]。基于人工二次錄入的卒中診療過程醫療質量數據采集和上報是目前國內外常用的數據采集模式[7-8]。然而,這種數據采集模式存在數據質量準確性、連續性、人工成本、時效性等問題,以及參與醫院對數據安全性和分享性的疑慮,制約對醫療數據溯源性、可持續、及時性、可及性的缺血性卒中醫療質量評價和改進[9]。基于電子病歷、實驗室檢測、影像報告和醫囑等醫院信息系統的數據進行結構化和匯交并形成醫院診療數據庫成為開展缺血性卒中醫療質量過程評價的新的數據來源[3]。但是為了確保信息安全,傳統的數據庫形成以醫院、科室,甚至是設備為單位的“信息孤島”[10],這種傳統的數據中心化聚合分析思路制約多中心遠程調用計算和評價,成為阻礙醫療大數據、人工智能等新興技術應用于醫療質量評價和改進的重要因素之一[11]。
基于智能合約區塊鏈的醫院信息系統數據平臺建設已逐步在國內開展[12-13]。區塊鏈(block chain)采用分布式的數據存儲、點對點傳輸、共識機制、加密算法等計算機技術,實現去中心化的分布式結構的醫療數據共享,為數據存儲傳輸、溯源性、安全性等提供了良好的解決方案。在醫院間,實現去中心化并最終形成統一標準的數據分中心,為進一步醫療數據分析和開展人工智能應用奠定堅實基礎[14]。
本文介紹了探索采用“模型投放”,即算法流替代數據傳輸的思想,以區塊鏈[15]和智能合約[16]技術為依托,整合安全沙箱[17]、密碼學、摘要生成等關鍵技術,開展基于醫院信息系統數據的缺血性卒中醫療質量過程指標評價體系。
1.1 基于區塊鏈的技術模型和架構 缺血性卒中醫療質量評價應用基于區塊鏈及相關技術,構建醫療指標評價共享的實施方案,完成相關的信息交換指標。該場景中的研究對象主要有3類:①醫院:選擇前期已完成缺血性卒中醫療信息系統相關數據結構化的醫院。②患者:采用ICD-10編碼確定的主診斷為缺血性卒中患者(I63)。③缺血性卒中醫療質量控制指標:采用國家衛生健康委頒布的缺血性卒中醫療質量控制指標中用藥相關指標。
缺血性卒中醫療質量評價整體應用場景分為敏感域和公共域兩個部分。敏感域屬于各醫院自有和相互隔離,內部存放用于進行缺血性卒中醫療質量指標評價的基礎醫療信息,禁止外部網絡訪問個案數據。公共域作為開放環境,負責提供用于進行缺血性卒中醫療質量指標評價的數據分析算法,可對算法進行迭代更新。算法以“算法流”方式進行投放,隨用隨取。
技術架構采用軟硬件混合搭建,主要硬件以“數據網關”作為前置機;軟件則以區塊鏈、智能合約以及安全沙箱等技術為基礎進行開發。架構分為基礎層、管理層和操作層三層(圖1)。基礎層為嵌入式操作系統,提供基礎的硬件接口訪問能力;管理層以Docker沙箱技術[18]為藍本,針對沙箱的創建、管理、維護、清除等生命周期管理以及數據安全擦寫等功能進行了針對性的補充和增強;操作層則在沙箱內部提供對算法的基礎環境支持。
1.1.1 執行方法 在已完成缺血性卒中醫療質量數據結構化的醫院部署數據網關,完成“敏感域-公開域”隔離帶的搭建。執行過程中,智能合約依據各醫院審閱授權,并記錄在區塊鏈上的操作主體,負責整體控制;數據網關中的安全沙箱作為授權執行機構,具體協調算法流、數據流,并輸出分析結果和運行日志。
在具體執行時,用于評價缺血性卒中醫療質量的智能合約根據實際操作醫院的情況,在數據網關生成安全沙箱,并將算法流從公共域引入。此后,可能包含敏感信息的患者數據(如患者隱私信息、人口學特征等)以加密方式通過私有域進入安全沙箱。在沙箱內部,數據完成解密后,算法完成數據分析并輸出結果,反饋給預先指定的用戶。并將操作流程記錄在區塊鏈上。沙箱管理系統在捕獲完成信號后,對沙箱進行銷毀,保障敏感數據安全無泄露,整個流程如圖2。

圖1 區塊鏈系統架構

圖2 區塊鏈系統中數據和算法的流程
1.1.2 關鍵技術
(1)敏感數據的跟蹤保護
從需求產生并準備執行開始,區塊鏈系統對數據調取、算法分析、結果輸出、沙箱銷毀等全部操作進行共識和記錄,其不可篡改的特點保障數據的安全,同時也記錄了數據與結論之間的關聯關系。采用了基于微實數并行排序思想的微誤差共識協議(?-differential agreement,EDA)[19]。通過搶占式排序和并發共識,以提供適合業務場景的系統性能。
(2)基于智能合約的算法調用機制
區塊鏈系統在完成數據跟蹤保護的同時,對醫療質量評價算法的調用情況進行記錄,以統計算法運行效率、準確率等參數。采用智能合約技術對算法進行整合,使每一個算法成為一個獨立的智能合約,通過調用智能合約,獲得算法的運行權限,并將算法流投入安全沙箱,對沙箱內的數據進行分析。智能合約的每次調用和運行記錄同樣會被區塊鏈系統記錄,并與安全沙箱的輸出日志一一對應。
(3)基于元數據鏈的跨中心檢索機制
采用目錄鏈共享檢索機制,應用摘要生成算法,將醫療信息非敏感的元標簽存放于公開的元數據鏈上。采用基于局部敏感哈希[20]的特征檢索系統,生成特征區域的局部敏感哈希字符串并建立映射關系。因為哈希值與原始數據為單向映射,可以實現保護原始數據的同時,完成數據的“以圖檢圖”。通過特征檢索,找到目標數據后,調用預先簽署的智能合約或采用文件交換途徑,向醫院的數據庫借取對應的資料,并完成統計分析。
1.2 形式化語言和工作流建模工具 眾多的研究表明臨床指南和臨床決策路徑可以被計算機程序解釋執行[21]。其中有代表性的工作流建模語言和工具會嵌入邏輯規則來表示任務的結構,如計劃、決策和動作。這些任務組成面向時間的流程來代表臨床決策路徑和指南,例如Asbru、EON、GLIF、GUIDE、PRODIGY與PROforma[22]。
本文提出一種去中心化的工作流建模語言和引擎工具,該工具通過認知計算模型引入工作流建模過程,使用認知分析出的本體及其關聯規則并封裝成要素構件,以構件拖拽方式實現工作流的可視化設計,創建后的工作流程可以在區塊鏈上運行。此工作流建模語言和引擎工具可以替代以代碼形式建立的智能合約,用于構建并部署一系列決策支持系統、指南和其他臨床應用程序。
通過工作流引擎,可以將臨床指南和醫療準則建模為任務和數據項的組合。其中任務模型分為4類:“動作”表示需要在外部環境中執行的過程,“查詢”是指需要從外部系統獲取信息和讀取數據過程,“決策”是必須做出選擇的過程,“計劃”是按照規則和分類組合在一起的任務集合。工作流引擎形式化過程可以用有向圖來表示,其中節點表示任務,連線表示調度關系。“動作”被表示為正方形,“查詢”被表示為菱形,“決策”被表示為圓形,“計劃”被表示為平行四邊形。模型本身包含一個根計劃,根計劃可以遞歸地劃分為子計劃(圖3)。
圖3展示了工作流引擎的技術架構圖。Web應用端是工作流創建的編輯器、狀態跟蹤器和查詢器,提供工作流設計、創建、狀態監視、校驗、查詢功能。在應用端界面存儲了工作流的任務基礎模塊:“動作”“查詢”“決策”和“計劃”。通過拖拽任務模塊和組合資源庫模板庫,可以定義出新的資源庫模塊以及更復雜的工作流程序。資源庫以本體資源庫、合約模板庫、語法語義庫為基礎,支持上層可視化合約的構建。服務與組件主要有兩個部分,一是合約虛擬機(smart contract virtual machine,SCVM),負責測試和執行構建的合約,二是服務模塊,完成工作流、資源定位、遠程調用等服務。存儲與查詢應用程序接口(application programming interface,API),以標準化API的方式對合約的執行過程及結果進行存取。持久化存儲與索引,以區塊鏈的方式進行存儲,建立資源和合約的索引,便于存取。
圖4演示了一個通過工作流引擎創建的智能合約。從開始節點開始執行后面接兩個“計劃”——分別通過沙箱提取“抗血小板藥物治療率分子統計”和“抗血小板藥物治療率單項藥物統計”數據,然后連接一個決策——“抗血小板藥物治療醫療質量指標算法1”,用來評估缺血性卒中患者抗血小板藥物治療率,從而明確需要改進的指標。最后,沙箱在通過數據網管輸出計算結果后,完成自銷毀。

圖5 基于醫院信息系統的缺血性卒中醫療質量評價平臺
2.1 系統運行結果 采用上述思路和方法,搭建了基于醫院信息系統的缺血性卒中醫療質量評價平臺(圖5),選擇三家已完成缺血性卒中醫療質量數據結構化的試點醫院的數據庫參與醫療質量評估工作。通過合約創建工具,研究人員在系統中以圖形化流程的方式創建、校驗和發布智能合約。
用戶通過調用相應的智能合約,自動對醫院的數據進行分析評估,并生成分析結果。在驗證中,系統對各參與醫院的病案記錄、檢驗信息和醫囑信息等數據進行分析,完成缺血性卒中住院日、費用、死亡率等效率、負擔、結局指標的測算。分析過程中,智能合約通過調用外部測算方法,對院內醫療信息摘要進行檢索,并對需要分析的內容進行提取。整個過程中,全部計算發生在數據網關根據智能合約創建安全沙箱中。分析結束后,沙箱對醫院輸出分析結果,并完成自我銷毀,受保護的醫療數據未離開醫院私有域,安全性得到了有效驗證。
系統在三家醫療機構的數據中完成初步驗證,并獲得了良好的系統性能(表1),區塊鏈秒平均寫入通量達到9000條記錄,特征檢索時間不高于10 ms,能夠在多中心協作和敏感信息受控場景中,開展缺血性卒中醫療質量藥物相關過程指標評價,具體結果見表2。

表2 缺血性卒中醫療質量過程指標評價
2.2 系統測試結果
(1)沙箱測試結果
功能性:實現沙箱創建、沙箱銷毀、沙箱單次執行、沙箱多請求執行、沙箱超時控制、沙箱數量控制、沙箱內禁止訪問外網域名控制、沙箱內禁止訪問外網IP加端口控制、沙箱內存監控、沙箱內禁止文件寫入磁盤和沙箱中禁用linux系統中/usr/sbin下相關指令等功能。
性能效率:支持沙箱單次執行,超時設置為9 s、算法延時設置為5 s時,沙箱支持合約算法執行完成運行時間為5.146 s;支持沙箱多請求執行,超時設置為29 s,在沙箱數為3,隊列數為3的情況下,共執行727次算法合約,沙箱支持合約執行完成的平均運行時間為16.603 s。
(2)合約測試結果
在單用戶場景下,數據目錄寫入事務平均響應時間為1.58 s,查看事務平均響應時間為0.08 s,提交事務平均響應時間為1.59 s;在10 654條分布式數據中進行數據目錄查詢,事務平均響應時間為0.13 s;進行數據目錄詳情查看,事務平均響應時間為0.11 s;提交數據庫事務平均響應時間為1.30 s;加載全部庫目錄事務平均響應時間為0.07 s;進行庫目錄詳情查看事務平均響應時間為0.73 s;提交表目錄事務平均響應時間為0.99 s;在10 703條數據中進行表目錄查詢事務平均響應時間為0.15 s;表目錄詳情查看事務平均響應時間為0.11 s;在遠程源數據庫中對己上鏈的庫表字段進行修改,操作結果同步到系統中時延為10 s;在遠程源數據庫中對已上鏈的庫表字段進行刪除,操作結果同步到系統中時延為10 s;在遠程源數據庫中對已上鏈的庫表字段進行新增,操作結果同步到系統中時延為5 s;通過可視化方式創建不帶算法的數據合約,事務平均響應時間為0.72 s;通過本地上傳方式創建不帶算法的數據合約,事務平均響應時間為0.29 s。
10個用戶并發場景:調用數據目錄上鏈接口,事務平均響應時間為0.17 s;調用庫目錄上鏈接口,事務平均響應時間為0.36 s;調用表目錄上鏈接口,事務平均響應時間為0.17 s;可視化創建合約接口,創建不帶算法的數據合約,事務平均響應時間為1.41 s;本地上傳創建接口,創建不帶算法的數據合約,事務平均響應時間為0.83 s;帶數組去重算法的數據合約執行接口,事務平均響應時間為0.68 s。
20個用戶并發場景:調用查看職責目錄詳情接口,事務平均響應時間為0.06 s;調用數據目錄查詢接口,在10 654條數據中進行數據目錄查詢,事務平均響應時間為0.18 s;調用查看數據目錄詳情接口,事務平均響應時間為0.07 s;調用庫目錄查詢接口,返回全部庫目錄數據,事務平均響應時間為0.08 s;調用查看庫目錄詳情接口,事務平均響應時間為0.08 s;調用查詢表目錄接口,在10 703條數據中進行表目錄查詢,事務平均響應時間為0.10 s;調用查看表目錄詳情接口,事務平均響應時間為0.30 s;調用不帶算法的數據合約執行接口,事務平均響應時間為1.01 s;調用帶數組去重算法的數據合約執行接口,事務平均響應時間為1.26 s。
50個用戶并發場景:調用不帶算法的數據合約執行接口,事務平均響應時間為3.01 s。
本文初步探索了區塊鏈技術在缺血性卒中醫療質量評價體系中的應用,其中融合智能合約、安全沙箱、摘要生成等區塊鏈技術手段,建立了缺血性卒中醫療質量評價平臺。在三家已完成缺血性卒中醫療質量數據結構化的醫院的數據庫架構上,有效實現了缺血性卒中醫療質量指標評價。進一步應用數據信息提取、數字化追溯和跨域投放,為開展基于醫院信息系統的醫療質量評價和持續改進奠定了技術基礎。
這種醫療質量評價體系基于區塊鏈技術實現了數據不易篡改、很難偽造、可追溯、分布式基礎機構,與計算范式的醫院信息互聯互通信息平臺建設。平臺利用分布的區塊鏈式數據結構來驗證與存儲腦血管病質控醫院臨床數據,采用分布式節點共識算法來生成和更新醫院的臨床數據,應用密碼學方式保證臨床數據傳輸和訪問的安全,利用由自動化腳本代碼組成的質控醫院間智能合約來編程和操作臨床數據。
平臺基于區塊鏈技術的關鍵環節如下:
(1)對質控醫院的腦血管病臨床數據資源和結構進行評估,形成詳細的臨床數據目錄鏈系統,覆蓋臨床數據結構和內容。之后對臨床數據資源進一步進行規范化完善,逐步達到有價值臨床數據的目標。
(2)項目醫院有價值臨床數據證明的發放,這個過程主要針對有價值臨床數據證明本身文件實現防偽,利用區塊鏈可以做到電子權益證明去中心化發放,并且保證不可篡改。
(3)項目醫院有價值臨床數據的流通,這個環節反映有價值臨床數據的流動性。基于區塊鏈,這個有價值臨床數據資產可以實現點對點流通,并可以再切分,促進流動性的增強。
綜合上述三個環節,平臺在醫療領域中可將臨床數據轉變為有價值的臨床數據,這種權威而專業的評估有著非常重要的作用,可以提供評估、風控、增值等服務。
本探索研究是在區塊鏈系統的基礎上,采用基于智能合約的缺血性卒中醫療質控指標算法整合和調用機制,使每一個算法成為一個獨立的智能合約,通過調用智能合約,獲得算法的運行權限,并將算法流投入安全沙箱,對沙箱內的數據進行分析。智能合約的每次調用和運行記錄同樣會被區塊鏈系統記錄,并與安全沙箱的輸出日志一一對應。在完成數據跟蹤保護的同時,對質控指標的算法的調用情況進行記錄,以統計算法運行效率、準確率等參數,便于總結算法瓶頸,為后續升級提供方向。
在利用醫療數據開展質控評價工作中,經常需要進行跨醫院協調支持。然而,傳統的檢索是建立在對數據庫的直接訪問基礎上,這在多中心醫院協同中存在數據管理和安全等的屏障,而應用區塊鏈技術的優勢實現了基于元數據鏈的跨中心檢索機制,采用目錄鏈共享檢索機制,應用摘要生成算法,將醫療信息非敏感的元標簽存放于公開的元數據鏈上。醫院通過特征檢索,找到目標數據后,調用預先簽署的智能合約或采用文件交換途徑,向原始醫院借取對應的資料,并完成統計分析。
在數據安全方面,數字化信息具有易復制、難追蹤等特性,很難做到有效保護。本研究通過引入區塊鏈的數字資產化思想,將數據作為特殊資產,在區塊鏈上進行管理,明確權屬并跟蹤記錄其流動,同時,結合安全沙箱和加密技術,做到使用留痕、用后銷毀,保障原始數據的安全性和唯一性,從而使得數據的管理和保護成為可能。從需求產生并準備執行開始,區塊鏈系統對數據調取、算法分析、結果輸出、沙箱銷毀等全部操作進行共識和記錄,其不可篡改的特點保障了數據的安全,同時也記錄了數據與結論之間的關聯關系,使之可以在不獲取原始數據的情況下,證明結論的有效性和可重復性。
醫療行業是典型的高通量并發場景,全流程的記錄需求會對區塊鏈系統產生巨大的壓力,傳統的公有鏈系統共識協議[如工作量證明算法(proof of work,PoW)、股權證明(proof of stake,PoS)等]無法提供足夠的并發性能[21]。本研究采用了基于微實數并行排序思想的EDA共識協議[19],通過搶占式排序和并發共識,以提供適合業務場景的系統性能。
本研究的快速實施依托“十三五”國家重點研發計劃正在開展的基于醫院信息系統的腦血管病大數據平臺建設,根據卒中醫療質量評價的需要變量進行結構化和標準化的處理,建立醫院卒中質控專用的數據庫,這為開展基于區塊鏈的缺血性卒中質控平臺建設、數據調取和分析奠定了堅實的基礎。目前已完成如下工作:設計信息系統標準數據接口,規范數據字典;收集各醫院的接口數據,校驗上報數據,對整體性、種類完整性、數據項完整性等進行檢查;數據清洗,處理問題數據,收集原始資料,保障數據溯源;組織醫療專業人員進行業務邏輯核查和數據修正,并對數據字典和采集規范進行補充、完善等。
本研究主要為解決如何在非本地中心開展缺血性卒中醫療質量指標的評價,即在不暴露醫療信息等敏感數據的條件下,基于“模型投放”架構,解決醫療質量指標算法的推送、應用、迭代以及后評估問題。在數據分析及評估應用的完整流程中,算法需要在運算平臺上調用數據,并形成運算結果對外輸出。在上述生態內,算法、數據與運算平臺三者缺一不可。而傳統的以保護敏感信息為目的的“信息孤島”則徹底將數據從生態中割離開,形成了巨大空洞,阻礙了未來“人工智能+醫療”的深入結合與推進[11]。未來將區塊鏈和人工智能相結合,基于深度學習的醫療人工智能分析技術,是一種以數據基礎與應用效果直接正相關的統計分析方法。隨著目前醫療數據的使用途徑縮窄,未來這種技術的發展方向也正被社會各界廣泛關注[14]。對于人工智能這種嚴重依賴數據迭代和更新的應用,“一次成型”的部署方式難以發揮其功能和價值。目前系統已經具備了算法的投放能力,下一步將與多中心數據統計,特別是聯邦學習、多方安全計算相結合,解決應用算法在敏感信息環境中的投放問題,打通數據交匯渠道,探索并推動形成醫療數據模型設計開發的新模式,即醫療機構提供數據基礎、醫療知識和應用渠道,科研機構提供模型的智力支持,整體環境將從現在的以科研機構或企業為中心,調整為以醫療機構為中心,將為醫療行業與信息技術融合提供更堅實的發展基礎和廣闊前景。
致謝:北京嘉和美康信息技術有限公司張雷、郭偉光,張義超、郝昌龍、王濤、邵義工程師對結構化數據庫建設的技術支撐。