韓京宇 陳 偉 趙 靜 郎 杭 毛 毅
(南京郵電大學(xué)計算機學(xué)院 南京 210023)
(江蘇省大數(shù)據(jù)安全與智能處理重點實驗室(南京郵電大學(xué))南京 210023)
(jyhan@njupt.edu.cn)
根據(jù)世界衛(wèi)生組織的報告,心血管疾?。╟ardiovascular diseases,CVDs)是人類健康的頭號殺手[1].心電圖(electrocardiogram,ECG)作為一種無創(chuàng)的心臟健康檢測技術(shù)在臨床上廣泛應(yīng)用,因而心電圖異常的自動識別備受關(guān)注[2].由于每個樣本通常會有多種心電異常,例如完全性左束支阻滯經(jīng)常和前間壁心肌梗死共同出現(xiàn),房性期前收縮經(jīng)常和竇性心動過緩并發(fā)[3],其自動檢測在機器學(xué)習(xí)中是一個典型的多標簽分類問題.訓(xùn)練有效的分類器,通常需要大量具有完整且準確標簽的樣本,然而在實際中,人工標注心電異常不僅需要專業(yè)人員,而且費時費力.
眾所周知,豐富且標記正確的樣本對于訓(xùn)練有效的分類器至關(guān)重要,尤其是訓(xùn)練深度學(xué)習(xí)模型,樣本的數(shù)量直接影響分類器的精度和泛化性.現(xiàn)實中,經(jīng)常有一些心電的弱標簽數(shù)據(jù)集(weakly labelled dataset,WD)不能被有效利用[4-5].這些樣本有異常標簽,但標簽不一定完整和正確,如何有效地去除錯誤標簽、填補缺失標簽,提供更豐富的訓(xùn)練數(shù)據(jù)集,意義重大[6].我們注意到,獲取少量的有完整、正確標簽的示例數(shù)據(jù)集(example dataset,ED)是完全可行的.根據(jù)這個認識,弱標簽心電數(shù)據(jù)集的清洗任務(wù)具體化為,給定一個WD和一個ED,對WD中的異常標簽進行清洗,獲得干凈數(shù)據(jù)集(clean dataset,CD),其每個樣本有全部正確的異常標簽.
目前關(guān)于弱標簽心電圖樣本清洗的研究[7-10]可以分為2 類:依賴于分類器的方法和獨立于分類器的方法.前者直接在弱標簽數(shù)據(jù)集上訓(xùn)練一組分類器,并根據(jù)它們的判斷來識別錯誤標記的樣本[7,9-10];后者旨在無需訓(xùn)練分類器的情況下,開發(fā)識別弱標簽的專用算法[8],本文提出的方法就屬于后者.另外,機器學(xué)習(xí)中利用弱標簽數(shù)據(jù)和未標記數(shù)據(jù)訓(xùn)練通用分類器的方法也受到廣泛關(guān)注.前者根據(jù)每個樣本的部分相關(guān)標簽進行學(xué)習(xí)[11-15],后者基于小部分正樣本和大量未標記樣本來訓(xùn)練分類器[16-17].但這些方法不能用于創(chuàng)建具有干凈標簽的數(shù)據(jù),也不適用于心電圖數(shù)據(jù):首先,心電圖異常標簽多達幾十個,而通常的方法只關(guān)注少量標簽;其次,心電圖數(shù)據(jù)的異常標簽和特征間有復(fù)雜的相關(guān)性,即一個異常呈現(xiàn)不同的特征模式,而且類似的特征模式可能指示不同的異常[3,5].
本文提出一種基于異常特征模式(abnormalityfeature pattern,AFP)清洗弱標簽心電數(shù)據(jù)的方法(后文簡稱:AFP 方法),生成可重復(fù)使用的、具有完整且準確標簽的干凈數(shù)據(jù)集,為心電數(shù)據(jù)的有監(jiān)督學(xué)習(xí)提供更豐富的訓(xùn)練樣本.具體地,基于心電數(shù)據(jù)的異常特征模式,在ED的支持下去除錯誤標簽并填補缺失標簽,AFP 包括2 個階段,即清洗規(guī)則構(gòu)建和迭代清洗異常標簽.在第1 階段,提取由ED和WD共享的異常特征模式,識別ED和WD共享的異常標簽,即錨標簽;然后,提取異常發(fā)現(xiàn)規(guī)則、異常排除規(guī)則和1 組二分類器.在第2 階段,首先根據(jù)標簽發(fā)現(xiàn)和排除規(guī)則識別初始相關(guān)異常;然后,根據(jù)二分類器迭代判斷其他的弱標簽是否屬于對應(yīng)樣本.迭代終止時,生成對應(yīng)WD的CD.方法中ED的支持是不可或缺的,它不僅是發(fā)現(xiàn)共享異常特征模式的基礎(chǔ),也是挖掘清洗規(guī)則的源泉.
本文主要貢獻在于提出了一種通用的心電數(shù)據(jù)標簽清洗方法,具體包括3 個方面:
1)提出利用異常特征模式識別以高置信度屬于實例的錨標簽.既利用了人類知識,又提取了弱標簽中的可靠信息,保證清洗方法的有效性和魯棒性.
2)提出挖掘異常發(fā)現(xiàn)和排除規(guī)則的具體算法,這些規(guī)則是標簽清洗的基礎(chǔ).
3)開發(fā)了一個迭代式的異常清洗框架,通過逐步縮小不確定區(qū)間來清洗異常標簽,精準地去除錯誤標簽和添加缺失標簽,避免方法性能的波動.
大多數(shù)心電圖分類工作假設(shè)樣本的標簽完整且準確,但實際中很難滿足.在心電異常分類中,如何利用被錯誤標記的樣本備受關(guān)注.文獻[7]中利用5 種不同的分類器,支持向量機(support vector machine,SVM)、K 近鄰(K-nearest neighbor,KNN)、樸素貝葉斯(naive Bayesian,NB)、線性判別分析(linear discriminant analysis,LDA)和決策樹(decision tree,DT),將所有訓(xùn)練樣本隨機分成10 份,1 份作為驗證集,其余9 份作為訓(xùn)練集,然后將訓(xùn)練集輸入到這5 種分類器,確定標簽是否被錯誤標記.文獻[8]中自動刪除具有潛在錯誤標簽的訓(xùn)練樣本,協(xié)助用戶進行心電圖病癥標記.所提出的方法基于遺傳優(yōu)化過程,其中每個染色體代表一個候選解決方案,用于確認無效的訓(xùn)練樣本.文獻[9]中提出,用分類性能最好的前k個算法獨立進行投票,如果k個算法對是否有某個標簽持不同觀點,則將該標簽視為潛在錯誤標簽.
另一項密切相關(guān)的工作是如何利用弱標簽數(shù)據(jù)訓(xùn)練通用分類器[11-14,18-21],該工作分成2 類:
一類是直接對弱標簽進行修正.文獻[12]中提出通過10 折交叉驗證來識別錯誤標記的數(shù)據(jù),在第i輪中的第i組作為驗證集,其余9 組作為訓(xùn)練集.在驗證集上預(yù)測的每個標簽,如果訓(xùn)練出來的分類器不一致,則被認為是不正確的標簽.文獻[13]用一個矩陣建模圖像和標簽的相似性,通過矩陣補齊技術(shù)來補齊圖像的標簽,也是一種修補標簽的方法.文獻[18]中提出了半監(jiān)督弱標簽(semi-supervised weak-label,SSWL)方法,解決基于部分標簽甚至無標簽數(shù)據(jù)進行的學(xué)習(xí)問題,它根據(jù)實例相似性和標簽相似性來補充缺失標簽.
另外一類是直接利用弱標簽數(shù)據(jù)訓(xùn)練分類器.文獻[20]提出的隨機梯度下降樹(random gradient descent tree,RGD-tree),在有錯誤標簽的數(shù)據(jù)集上訓(xùn)練支持向量機,保證超平面的可分性.文獻[21]提出采用縮放鉸鏈損失函數(shù)(rescaled hinge loss function),提高支持向量機對噪聲標簽的魯棒性.
本文不同于上述2 類方法在于:1)標簽被清洗后,數(shù)據(jù)集可以被復(fù)用于各種計算任務(wù),不僅可以用于訓(xùn)練分類器,而且可以用于各種數(shù)據(jù)挖掘、數(shù)據(jù)分析任務(wù),拓寬數(shù)據(jù)的可用性;2)弱標記數(shù)據(jù)進行學(xué)習(xí)通常只能在符合方法特點的數(shù)據(jù)集上進行有效學(xué)習(xí),方法對數(shù)據(jù)集敏感,有一定的適用局限性.
另一個相關(guān)工作是正樣本和未標記樣本(positive and unlabeled,PU)學(xué)習(xí)[22],它根據(jù)正樣本和未標記樣本來訓(xùn)練分類器,主要分為2 步法(two-step methods)和有偏學(xué)習(xí)(biased learning).
2 步法的第1 步識別出一些可靠的負樣本;第2步將此樣本與正樣本結(jié)合用于訓(xùn)練分類器,對未識別的樣本進行分類.文獻[23]基于正樣本構(gòu)建概率生成模型,把相對正例密度最低區(qū)域的樣本認為是負樣本,基于此構(gòu)建分類模型.文獻[24]設(shè)計了最小平方支持向量機對未標記樣本進行分類.
有偏學(xué)習(xí)訓(xùn)練分類器時將無標簽樣本當成負樣本.文獻[15]提出采用多個合成器、過濾器和確認器標記無標簽的樣本.文獻[16]中將所有未標記的樣本標記為負樣本,并使用線性函數(shù)從噪聲實例中學(xué)習(xí),從而將問題轉(zhuǎn)化為噪聲學(xué)習(xí)問題.文獻[17]中引入了一種生成PU 學(xué)習(xí)模型,在沒有完全隨機選擇(selected completely at random,SCAR)假設(shè)的情況下,生成一組虛擬PU 示例來訓(xùn)練分類器.文獻[25]將未標記的數(shù)據(jù)集視為負類,對負類標簽進行建模,轉(zhuǎn)化為使錯誤的負標簽風(fēng)險最小的問題.
因為分類器的輸出空間大小與類標簽數(shù)量成指數(shù)關(guān)系,所以多標簽分類任務(wù)具有挑戰(zhàn)性.一般多標簽分類可以通過2 類方法來解決,即問題轉(zhuǎn)換和算法適應(yīng)[26-27].前者將多標簽分類問題轉(zhuǎn)化為其他成熟的學(xué)習(xí)場景,而后者采用流行的學(xué)習(xí)技術(shù)來處理多標簽分類問題.
問題轉(zhuǎn)換方法可以分為3 類:二分類、標簽排序和多類分類.代表性的二分類有二元相關(guān)法[28]和分類器鏈法[29],前者將多標簽分類問題分解為1 組獨立的二分類問題,后者將多標簽分類問題轉(zhuǎn)化為二分類問題鏈,鏈中的后續(xù)二分類器建立在前面分類器的預(yù)測之上.標簽排序的代表是校準標簽排名(calibrated label ranking,CLR),它將多標簽分類問題轉(zhuǎn)化為標簽排序問題,其中標簽之間的排序通過成對比較來實現(xiàn)[30].諸如Random K-Labelset[31]之類的多類方法將多標簽分類問題轉(zhuǎn)換為多類分類問題的集合,其中每個組件分類器都針對標簽的隨機子集.
算法適應(yīng)方法對已存算法進行改造實現(xiàn)多標簽分類.例如,文獻[32]中的多標簽K 近鄰(multi-label Knearest neighbor,MLKNN)方法采用K 近鄰技術(shù)來處理多標簽數(shù)據(jù),使用最大后驗(maximum a posteriori,MAP)規(guī)則進行預(yù)測.多標簽決策樹(multi-label decision tree,ML-DT)采用決策樹技術(shù)來處理多標簽數(shù)據(jù),基于多標簽熵的信息增益標準遞歸地構(gòu)建決策樹[33].文獻[34]提出的排序支持向量機(ranking support vector machine,Rank-SVM)采用最大邊距策略進行多標簽分類,優(yōu)化了一組線性分類器以最小化經(jīng)驗排序損失.文獻[35]提出基于?;卣骷訖?quán)的K 近鄰算法實現(xiàn)多標簽學(xué)習(xí).
目前噪聲標簽清洗方法主要分成2 類:一類對噪聲魯棒性進行建模,文獻[36]提出對噪聲的代理損失函數(shù)(surrogate loss function)和噪聲率進行建模,文獻[37]提出均勻標簽噪聲模型(uniform label noise model),通過風(fēng)險最小化,創(chuàng)建魯棒性強的多標簽分類模型.另外一類基于模型過濾進行噪聲標簽清洗,如文獻[38]提出基于數(shù)據(jù)分布過濾(data distribution filtering,DDF)的標簽噪聲過濾方法.對于數(shù)據(jù)集中的每一個樣本,根據(jù)其近鄰內(nèi)樣本的分布,將其鄰域樣本形成的區(qū)域劃分為高密度區(qū)域和低密度區(qū)域,然后針對不同的區(qū)域采用不同的噪聲過濾規(guī)則進行過濾.
令U={l1,…,lk,…,lu}為所有異常標簽,表1 列出了一些常見的心電異常標簽.ED={ob1,…,obi,…,obN}是具有正確標簽的示例數(shù)據(jù)集,每個obi由特征ft(obi)和相關(guān)異常標簽集rl(obi)?U組成.ft(obi)是一個d維向量 (f1,…,fk,…,fd),每個fk代表一個數(shù)值型特征,采用截斷多元正態(tài)分布來描述該d維向量的分布.本文中,對每個樣本的心電數(shù)據(jù)經(jīng)過波形去噪、波形(QRS 波、P 波、T 波)識別、特征提取和歸一化,在12 個導(dǎo)聯(lián)上提取橫向間隔、縱向幅度、電軸傾斜和波形高度4 類特征[39],構(gòu)成d維向量 (f1,…,fk,…,fd).給定一個待清洗的大型弱標簽數(shù)據(jù)集WD={ob1,…,obi,…,obM},每個obi帶有弱標簽集cl(obi),cl(obi)中的一些標簽屬于相關(guān)標簽集rl(obi),而其余的則是錯誤標簽,即不相關(guān)標簽.另外,obi的有些相關(guān)標簽缺失.清洗的目的是從WD生成一個CD.下文除特殊說明,異常和標簽指示同一概念.表2 中列出了本文中使用的主要符號.
Table 1 Abnormality Labels in CHE and CHW Datasets表1 CHE 和CHW 實驗數(shù)據(jù)集中的異常標簽
Table 2 Meanings of Key Notations in Our Paper表2 本文中主要符號含義
定義1.異常特征模式.給定l的一個類簇Ci(l),它的異常特征模式fpi(l)對應(yīng)一個截斷多元正態(tài)分布NM(μi(l),Σi(l)),其中μi(l)是特征均值,Σi(l)是特征協(xié)方差.
給定2 個特征模式fp1=NM(μ1,Σ1)和fp2=NM(μ2,Σ2),衡量f p1和f p2的相異性Wasserstein 距離為:
其中 ||μ1-μ2||2是L2 范數(shù)距離.
AFP 方法分成2 個階段:基于聚類的清洗規(guī)則構(gòu)造和基于迭代的標簽清洗,如圖1 所示.在基于聚類的清洗器構(gòu)造時,首先在ED和WD上進行聚類尋找錨模式.
Fig.1 The steps of AFP圖1 AFP 方法的步驟
定義2.錨模式.給定一個異常特征模式fpi(l),如果它被ED和WD共享,它就是一個錨模式.
定義3.錨異常集.給定一個實例ob∈WD,其錨異常集al(ob)?rl(ob)是根據(jù)錨模式識別的相關(guān)異常集.
錨異常集是根據(jù)共享的錨模式識別出的WD上的高置信度標簽,它既是WD相關(guān)標簽的一部分,又用來擴充規(guī)則挖掘依賴的樣本.
挖掘標簽發(fā)現(xiàn)規(guī)則和標簽排除規(guī)則,分別用來表征2 個異常特征模式的正相關(guān)性和負相關(guān)性,在后續(xù)的標簽清洗中分別用于填補缺失標簽和去除錯誤標簽.最后,為每個異常構(gòu)造二分類器,以支持后續(xù)的標簽迭代清洗.
標簽迭代清洗前,在ED和WD組成的TD上構(gòu)建隔離森林iForest(isolation forest)[40],根據(jù)樣本在隔離森林中的路徑長度決定參與迭代清洗的次數(shù).清洗時,首先根據(jù)標簽發(fā)現(xiàn)和排除規(guī)則,包含或排除弱標簽,包含的標簽確定為相關(guān)標簽,排除的標簽視為不相關(guān)標簽,從而擴充初始相關(guān)標簽集,縮小了弱標簽集的大小;然后根據(jù)二分器,迭代清洗弱標簽集,逐步縮小不確定的標簽集合.迭代清洗時,通過不斷地逼近標簽和類簇特征間的關(guān)聯(lián),識別出其他相關(guān)標簽.
后文除特別說明,使用Jensen-Shannon 距離來衡量2 個分布的差異,記為JSD.
定義4.JSD.給定2 個分布P(X)和Q(X),其中X表示域值,其JSD定義為
對于每個異常l,在其正樣本和負樣本上分別識別一組類簇,進而構(gòu)建l對應(yīng)的1 組特征模式.雖然每個樣本表征為高維數(shù)據(jù),但本文沒有對數(shù)據(jù)進行降維處理,因為有些心電病癥的區(qū)別主要集中在若干特征上[3],如果進行降維,會剔除或淹沒這些關(guān)鍵信息,降低異常識別精度.對樣本進行聚類時,沒有采用常見的方法如k-均值(k-Means)進行聚類,避免根據(jù)經(jīng)驗指定類簇數(shù)量,而是采用狄利克雷過程混合模型(Dirichlet process mixture model,DPMM)進行聚類,它能夠自適應(yīng)地根據(jù)數(shù)據(jù)分布特點發(fā)現(xiàn)最合適的類簇[41].DPMM 中每個實例obi產(chǎn)生于中國餐館過程CRP(Chinese restaurant process)[42]表達的狄利克雷過程:
該生成模型中,實例由多元正態(tài)分布MN產(chǎn)生,類簇分配由中國餐館過程CRP(γ)決定,其中 γ是聚焦參數(shù),Zi是實例obi對應(yīng)的類簇;作為狄利克雷過程的基分布,逆威沙特分布NIW(normal-inverse-Wishart)是多元正態(tài)分布MN的共軛先驗分布:μ0是N維向量,代表最初平均值;k0用作平滑因子,控制Y0中各個元素的放縮比例;v0是自由度,初始化為原始特征數(shù)目;Y0是成對偏差積,初始化為N×N的常數(shù)矩陣.
為了找到實例obi所屬合適類簇,算法1 用吉布斯采樣獲得類簇分配.
算法1.clusterAssignment.
類簇分配不停迭代,直到不再改變.迭代時,每個實例的類簇分配概率根據(jù)式(6)更新:
其中Z-i是除obi之外的所有實例的類簇分配.
證明.
由于P(ob-i|Zi=m,Z-i)=P(ob-i|Z-i)和
可得
證畢.
式(6)第2 行的第1 項是給定obi之外的所有實例的類簇分配條件下obi的類簇分配,根據(jù)式(7)的中國餐館過程來確定:
其中nm,-i是簇m中除obi外的實例數(shù).
式(6)第2 行的第2 項是給定當前所有類簇分配條件下obi的概率,根據(jù)多元正態(tài)分布確定:
其中μm,-i和Σm,-i是類簇m不包括obi時的均值和協(xié)方差.
如果ED和WD共享某個錨模式,則在2 個數(shù)據(jù)集上對應(yīng)的模式表達不僅應(yīng)該相似,而且對應(yīng)的2個類簇上應(yīng)有盡可能多的具有相同標簽集ls∈2U的樣本.因此,2 個模式集合的最優(yōu)一對一映射
要滿足2 個條件:
1)配對的異常特征模式的平均Wasserstein 距離
Fig.2 Flow chart of algorithm for pattern ordering on WD圖2 WD 上模式排序算法流程圖
式(12)的直觀含義:如果新排列優(yōu)于原排列,則返回1,否則返回-|dtAWD+dtAJSD|.當?shù)Y(jié)束時,有ss個候選解,從候選解中選擇一個最優(yōu)解或非劣解.模式排列算法的運行時間主要由嵌套循環(huán)決定,其時間復(fù)雜度為O(ss·logcrtl).
最后,模式排列算法返回的每個候選解,對應(yīng)1組AWD和AJSD,計算這ss個候選解的平均值作為閾值.然后,將平均值低于該閾值的候選解作為錨模式.一旦確定了標簽的錨模式,給定一個實例ob∈WD,錨模式對應(yīng)的異常標簽稱為ob的錨標簽,同時是該實例的相關(guān)標簽.然后,將ED和WD的錨標簽樣本結(jié)合,形成一個訓(xùn)練數(shù)據(jù)集TD,在TD上挖掘標簽發(fā)現(xiàn)、排除規(guī)則并構(gòu)建二分類器.
3.2.1 在TD上挖掘標簽發(fā)現(xiàn)規(guī)則
在心電數(shù)據(jù)中,一個異常經(jīng)常表現(xiàn)出若干特征模式.標簽發(fā)現(xiàn)規(guī)則用來指示頻繁共同出現(xiàn)的異常特征模式.給定2 個異常特征模式fpi(ls)和fpj(lt),標簽發(fā)現(xiàn)規(guī)則fpi(ls)=>fpj(lt)表明:若某個實例同時落入fpi和fpj的特征模式,并且該實例有異常標簽ls,則該實例有異常標簽lt.
例1.設(shè)有2 個異常標簽A和B,A是前壁心肌梗死,B是左后分支傳導(dǎo)阻滯.假設(shè)某個標簽發(fā)現(xiàn)規(guī)則是fpi(A)=>fpj(B),其中
令fq(fpi(ls) )和fq(fpj(lt) )分別代表Ci(ls)和Cj(lt)中呈現(xiàn)fpi(ls)和fpj(lt)模式的樣本個數(shù),則標簽發(fā)現(xiàn)規(guī)則的支持度和置信度定義為式(13)(14):
其中fq(fpi(ls)∪fpj(lt))是同時呈現(xiàn)fpi(ls)和fpj(lt)模式的樣本個數(shù).
模式的正相關(guān)性根據(jù)Kulczynski(記為Kulc)度量:
直觀地,如果cort=0.5,則fpi(ls)和fpj(lt)相互獨立;如果cort接近1,則fpi(ls)和fpj(lt)正相關(guān);如果cort接近0,則fpi(ls)和fpj(lt)呈負相關(guān).
綜上所述,給定支持度閾值st、置信度閾值ct和正相關(guān)閾值rt,一個標簽發(fā)現(xiàn)規(guī)則fpi(ls)=>fpj(lt)必須滿足3 個條件:1)supp(fpi(ls)=>fpj(lt))≥st;2)conf(fpi(ls)=>fpj(lt))≥ct;3)cort(fpi(ls)=>fpj(lt))≥rt.
本文通過2 個步驟挖掘標簽發(fā)現(xiàn)規(guī)則.首先,根據(jù)支持度閾值st和置信度閾值ct,挖掘兩兩標簽間的關(guān)聯(lián)規(guī)則[44].每個關(guān)聯(lián)規(guī)則ls→lt表明,如果ls出現(xiàn),則lt就會出現(xiàn).進一步,根據(jù)算法2 將關(guān)聯(lián)規(guī)則提煉為標簽發(fā)現(xiàn)規(guī)則.
算法2.generateInclusionRule.
輸入:標簽間的關(guān)聯(lián)規(guī)則LR,異常特征模式AFP,支持度閾值st,置信度閾值ct,正相關(guān)閾值rt;
輸出:標簽發(fā)現(xiàn)規(guī)則.
算法2 的時間復(fù)雜度為O(|LR|·q2),其中|LR|是標簽間的關(guān)聯(lián)規(guī)則數(shù)量,q是一個異常對應(yīng)的特征模式數(shù)量的上界.
3.2.2 在TD上挖掘標簽排除規(guī)則
定義5.標簽排除規(guī)則.給定2 個異常標簽ls和lt,如果
則認為ls和lt是強負相關(guān)的,記ls?lt,其中fq(ls∪lt)是同時有標簽ls和lt的樣本個數(shù).
為了度量強負相關(guān)性,引入閾值ε(0 <ε? 1),如果
則認為fp(ls)和fp(lt)是強負相關(guān)的.直觀含義是,如果ls在某個實例上呈現(xiàn),則lt不會在該實例呈現(xiàn),反之亦然.采用算法3 實現(xiàn)標簽排除規(guī)則的挖掘.
算法3.generateExclusionRule.
輸入:頻繁標簽對集合FS,負相關(guān)閾值ε;
輸出:標簽排除規(guī)則.
算法3 的時間復(fù)雜度為O(|FS|),其中|FS|是頻繁標簽對的數(shù)量.
這里θl是分割閾值,介于0~1 之間,ρl是模糊間隔長度.如果hasLabel返回1,l是ob的相關(guān)標簽;如果返回-1,l是ob的無關(guān)標簽;否則,無法確定l是否屬于ob,需要在下一輪迭代判斷.因為dr的值介于0~1 之間,所以符合Beta 分布:
其中α,β是確定密度函數(shù)形狀的參數(shù).則平均值 μ*和標準差 δ分別是
因此,設(shè)置 θl=μ*,ρl=δ.
WD中的異常標簽通過2 個步驟進行清洗,即弱標簽預(yù)處理和迭代清洗.
給定一個實例ob∈WD,其錨標簽集合al(ob)屬于相關(guān)標簽集合rl(ob).cl(ob)代表弱標簽集合,其中的標簽可能屬于rl(ob),也可能不屬于rl(ob).對弱標簽預(yù)處理時,確認弱標簽是相關(guān)或不相關(guān)標簽,從而縮小弱標簽集合.具體過程如算法4 所示,給定一個實例ob,如果它落入一個標簽發(fā)現(xiàn)規(guī)則兩側(cè)的異常特征模式,并具有該規(guī)則的左側(cè)標簽,則右側(cè)標簽屬于其相關(guān)異常rl(ob).具體地,給定實例ob和異常特征模式NM(μ,Σ),如果ob落入(μ-3·Σ,μ+3·Σ)區(qū)間,則ob∈NM.對不相關(guān)標簽排除時,如果標簽排除規(guī)則一側(cè)的標簽屬于給定實例,則丟棄另一側(cè)的標簽,將該標簽從弱標簽集合cl(ob)中刪除.
算法4.reduceWeakLabelSet.
輸入:樣本ob,標簽發(fā)現(xiàn)規(guī)則IR,標簽排除規(guī)則ER;
輸出:ob的相關(guān)標簽和縮減后的弱標簽集合.
算法4 的運行時間取決于一個實例的標簽數(shù)和針對一個標簽的規(guī)則數(shù),所以它的時間復(fù)雜度是O(u·Mr),其中u是U的大小,Mr是單個異常的標簽發(fā)現(xiàn)或排除規(guī)則的最大數(shù)目.實際中,算法4 運行時間遠小于O(u·Mr),因為一個實例的標簽數(shù)目通常遠小于u.
標簽清洗時,二分類器BD迭代地對剩余的弱標簽進行區(qū)分,擴展相關(guān)標簽集合或從cl(ob)中清除不相關(guān)標簽,同時更新二分類器BD.為避免ob無休止地參與迭代,須設(shè)定其生存指數(shù)lf(ob).為此,在ED∪WD上構(gòu)建隔離森林iForest[40].實例在隔離森林中的平均路徑長度apl(ob)作為ob的生存指數(shù)分量.每輪迭代中,ob的生存指數(shù)lf(ob)修改為:
其中x是控制變化率的因子.式(25)的合理性在于,apl(ob)越大,ob越可能被經(jīng)常出現(xiàn)的特征模式覆蓋,因此需要的迭代次數(shù)越少;|cl(ob)|越大,需要越多的迭代來區(qū)分其中的相關(guān)標簽和非相關(guān)標簽.
迭代清洗的算法流程如圖3 所示,迭代直到所有弱標簽被分類為相關(guān)標簽或不相關(guān)標簽,或生存指數(shù)小于等于0.在ob到期后,如果仍無法確定標簽l是否屬于ob,將這項任務(wù)留給人工識別.每輪循環(huán)時,一方面確定相關(guān)和不相關(guān)標簽,另一方面調(diào)用update-Discriminator更新異常特征模式參數(shù)和所有標簽的二分類器.迭代清洗算法的時間復(fù)雜度是O(N·ul·l fm),其中N是WD的大小,ul是一個實例的弱標簽數(shù)目的上界,l fm是實例的生命周期的上界.
Fig.3 Flow chart of iterative cleaning algorithm圖3 迭代清洗算法流程圖
圖3 中的標簽迭代清洗調(diào)用updateDiscriminator實現(xiàn)二分類器更新,二分類器更新的算法流程如圖4所示.首先,將新識別的實例和標簽分配給相應(yīng)的正、負類簇,并調(diào)整Beta 分布,進而根據(jù)類簇樣本調(diào)整異常特征模式參數(shù).這是為每個異常標簽l調(diào)整分割閾值 θl和模糊區(qū)間 ρl的基礎(chǔ).
Fig.4 Flow chart of updateDiscriminator圖4 二分類器更新算法流程圖
實驗在配備AMD CPU(8 核@2.90 GHz)和16 GB內(nèi)存的計算機上運行,原型系統(tǒng)用Python 實現(xiàn),
實驗共采用了3 個心電數(shù)據(jù)集,前2 個是從社區(qū)醫(yī)療中心收集的真實數(shù)據(jù)集,每個樣本是12 導(dǎo)聯(lián)、10 s 的記錄,采樣頻率為500 Hz.異常標簽共有16 個,如表1 所示.一個數(shù)據(jù)集CHE 包含3 919 個樣本,心電異常標簽由專業(yè)醫(yī)生標記和確認,標簽是完整和正確的.另一個數(shù)據(jù)集CHW 包含12 385 個樣本,部分標簽缺失或不正確.第3 個是MIT-BIH 的公共數(shù)據(jù)集[45],記為MIT.MIT 收集了其中40 個包含II 和VI 導(dǎo)聯(lián)、30 min 的心電記錄,取樣頻率是360 Hz,將每個心電記錄分成等長的180 個長度是10 s 的樣本,將每個樣本心跳對應(yīng)的標簽合并,作為該樣本的多標簽.由于個別標簽的樣本非常稀疏,實驗時采用了包含表3 所示的8 個異常標簽的7 166 個樣本.心電波去噪,基線漂移消除,QRS 波、P 波和T 波的識別和特征提取按文獻[39]所述實現(xiàn),每個樣本取100 個特征.
Table 3 Abnormality Labels in MIT-BIH Dataset表3 MIT-BIH 數(shù)據(jù)集中的異常標簽
為了度量標簽清洗的效果,采用3 個指標,即precision,recall,F(xiàn)1,它們根據(jù)表4 所示的3 個指標定義.
Table 4 Meanings of TP,FP and FN表4 TP,FP,FN 的含義
給定一個標簽l,其precision,recall,F1 定義為
匯報的度量根據(jù)標簽的權(quán)重計算平均值.例如,測試集TS上precision的計算為
一方面,在真實的示例數(shù)據(jù)集CHE 和弱數(shù)據(jù)集CHW 按照如下步驟驗證方法效果.CHW 作為弱數(shù)據(jù)集WD,由于難以確定WD上的準確標簽,根據(jù)訓(xùn)練的分類器效果間接度量標簽的清洗效果.首先,將CHE 分為2 部分:1/3 的CHE 作為測試集TS,其余作為示例數(shù)據(jù)集ED,對WD的清洗效果按照3 個步驟計算:
1)在WD上為每個異常訓(xùn)練1 組二分類器.然后,在TS上計算precision,recall,F(xiàn)1,分別記為precisionorg,racallorg,F1org.
2)在WD的清洗數(shù)據(jù)集上為每個異常訓(xùn)練1 組二分類器,進而在TS上計算precision,recall,F(xiàn)1,分別表示為precisioncln,recallcln,F(xiàn)1cln.
3)上述2 次測量值的差作為性能指標.例如,對于d f1=F1cln-F1org作為性能指標.
另一方面,分別在CHE 和MIT 上模擬噪聲標簽,形成2 個模擬數(shù)據(jù)集SCHE 和SMIT 來評估方法效果[7],即將各類標簽按照一定的比率替換為不屬于樣本的隨機標簽,形成噪聲標簽.具體地,從CHE 中選擇1/3 的樣本作為ED,另外的2/3 的樣本生成2 份拷貝.一份作為正確標簽參照,另一份引入不同級別(5%,10%,20%,30%,40%)的噪聲標簽作為WD.在MIT 上也同樣操作.然后,對WD進行清洗,清洗后的樣本與參照相對比,從而計算precision,recall,F(xiàn)1.為避免實驗結(jié)果的隨機性,使用6 折交叉驗證計算各個度量.根據(jù)采樣效果,設(shè)置閾值st=10.
給定一個規(guī)則,其準確率(acc)是正確識別的正(或負)標簽占識別出的正(或負)標簽的比例.下面分析在不同噪聲水平下2 種標簽規(guī)則的影響因素.除特別說明,本節(jié)匯報的是在SCHE 上的結(jié)果,其他數(shù)據(jù)集上的結(jié)果呈現(xiàn)相同趨勢,不再贅述.
5.1.1 影響標簽發(fā)現(xiàn)規(guī)則的因素
圖5 和圖6 分別顯示了在噪聲水平為10%和30%時,固定其他參數(shù),置信度閾值ct從0.1 增加到0.6 時,準確率acc的變化.可以看出,隨著ct的增加,準確率先增大,然后趨于平穩(wěn).在其他噪聲水平下,呈現(xiàn)類似的趨勢.這是因為ct越大,規(guī)則的置信度越高,規(guī)則的約束性更強,被包含的標簽的準確度更高.
Fig.5 acc changing with ct at noise level 10%圖5 噪音水平10%時準確率隨置信度閾值的變化
Fig.6 acc changing with ct at noise level 30%圖6 噪音水平30%時準確率隨置信度閾值的變化
圖7 和圖8 分別顯示了在噪聲水平為10%和30%時,固定其他參數(shù),正相關(guān)閾值rt從0.1 增加到0.6 時,準確率的變化.可以看出,隨著rt的增加,準確率先增大然后趨于平穩(wěn).在其他噪聲水平下,呈現(xiàn)類似的趨勢.這是因為正相關(guān)性越高,對2 個標簽共現(xiàn)頻率的約束越高.實驗中,在模擬數(shù)據(jù)集上,對不同噪音水平采用不同的ct和rt.在真實數(shù)據(jù)集上,根據(jù)采樣估計ct和rt.
Fig.7 acc changing with rt at noise level 10%圖7 噪音水平10%時準確率隨正相關(guān)閾值的變化
Fig.8 acc changing with rt at noise level 30%圖8 噪音水平30%時準確率隨正相關(guān)閾值的變化
5.1.2 影響標簽排除規(guī)則的因素
圖9 和圖10 分別顯示了在噪音水平為10%和30%時,acc隨閾值ε的變化.隨著ε的增加,準確率先升高,然后降低.這是因為,若ε太小,約束過于嚴格,會約束一些有效的標簽排除規(guī)則,導(dǎo)致準確率受錯誤識別標簽的影響;而隨著ε變大,可以有效地發(fā)現(xiàn)更多排除規(guī)則,使得準確率趨于穩(wěn)定;但ε進一步變大,也會導(dǎo)致排除規(guī)則準確率降低.在其他噪音水平,呈現(xiàn)類似的效果.
Fig.9 acc changing with threshold ε at noise level 10%圖9 噪音水平10%時準確率隨閾值ε 的變化
Fig.10 acc changing with threshold ε at noise level 30%圖10 噪音水平30%時準確率隨閾值ε 的變化
AFP 方法的標簽清洗包含3 個關(guān)鍵環(huán)節(jié):第1 步(ph1),在ED和WD上尋找共享異常特征模式,進而識別WD上的錨標簽(是初始標簽的一部分);第2 步(ph2),挖掘標簽發(fā)現(xiàn)和排除規(guī)則,然后擴充WD上樣本的初始相關(guān)標簽集;第3 步(ph3),利用二分類器進行弱標簽的迭代清洗.為了驗證各個環(huán)節(jié)的作用,AFP 方法分別消除ph1,ph2,ph3,記為AFP-ph1,AFPph2,AFP-ph3 后,匯報綜合性能指標F1 的變化情況.
圖11~15 匯報了噪聲水平分別為5%,10%,20%,30%,40%時2 個模擬數(shù)據(jù)集SCHE 和SMIT 上的消融實驗結(jié)果.圖16 匯報了在真實數(shù)據(jù)集CHE 和CHW 上的消融實驗結(jié)果.模擬和真實數(shù)據(jù)集上的結(jié)果表明:
Fig.11 Ablation experiment at noise level 5%圖11 噪聲5%的消融實驗
Fig.12 Ablation experiment at noise level 10%圖12 噪聲10%的消融實驗
Fig.13 Ablation experiment at noise level 20%圖13 噪聲20%的消融實驗
Fig.14 Ablation experiment at noise level 30%圖14 噪聲30%的消融實驗
Fig.15 Ablation experiment at noise level 40%圖15 噪聲40%的消融實驗
Fig.16 Ablation experiment on real dataset圖16 真實數(shù)據(jù)集上的消融實驗
1)在不同的噪聲水平下去除步驟ph1 后,在模擬數(shù)據(jù)集SCHE 上,F(xiàn)1 指標降低了5.8~7.99 個百分點,SMIT 上降低了6.21~10.17 個百分點,在真實數(shù)據(jù)集上,F(xiàn)1 降低了12.68 個百分點.這是因為如果沒有ph1,不僅不能確定WD的錨標簽,而且不能利用含錨標簽的WD樣本來擴充規(guī)則挖掘的可用樣本.
2)在不同的噪聲水平下去除步驟ph2 后,SCHE上的F1 指標降低了1.37~7.63 個百分點,SMIT 上降低了1.75~6.12 個百分點,真實數(shù)據(jù)集上降低了4.43個百分點.這是因為,步驟ph2 根據(jù)挖掘的規(guī)則確定屬于樣本的異常標簽,在擴充初始相關(guān)標簽集的同時,盡量避免引入錯誤標簽.
3)在不同的噪聲水平下去除步驟ph3 后,模擬數(shù)據(jù)集SCHE 上的F1 指標降低了16.89~20.93 個百分點,在SMIT 上F1 降低了7.07~13.25 個百分點,真實數(shù)據(jù)集上的F1 指標降低了19.71 個百分點.這是因為二分類器在清洗中不斷自調(diào)整,有效地識別單次清洗中無法識別的、處于分布邊緣的標簽.可見,步驟ph3 居于AFP 的主體地位.
在模擬和真實數(shù)據(jù)集上,AFP 方法與交叉驗證(cross validation,CV)方法[7]和基于DDF 的標簽噪聲過濾方法[38]進行了比較.CV 方法利用SVM,KNN,NB,LDA 和DT 這5 種分類器,協(xié)同識別標記錯誤的樣本.CV 方法為每個標簽訓(xùn)練5 個分類器,如果5 個分類器對一個實例的標簽持不同認知,則認為該標簽被錯誤標記.根據(jù)3 個標準S1,S2,S3 確定樣本是否被錯誤標記.對于S1,如果5 個分類器都認為異常不屬于實例,則該異常是錯誤標簽.對于S2,如果4個或更多分類器認為異常不屬于實例,則認為該異常標記錯誤.對于S3,如果3 個或更多分類器認為異常不屬于該實例,則認為該異常標記錯誤.DDF 方法將每個樣本的鄰域樣本劃分為高密度和低密度區(qū)域,然后針對不同的區(qū)域采用不同的噪聲過濾規(guī)則進行過濾.由于DDF 能夠識別出噪聲標簽,但不能自動修補,因此在模擬數(shù)據(jù)集上對每個標簽計算precision時,用DDF 排除掉噪聲標簽后的該類標簽數(shù)目作為識別出的該類標簽數(shù)目.
圖17~21 匯報了AFP,CV,DDF 方法在SCHE 上的precision,recall,F(xiàn)1 值.可見,當數(shù)據(jù)噪聲級別為5%時,AFP 方法的F1 指標比CV-S1 高5.15 個百分點,比CV-S3 高 23.42 個百分點,比DDF 高18.73 個百分點.當噪聲水平為10%時,AFP 方法的F1 指標比CV-S1 高 3.35 個百分點,比CV-S3 高21.53 個百分點,比DDF 高17.13 個百分點.當噪聲水平為20%時,AFP 方法的F1 指標比CV-S1 高0.7 個分點,比CVS2 指標高8.17 個百分點,比CV-S3 高17.75 個百分點,比DDF 高14.25 個百分點.當噪聲水平為30%時,AFP 方法的F1 指標比CV-S1 低1.63 個百分點,但比CV-S2 和CV-S3 分別高5.16 和14.44 個百分點,比DDF 高12.1 個百分點.當噪聲水平為40%時,AFP 方法的F1 指標比CV-S1 低3.93 個百分點,比CV-S2 和CV-S3 分別高1.86 和 11.18 個百分點,比DDF 高9.84個百分點.實驗結(jié)果表明,AFP 在SCHE 的噪聲不是很高的情況下,清洗效果優(yōu)于CV 方法;在數(shù)據(jù)噪聲很高的情況下,AFP 方法略低于CV-S1 方法,仍優(yōu)于CV-S2 和CV-S3;同時,AFP 穩(wěn)定地優(yōu)于DDF 方法.
Fig.17 Performance comparison over SCHE at noise level 5%圖17 在SCHE 上噪聲5%時的性能比較
Fig.18 Performance comparison over SCHE at noise level 10%圖18 SCHE 上噪聲10%時的性能對比
Fig.19 Performance comparison over SCHE at noise level 20%圖19 SCHE 上噪聲20%時的性能對比
Fig.20 Performance comparison over SCHE at noise level 30%圖20 SCHE 上噪聲30%時的性能對比
Fig.21 Performance comparison over SCHE at noise level 40%圖21 SCHE 上噪聲40%時的性能對比
圖22~24 匯報了SMIT 上噪聲為5%,20%,40%時的實驗結(jié)果.當噪聲級別為5%時,AFP 方法的F1指標比CV-S1 高3.25 個百分點,比CV-S2 高 4.6 個百分點,比CV-S3 高 11.33 個百分點,比DDF 高8.16 個百分點.當噪聲水平為20%時,AFP 方法的F1 指標比CV-S1 高1.26 個分點,比CV-S2 高 0.11 個百分點,比CV-S3 高6.09 個百分點,比DDF 高4.28 個百分點.當噪聲水平為40%時,AFP 方法的F1 指標比CV-S1高0.64 個百分點,比CV-S2 低1.66 個百分點,比CVS3 高 2.33 個百分點,比DDF 高2.88 個百分點.其他噪聲水平下呈現(xiàn)類似趨勢,不再贅述.實驗結(jié)果表明,在噪聲不是很高的情況下,AFP 方法在SMIT 上穩(wěn)定地優(yōu)于CV 方法;在噪聲很高的情況下,AFP 方法仍優(yōu)于CV-S1 和CV-S3 方法;另外,AFP 穩(wěn)定地優(yōu)于DDF 方法.
Fig.22 Performance comparison over SMIT at noise level 5%圖22 SMIT 上噪聲5%時的性能對比
Fig.23 Performance comparison over SMIT at noise level 20%圖23 SMIT 上噪聲20%時的性能對比
Fig.24 Performance comparison over SMIT at noise level 40%圖24 SMIT 上噪聲40%時的性能對比
同時,在真實數(shù)據(jù)集CHE 和CHW 上進行了比較.首先,在原始數(shù)據(jù)集CHW 上訓(xùn)練分類模型,然后分別用AFP,CV,DDF 方法對數(shù)據(jù)集進行清洗,比較在清洗前和清洗后的數(shù)據(jù)上訓(xùn)練分類器的性能指標.表5 顯示了在真實數(shù)據(jù)集上的比較結(jié)果.AFP 方法的平均F1 指標提高5.19 個百分點,CV-S1 和CV-S2 分別提高1.06 和0.22 個百分點,DDF 提高3.13 個百分點.AFP 方法性能的優(yōu)越主要因為2 個原因:首先,AFP 方法根據(jù)類簇在示例數(shù)據(jù)集和弱標簽數(shù)據(jù)集上的一致性來識別錨異常,充分利用了人工標注的知識,也利用了弱標簽數(shù)據(jù)集的可用信息.其次,采用迭代框架,逐步縮小模糊區(qū)間來推斷異常標簽,保證了清洗效果的可靠和穩(wěn)步提升.
Table 5 Comparison of AFP,CV and DDF on Real Dataset表5 真實數(shù)據(jù)集上AFP,CV,DDF 方法的對比 %
根據(jù)心電圖(ECG)判斷心臟異常是臨床廣泛應(yīng)用的心臟健康檢測技術(shù).目前,自動異常檢測主要采用有監(jiān)督學(xué)習(xí)技術(shù)來實現(xiàn).由于生物電信號的多樣性和相關(guān)性,一個好的分類器通常需要依賴大量的高質(zhì)量標簽樣本,才能保證分類器的精度和泛化性.這點對于當前流行的深度學(xué)習(xí)技術(shù)尤為重要.然而,高質(zhì)量的心電標注不僅需要專業(yè)的心電知識,而且要耗費大量的時間和精力.實際中,經(jīng)常會有一些標注缺失或錯誤的心電數(shù)據(jù)集,如何對這些弱標簽的心電數(shù)據(jù)進行清洗,提高標注質(zhì)量,使其變得可用,是一個很有價值的問題.
設(shè)有一個包含所有正確標簽的示例數(shù)據(jù)集,可大可小,這在實際中完全可行.問題轉(zhuǎn)化為在示例數(shù)據(jù)集的輔助下,對弱標記數(shù)據(jù)集進行標簽清洗,將其轉(zhuǎn)化為一個干凈數(shù)據(jù)集.由于一個心電異常通常表現(xiàn)出不同的特征模式,提出了一種基于標簽特征模式的標簽清洗方法.該方法首先確定高置信度屬于實例的錨標簽,它們是相關(guān)標簽集的子集.然后,以迭代方式清洗其他弱標簽.本文總結(jié)為3 個方面:1)根據(jù)示例數(shù)據(jù)和弱標簽數(shù)據(jù)的一致性來識別錨特征模式,充分結(jié)合了人工知識和數(shù)據(jù)的統(tǒng)計特性來提高標簽區(qū)分能力.2)提出了挖掘標簽發(fā)現(xiàn)和排除規(guī)則的具體方法.前者用于包含相關(guān)標簽,而后者用于刪除無關(guān)標簽.3)采用迭代框架逐步清洗標簽,保證清洗效果的可靠和穩(wěn)定.在真實和模擬數(shù)據(jù)集上的實驗結(jié)果證明了方法的有效性.未來將研究根據(jù)病癥的因果關(guān)系提高清洗效果.
作者貢獻聲明:韓京宇負責(zé)論文思路、實驗方案、論文撰寫和修改;陳偉和趙靜負責(zé)實驗和數(shù)據(jù)整理;郎杭負責(zé)相關(guān)文獻查閱和方法改進;毛毅提供實驗平臺和專業(yè)知識指導(dǎo).