梁玉芳,程華麗,2,王清濤,3,王哲,馮祥,韓澤文,宋彪,5,周睿,3(.首都醫(yī)科大學(xué)附屬北京朝陽醫(yī)院檢驗(yàn)科,北京00020;2.航空總醫(yī)院檢驗(yàn)科,北京0002;3.北京市臨床檢驗(yàn)中心,北京00020;.內(nèi)蒙古衛(wèi)數(shù)數(shù)據(jù)科技有限公司大數(shù)據(jù)研究院,呼和浩特00000;5.內(nèi)蒙古財(cái)經(jīng)大學(xué),呼和浩特 0005)
傳統(tǒng)室內(nèi)質(zhì)量控制(internal quality control,IQC)通過按照預(yù)先規(guī)定的頻次檢測穩(wěn)定的質(zhì)控物對分析系統(tǒng)性能進(jìn)行監(jiān)控,是目前實(shí)驗(yàn)室主要采用的質(zhì)量管理工具。該質(zhì)控方式在質(zhì)控物本身互換性及濃度水平、質(zhì)控頻次、質(zhì)控成本等方面存在不足之處。在當(dāng)前實(shí)驗(yàn)室規(guī)模擴(kuò)大且實(shí)驗(yàn)室檢測量陡增的場景下,基于患者的實(shí)時(shí)質(zhì)量控制(patient based real time quality control,PBRTQC),作為傳統(tǒng)IQC的補(bǔ)充方案,被越來越多的實(shí)驗(yàn)室用于室內(nèi)質(zhì)量控制及室間質(zhì)量評價(jià)[1-2]。2017年,Liu等[3]使用一種浮動異常值之和的方法(moving sum of outlier,MovSO)監(jiān)測前列腺特異性抗原(PSA)項(xiàng)目0.03 μg/L偏移改變。MovSO方法屬于PBRTQC方法,該法雖可檢出有臨床決定意義0.03 μg/L大小的誤差,然而尚不能滿足2014年歐洲臨床化學(xué)和檢驗(yàn)醫(yī)學(xué)聯(lián)合會(European Federation of Clinical Chemistry and Laboratory Medicine,EFLM)提出的用于設(shè)定分析性能規(guī)范的要求[4],該規(guī)范涉及的檢測項(xiàng)目有高敏肌鈣蛋白(hs-cTnT)[5]、PSA[6]等,由于是基于對醫(yī)學(xué)決定影響而設(shè)定的分析性能規(guī)范,所以被測量值的準(zhǔn)確度對醫(yī)療決策起關(guān)鍵作用,直接影響患者管理[5]。
隨著人工智能的出現(xiàn),機(jī)器學(xué)習(xí)已經(jīng)逐漸發(fā)展出一些各有特點(diǎn)的算法,可以在一定程度上幫助人們完成數(shù)據(jù)預(yù)測、自動化、自動決策、最優(yōu)化等任務(wù)。其中,隨機(jī)森林(random forest,RF)能夠處理超高維度的數(shù)據(jù),并且特征選擇不受約束,對缺失值不敏感,在特征遺失的情況下仍可維持準(zhǔn)確度的優(yōu)勢,適合類似質(zhì)控的項(xiàng)目數(shù)據(jù)。本研究探索利用患者數(shù)據(jù),基于RF算法,以hs-cTnT項(xiàng)目為例,嘗試建立識別小偏移的質(zhì)控方法,并與MovSO方法比較,驗(yàn)證該方法的臨床效能。
1.1數(shù)據(jù)收集 通過航空總醫(yī)院的實(shí)驗(yàn)室信息系統(tǒng)導(dǎo)出2016年1月至2021年8月在羅氏化學(xué)發(fā)光E601設(shè)備檢測的hs-cTnT項(xiàng)目,選擇質(zhì)控在控(質(zhì)控判定規(guī)則設(shè)置為13s、22s)時(shí)段、標(biāo)本類型為血清或血漿樣本的患者檢測數(shù)據(jù),數(shù)據(jù)清洗規(guī)則:(1)排除來自于兒科、ICU、血液科、腫瘤科、腎病科、透析科的患者樣本數(shù)據(jù);(2)剔除含有離群值、荒謬值的樣本數(shù)據(jù),其中離群值通過統(tǒng)計(jì)學(xué)下的3σ準(zhǔn)則,將分布在(μ-3σ,μ+3σ)之外的數(shù)值定為異常值,荒謬值表示非數(shù)字格式或者為負(fù)值的數(shù)據(jù)。最終確定患者檢測結(jié)果54 243份,用于機(jī)器學(xué)習(xí)模型訓(xùn)練、模型測試及臨床PBRTQC中的MovSO方法的比對驗(yàn)證。
1.2有偏數(shù)據(jù)模擬 為研究不同算法對質(zhì)控失控的識別能力,由于收集到的數(shù)據(jù)默認(rèn)為全部在控?zé)o偏數(shù)據(jù),需要人為生成不同偏移大小的有偏數(shù)據(jù)作為無偏數(shù)據(jù)的對照組,以盡可能涵蓋臨床中各種大小的偏移。根據(jù)公式x′=x+e,其中,x表示原始在控?cái)?shù)據(jù),x′表示引入偏移后的數(shù)據(jù),e是偏移大小。設(shè)置10個(gè)不同大小的偏移:±1 ng/L、±2 ng/L、±3 ng/L、±4 ng/L、±5 ng/L。按公式在所有無偏數(shù)據(jù)上加入偏移,構(gòu)成與無偏數(shù)據(jù)集等長的有偏數(shù)據(jù)集。由此,每個(gè)實(shí)驗(yàn)條件下,均有2組數(shù)量為54 243的數(shù)據(jù)集,用于后續(xù)實(shí)驗(yàn)。
1.3RF算法
1.3.1數(shù)據(jù)預(yù)處理 對于hs-cTnT項(xiàng)目,根據(jù)臨床質(zhì)量規(guī)范要求,臨床需準(zhǔn)確識別出5 ng/L以內(nèi)的小偏移。采用機(jī)器學(xué)習(xí)中孤立森林算法過濾數(shù)據(jù),以有效去除數(shù)據(jù)噪音對實(shí)驗(yàn)結(jié)果的干擾。濾過比例需根據(jù)實(shí)驗(yàn)合理設(shè)置,孤立森林會綜合樣本的距離與密度篩選有效數(shù)據(jù)。如果濾過比例設(shè)置過小,則無法有效減少噪聲數(shù)據(jù);如果比例設(shè)置過大,則在實(shí)際檢測環(huán)節(jié)會導(dǎo)致延遲,從而擴(kuò)大受影響的患者樣本數(shù)。針對無偏數(shù)據(jù)和有偏數(shù)據(jù)的操作步驟相同,將處理后的新樣本按照預(yù)設(shè)浮動窗口大小(block size)[2](即在PBRTQC質(zhì)控方法中每次計(jì)算浮動均值所包含的患者結(jié)果數(shù)量)分批,將每批內(nèi)的所有數(shù)據(jù)作為機(jī)器學(xué)習(xí)的一個(gè)新樣本,并標(biāo)注標(biāo)簽,將來自無偏數(shù)據(jù)集與有偏數(shù)據(jù)集的樣本分別標(biāo)記為“0類”、“1類”。
1.3.2模型構(gòu)建及調(diào)優(yōu) RF算法是常用分類算法之一,其原理是通過集成多個(gè)決策樹的結(jié)果進(jìn)行分類[7]。決策樹的數(shù)目和最大深度是RF算法需要調(diào)節(jié)的核心參數(shù)。RF模型通過對樣本以及對其屬性的隨機(jī)抽取,實(shí)現(xiàn)橫向與縱向的并列劃分,使模型的泛化能力更強(qiáng)。為了保證集成分類器的多樣性,理論上樹的數(shù)目越大越好。但是隨著樹的數(shù)目的增大,會抵消隨機(jī)性的引入,模型發(fā)生過擬合的可能性增大,其泛化性能也會降低。此外,噪音較大時(shí),模型也會學(xué)習(xí)到更多噪音相關(guān)的信息,發(fā)生過擬合,降低泛化性能。選取偏移大小為1 ng/L的有偏數(shù)據(jù),以10為浮動窗口大小,數(shù)據(jù)處理后,在上述參數(shù)的經(jīng)驗(yàn)范圍內(nèi)進(jìn)行遍歷,評估每個(gè)實(shí)驗(yàn)條件下的性能。選取最優(yōu)模型參數(shù),對10個(gè)偏移進(jìn)行測試。測試時(shí),按虛擬天進(jìn)行統(tǒng)計(jì),每天設(shè)置2 000個(gè)數(shù)據(jù),根據(jù)總數(shù)據(jù)源數(shù)量劃分為28個(gè)實(shí)驗(yàn)日。2 000個(gè)樣本中前1 000個(gè)為無偏數(shù)據(jù),后1 000個(gè)為有偏數(shù)據(jù)。無偏數(shù)據(jù)是為了模擬實(shí)際場景中質(zhì)控在控狀態(tài),有偏數(shù)據(jù)是為了模擬實(shí)際場景中質(zhì)控失控狀態(tài)。
1.4MovSO方法
1.4.1算法原理 參考文獻(xiàn)[3]中方法,依據(jù)預(yù)設(shè)閾值將患者結(jié)果判定為正常或異常,如果結(jié)果超過設(shè)定閾值,被認(rèn)定為異常值。在指定浮動窗口大小的浮動窗口中,理論認(rèn)為異常值個(gè)數(shù)在均值附近穩(wěn)定波動且近似符合正態(tài)分布,故可將此變量用于質(zhì)控監(jiān)控,計(jì)算公式為:
MovSOt=Count(xt-N,xt-N+1,…,xt|xi?RI),
其中t為浮動窗口序號,N為浮動窗口大小。
1.4.2實(shí)驗(yàn)流程 (1)閾值參數(shù)選定:選取3個(gè)臨床水平?jīng)Q定限作為劃分異常值的閾值——12、14、52 ng/L,超出閾值的數(shù)據(jù)按異常值計(jì)數(shù)。(2)浮動窗口大小參數(shù)選定:依次嘗試不同大小的浮動窗口大小——20、100、200、500、1 000。(3)對樣本隊(duì)列以當(dāng)前實(shí)驗(yàn)的浮動窗口大小利用1.4.1中公式計(jì)算浮動的異常點(diǎn)個(gè)數(shù)形成MovSO隊(duì)列。(4)按照控制限計(jì)算:3種不同的控制限計(jì)算方法[8]分別是:(a)對稱法(symmetric),控制限=m±3×sd,其中m、sd為無偏樣本下所有塊的MovSO均值與標(biāo)準(zhǔn)差;(b)所有日統(tǒng)計(jì)法(all PBRTQC),所有的實(shí)驗(yàn)日下MovSO隊(duì)列的0.5和99.5分位數(shù);(c)日極值統(tǒng)計(jì)法(daily extremes),統(tǒng)計(jì)每個(gè)實(shí)驗(yàn)日的最小值中取5位數(shù),每個(gè)實(shí)驗(yàn)日的最大值中取95分位數(shù)。(5)測試結(jié)果:通過兩類數(shù)據(jù)統(tǒng)計(jì)評估結(jié)果,將所有步驟的排列組合下,在所有偏移下進(jìn)行實(shí)驗(yàn)。(6)結(jié)果尋優(yōu):綜合觀察各偏移下的性能評價(jià)指標(biāo)與所有偏移的累計(jì)評價(jià)指標(biāo),對所有實(shí)驗(yàn)進(jìn)行篩選,挑出最佳浮動窗口大小與控制限。
1.5統(tǒng)計(jì)學(xué)分析 利用Python3.7.3通過“sklearn”、“tensordlow”框架執(zhí)行。采用曲線下面積(AUC)、準(zhǔn)確度(ACC)、真陽性率(TPR)、假陽性率(FPR)、真陰性率(TNR)、假陰性率(FNR)指標(biāo)評價(jià)RF模型訓(xùn)練和模型測試分析性能。在FPR小于5%的情況下,將受影響的患者樣本數(shù) (number of the patient sample until error detection,NPed)定義為每個(gè)實(shí)驗(yàn)日,從引入偏移開始到誤差被檢出時(shí)止,受影響的患者樣本數(shù)。當(dāng)經(jīng)過1 000個(gè)有偏數(shù)據(jù)仍未檢出時(shí),將NPed以1 000的110%替代,用來表示算法檢測失敗。基于28 d的NPed,統(tǒng)計(jì)其均值A(chǔ)NPed、中位數(shù)MNPed、95分位數(shù)95NPed,用于RF算法與MovSO算法比對驗(yàn)證。
2.1RF實(shí)驗(yàn)結(jié)果 根據(jù)對原始樣本的數(shù)值分布分析,可發(fā)現(xiàn)數(shù)值在1~7.6 ng/L之間的數(shù)量占31%,數(shù)值在7.6~21 ng/L之間的數(shù)量占33%,這兩部分的分布比較集中,數(shù)值在大于21 ng/L之后分布開始出現(xiàn)離散,最大可達(dá)135 ng/L,這一部分?jǐn)?shù)量占36%。離散數(shù)據(jù)并非無效數(shù)據(jù),不能全部去除。根據(jù)數(shù)據(jù)分布情況,孤立森林的濾過比例設(shè)置為30%,以此降低離群值對實(shí)驗(yàn)的影響。
在實(shí)驗(yàn)10個(gè)偏移之前,選取1 ng/L的偏移為例進(jìn)行分析,樹的數(shù)目的遍歷范圍定為3個(gè)候選值:100、200、300,樹的深度的遍歷范圍定為10~500,間隔為50。經(jīng)過了30次預(yù)實(shí)驗(yàn),綜合比較模型的訓(xùn)練準(zhǔn)確度與測試準(zhǔn)確度,選擇最佳樹的數(shù)目為200,樹的深度為350。樹的數(shù)目在200的情況下,改變樹深度后的實(shí)驗(yàn)情況見表1。
表1 1 ng/L的偏移下RF在不同樹的深度下模型的訓(xùn)練準(zhǔn)確度與測試準(zhǔn)確度
固定RF內(nèi)參之后,為提高實(shí)驗(yàn)效率,只選擇5個(gè)正向偏移進(jìn)行訓(xùn)練。經(jīng)過28 d測試數(shù)據(jù)的檢驗(yàn),挑選FPR<5%的情況下,統(tǒng)計(jì)不同濃度偏移下的評價(jià)指數(shù)見表2,測試集數(shù)據(jù)ROC曲線與AUC結(jié)果見圖1,其中圖1中A~E分別對應(yīng)1、2、3、4、5 ng/L大小的偏移。RF對hs-cTnT的微小偏移具有較強(qiáng)的識別能力,除了在±1 ng/L下準(zhǔn)確度為85%左右,其余的8個(gè)偏移下均能達(dá)到90%以上的準(zhǔn)確度。10個(gè)偏移下的FPR均在4.7%以下,MNPed在12以下。
表2 RF在10個(gè)偏移下的測試結(jié)果
注:A、B、C、D、E依次對應(yīng)1、2、3、4、5 ng/L的偏移。
2.2RF與MovSO比對結(jié)果 當(dāng)FPR<5%時(shí),固定浮動窗口大小為1 000,在3種閾值時(shí)(5、14、52 ng/L)進(jìn)行不同控制限方法實(shí)驗(yàn),統(tǒng)計(jì)MNPed結(jié)果,見表3。
表3 固定浮動窗口大小為1 000時(shí)不同閾值下的MNPed實(shí)驗(yàn)結(jié)果
當(dāng)FPR<5%時(shí),固定閾值為5 ng/L,采取5種不同的浮動窗口大?。?0、100、200、500、1 000,統(tǒng)計(jì)最佳MNPed的實(shí)驗(yàn)結(jié)果見表4。由此可得閾值改變對于實(shí)驗(yàn)結(jié)果的影響程度大于浮動窗口大小的改變。
表4 固定閾值為5 ng/L時(shí)不同浮動窗口大小時(shí)MNPed實(shí)驗(yàn)結(jié)果
在3種閾值與5種浮動窗口大小的遍歷下,臨床要求FPR<5%,誤差檢出率>90%,誤差檢出率可等效于評價(jià)指標(biāo)中的TPR。最終選出的最佳閾值為14 ng/L,浮動窗口大小為200,控制限方法為all PBRTQC,控制上下限為95和62。表5為MovSO的實(shí)驗(yàn)結(jié)果。
表5 MovSO在10個(gè)偏移下的實(shí)驗(yàn)結(jié)果
通過圖2比較MovSO算法與RF算法的MNPed,在被引入的10種大小的偏移下,MovSO算法的MNPed變化明顯,整體均在150以上,只有在±5 ng/L的偏移下能在150~200之間,隨著偏移絕對值的減小,MNPed呈現(xiàn)指數(shù)式增長,但是RF的MNPed均在20以下,且趨勢平穩(wěn)。圖3為增加辨識度單獨(dú)顯示RF在不同偏移下的MNPed,可以看出MNPed最小為10,即使在±1 ng/L的偏移下MNPed僅為12。由此可得各情況下RF表現(xiàn)均優(yōu)于MovSO。
圖2 MovSO與RF的MNPed整體對比
圖3 RF在不同誤差因子下MNPed的改變
對于hs-cTnT標(biāo)準(zhǔn)測定法,歐洲心臟病學(xué)會(European Society of Cardiology,ESC)在《非持續(xù)性ST段抬高型急性冠脈綜合征患者的管理指南(2020)》中指出,臨床在急性冠脈綜合征患者診療中,要采用檢驗(yàn)方法特異的診斷臨界值[9]。實(shí)驗(yàn)室應(yīng)確保hs-cTnT測試結(jié)果精確可控,低濃度水平結(jié)果準(zhǔn)確可靠極其重要,調(diào)查發(fā)現(xiàn),目前室內(nèi)質(zhì)控現(xiàn)狀對低濃度質(zhì)控覆蓋率并不高,并不能有效監(jiān)測這類有臨床意義的小偏移[10-11]。
使用hs-cTnT對就診的心肌梗死患者進(jìn)行檢測,正是利用hs-cTnT的高敏感性和診斷準(zhǔn)確性,第二次檢測hs-cTnT的時(shí)間間隔可以縮短,大大減少了診斷時(shí)間,提高患者精準(zhǔn)診斷和治療效率,減少不必要的診療資源浪費(fèi)[12-16]。因此,臨床要求選擇質(zhì)控方法既要有高的誤差檢出概率也要有低的假失控概率。通常誤差檢出概率達(dá)90%以上,而假失控概率在5%以下可滿足一般臨床實(shí)驗(yàn)室的要求。針對本研究提出的方法結(jié)果,TPR達(dá)90%以上,等效于誤差檢出概率;而FNR在5%以下,等效于假失控概率,從受影響的患者數(shù)來看均少于50,明顯低于MovSO方法。從算法原理上分析,MovSO算法的依據(jù)是在浮動塊中,劃分為異常結(jié)果數(shù)量被認(rèn)定為在正態(tài)分布附近波動,這是一種嚴(yán)重依賴數(shù)值分布的計(jì)算方式。其識別成功的前提是當(dāng)且僅當(dāng)被研究變量存在等于或大于某臨床水平?jīng)Q定限的持續(xù)偏移的情況下,有陽性結(jié)果的患者比例將會增加,其抗干擾能力極其有限。相比MovSO,本研究提出的方法涉及2個(gè)重要步驟:特征工程與模型建立。
特征工程中數(shù)據(jù)濾過減少了離群數(shù)據(jù)對整體實(shí)驗(yàn)的影響,進(jìn)一步的正態(tài)標(biāo)準(zhǔn)化可以使樣本更加集中,組織隊(duì)列環(huán)節(jié)實(shí)現(xiàn)了將單維數(shù)據(jù)向多維樣本的轉(zhuǎn)化。在數(shù)據(jù)預(yù)處理的輸出上與MovSO的共同點(diǎn)是將一定長度的數(shù)據(jù)塊看作一個(gè)整體,區(qū)別在于MovSO隱沒了原始樣本的數(shù)值信息,僅通過閾值統(tǒng)計(jì)一個(gè)劃分?jǐn)?shù)量作為輸出;而本文的預(yù)處理可將原始樣本的所有數(shù)值信息保留,以批為單位處理為1個(gè)隊(duì)列,信息量比MovSO更全,MovSO在這一環(huán)節(jié)產(chǎn)生了特征遺失。
在模型建立環(huán)節(jié),RF之所以能有效區(qū)分2類樣本,原因在于算法內(nèi)部經(jīng)過了2次采樣。在不同的樹之間相當(dāng)于行采樣,在不同的節(jié)點(diǎn)之間相當(dāng)于引入了列采樣,只選取部分特征進(jìn)行基礎(chǔ)分類器的學(xué)習(xí),因此每個(gè)基本決策樹所選擇的數(shù)據(jù)列都不相同。這種“行采樣+列采樣”的形式,可以在每個(gè)節(jié)點(diǎn)隨機(jī)選取所有特征的一個(gè)子集,來計(jì)算最佳分割方式[17]。因此,即使存在特征遺失,用RF算法仍然可以維持準(zhǔn)確度,RF的強(qiáng)抗干擾能力。
在結(jié)果決策環(huán)節(jié),MovSO通過控制限簡單劃分,本身存在極大的誤診率(FPR)和漏診率(FNR)。而RF方法如前所述,其原理是通過集成多個(gè)決策樹的結(jié)果進(jìn)行分類,每棵決策樹都將進(jìn)行獨(dú)立的學(xué)習(xí)和不剪枝生長進(jìn)而作出相應(yīng)預(yù)測[18]。通過集成思想將若干個(gè)弱分類器組合起來,通過投票得出最終的分類或預(yù)測結(jié)果,得到一個(gè)分類性能顯著優(yōu)越的強(qiáng)分類器。從結(jié)果觀察,二者的誤診率雖然均在5%以內(nèi),單是MovSO的誤診率除了在5 ng/L下為3.2%,其余均在16.18%以上,且偏移的絕對值平均每減少1 ng/L,誤診率增加15.2%;而RF除了在±1 ng/L下的誤診率為15%外,其余各偏移下均在1%左右,從而減少了錯誤發(fā)生率,降低因誤報(bào)停機(jī)產(chǎn)生的時(shí)間與人力物力成本,減少因錯誤決策造成的額外損失。本文提出的算法可向類似PSA、TnT等其他高敏項(xiàng)目擴(kuò)展推廣。
致謝:感謝內(nèi)蒙古衛(wèi)數(shù)數(shù)據(jù)科技有限公司陳超,在本研究中負(fù)責(zé)人員組織、協(xié)調(diào),提供必要的硬件保障。