国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于樹搜索的層次多標簽乳腺疾病分類診斷方法

2020-04-29 10:55金程笑張敬誼俞春儒
智能計算機與應用 2020年2期
關(guān)鍵詞:分類器病歷閾值

金程笑, 潘 喬, 張敬誼, 俞春儒

(1 東華大學 計算機科學與技術(shù)學院, 上海 201620; 2 萬達信息股份有限公司, 上海 201112)

0 引 言

近年來,乳腺疾病的發(fā)病率正在逐漸上升,嚴重影響了婦女和少數(shù)男性的生命安全和生活質(zhì)量,據(jù)統(tǒng)計,全球每年查出患乳腺癌的人數(shù)約有120萬,其中50萬人死于乳腺癌[1-2]。所以,積極尋找有效的乳腺疾病診斷方法,盡早對診斷結(jié)果作出預防,提高乳腺病患的治愈率在目前的研究中尤為重要。隨著現(xiàn)代化臨床醫(yī)療信息系統(tǒng)的快速發(fā)展,電子病歷系統(tǒng)中積累了越來越多的醫(yī)療數(shù)據(jù),其中乳腺疾病數(shù)據(jù)占據(jù)了一定的比例,對乳腺疾病的診斷、預測和治療等有著重要的研究價值[3]。

人工智能中常用的預測方法一般都歸結(jié)為二分類或多分類問題,對于疾病的預測方法有例如甲狀腺良惡性的預測方法,阿爾茲海默癥的多分類診斷方法等[4]。但是在實際的臨床上,患者的患病情況較為復雜,同一名患者可能會有3~4種疾病,例如患有乳腺腫瘤疾病的患者,可能還伴隨轉(zhuǎn)移、高血壓以及骨質(zhì)疏松等疾病,各個大類疾病分類下會存在很多的小類疾病分類,小類疾病分類下可能還會有更細粒度的疾病類別標簽存在,例如,乳腺良性腫瘤這一大類會分類為纖維瘤、脂肪瘤、乳頭狀瘤這三個小類。但是,傳統(tǒng)的分類問題往往會忽略各標簽之間存在的依賴關(guān)系,并且分類算法輸出數(shù)目呈指數(shù)級,占用空間過大,造成預測性能不佳,因此,多標簽分類成為解決該類問題的主要方法[5-6]。

多標簽分類指的是一個樣本可能同時屬于多個類別(即有多個標簽),并且這些類別之間可能存在一定的相關(guān)性[7]。針對同一個樣本進行多標簽分類相較于單標簽分類要復雜得多,而在實際生活中存在較多的多標簽分類的問題[8],例如電影分類、圖書分類和疾病分類等。

多標簽分類算法通常分為2個類別。一類是通過數(shù)據(jù)集分解,將多標簽分類問題分解為多個單標簽分類問題處理。給定n個元素的標簽集合L=(L1,L2,…,Ln),將L中的任意2個標簽Ln,Lm組合病構(gòu)建一個分類器,該分類器中只含有對應標簽Ln,Lm的類別的數(shù)據(jù)。如果將L中所有標簽進行組合會有n*(n-1)/2個分類器。因此,多標簽分類問題可以轉(zhuǎn)化為通過構(gòu)建n*(n-1)/2個二分類問題進行處理,如Goldstein等人[9]在i2b2 2008數(shù)據(jù)上實驗,使用一對一策略將肥胖癥及其他15種并發(fā)癥進行多標記分類問題轉(zhuǎn)換為多個二元分類問題;另一類是通過基于單個優(yōu)化的多標簽分類算法,如耿麗娟[10]提出基于域數(shù)的加權(quán)KNN算法,針對9 980篇的醫(yī)療相關(guān)文本進行多分類,構(gòu)建內(nèi)、外層體系結(jié)構(gòu)分別通過KNN算法進行分類,該算法的優(yōu)點是不需要更改數(shù)據(jù)集的結(jié)構(gòu),根據(jù)近鄰域數(shù)進行選擇性文本加權(quán),保留了標簽之間的依賴,有效地提高了分類精度。

上述兩類算法的問題在于基于數(shù)據(jù)集分解的算法無法保證類別之間存在的依賴性,而基于單個優(yōu)化的算法雖然保留了標簽之間的依賴,但是又因為多標簽分類問題的輸出空間過大會出現(xiàn)計算效率較低的問題。因此,一些研究者根據(jù)多標簽問題的2個主要缺點提出了層次多標簽分類算法,如Clare等人[11]利用分層多標簽分析微生物突變表型生長實驗的數(shù)據(jù),以預測新的基因功能,使得準確率超過80%。該算法通過將數(shù)據(jù)集分層可以保證類別間的依賴關(guān)系,通過將標簽分層在訓練時可以將數(shù)據(jù)集進行分類,減少輸出空間,很好地提高計算性能。

本文提出了一種基于樹搜索的層次多標簽乳腺疾病分類預測方法。按診斷結(jié)果之間的層次關(guān)系構(gòu)建了層次多標簽樹,通過對標簽樹的路徑搜索,最終實現(xiàn)乳腺疾病的多標簽分類。該方法的特點是利用樹結(jié)構(gòu)可以充分考慮到標簽集之間的層次結(jié)構(gòu)的依賴關(guān)系,達到規(guī)范化診斷結(jié)論的目的。

1 具體方法

本文提出的基于樹搜索的層次多標簽分類診斷方法的總體流程如圖1所示。首先,通過對所要預測的診斷疾病進行層次標簽樹構(gòu)建。然后,對每個層次標簽樹的非葉子節(jié)點進行基分類器的訓練。最后,對層次標簽樹的路徑進行打分,選取高于某設定閾值的路徑進行反饋,實現(xiàn)對乳腺電子病歷的層次多標簽分類診斷。

圖1 基于樹搜索的層次多標簽分類診斷算法的流程圖

Fig. 1 Flow chart of hierarchical multi-label classification and diagnosis algorithm based on tree search

1.1 構(gòu)建層次標簽樹

1.1.1 獲取實體標簽集

本文的實驗數(shù)據(jù)均來自上海某三甲醫(yī)院提供的真實的乳腺電子病歷數(shù)據(jù),主要采用電子病歷中的出院小結(jié)和首次病程記錄作為研究對象。根據(jù)i2b2(2010)電子病歷標注規(guī)范中5類實體的描述對乳腺電子病歷進行標注,實體名稱及其標注見表1[12]。采用了乳腺電子病歷的實體和關(guān)系聯(lián)合抽取模型,對乳腺電子病歷進行建模,同時完成乳腺電子病歷實體識別與關(guān)系抽取,獲得了最終的實體標簽集[13-15]。

1.1.2 疾病實體分類

在乳腺電子病歷中,患者的患病情況較為復雜,同一名患者可能會有3~4種疾病,例如患有乳腺腫瘤疾病的患者,可能還伴隨轉(zhuǎn)移、高血壓以及骨質(zhì)疏松等疾病,各個大類疾病分類下會存在很多的小類疾病分類,小類疾病分類下可能還會有更細粒度的疾病類別標簽存在,例如,乳腺良性腫瘤這一大類會分類為纖維瘤、脂肪瘤、乳頭狀瘤這三個小類。疾病的劃分見表2。

表2 疾病類別

1.1.3 構(gòu)建層次標簽樹

通過表2可以發(fā)現(xiàn)這些標簽(疾病)之間存在樹形層次結(jié)構(gòu)關(guān)系,將上表劃分的疾病構(gòu)建為層次標簽樹,疾病關(guān)系層次結(jié)構(gòu)映射如圖2所示,標簽樹包括非葉子節(jié)點和葉子節(jié)點兩類。非葉子節(jié)點作為疾病大類一般包含多個子類標簽,即疾病子類,在標簽樹上從根節(jié)點至葉子節(jié)點,也表示了從大的疾病分類逐漸縮小到疾病小類的過程。

圖2 疾病層次多標簽樹結(jié)構(gòu)體

1.2 基分類器訓練

1.2.1 訓練集篩選

由于在層次多標簽樹中,每個非葉子節(jié)點對應作為一個分類器對其所對應的孩子節(jié)點進行分類。每一個分類器ci的訓練集分為2個部分。一部分由對應距離非葉子節(jié)點ci最近一層的子節(jié)點sub+(ci)組成,記為train+(ci),用于訓練屬于節(jié)點ci的分類器;另一部分由不含有ci子節(jié)點的所有標簽組成,用于訓練完全不屬于ci節(jié)點的分類結(jié)果,記為train-(ci)。若ci沒有兄弟節(jié)點,則在層次標簽樹中向上搜索,找到離ci最近的含有兄弟節(jié)點的非葉子節(jié)點bro(parent(ci)),并且將這個節(jié)點不包含ci的樣本加入train-(ci)。

例如,當前節(jié)點y為乳腺良性腫瘤,則ci這個節(jié)點的訓練集由正樣本訓練集ci下所有包含子節(jié)點的樣本組成,同時,負樣本由乳腺惡性腫瘤這個節(jié)點的樣本組成且負樣本中不含有ci的節(jié)點和ci的子節(jié)點。

1.2.2 基分類器訓練

模型的訓練算法描述如算法1所示。

算法1 乳腺電子病歷層次多標簽分類訓練算法

輸入:乳腺電子病歷未標注數(shù)據(jù)集U,疾病分類標簽Y

輸出:學習模型L

initialize:U' ∈U

/*訓練集初始化,進行標注*/

LabelTree=createTree(UJ')

/*創(chuàng)建層次多標簽樹*/

ForciinLabelTree:

Ifciis not leafnode

/*判斷節(jié)點ci是否為葉子節(jié)點*/

train+ =train+.add(sub+(ci)) /*把ci最近的子節(jié)點加入train+集合中*/

Ifcihas brother node /*如果ci有兄弟節(jié)點*/

train- =train-.add(sub-(ci)) /*把ci兄弟節(jié)點最近的子節(jié)點加入train-集合中*/

Else

train- =train-.add(bro(parent(ci)))

/*找到離ci最近的含有兄弟節(jié)點的非葉子節(jié)點bro(parent(ci)),并且將這個節(jié)點不包含ci的樣本加入train-(ci)*/

End If

modelL=train(train+∪train-)

/*訓練學習器*/

End If

End For

returnL

算法1是根據(jù)乳腺電子病歷的特點,先通過表2的分類構(gòu)建層次多標簽分類樹,再將訓練集按照樹中的每一個非葉子節(jié)點的標簽進行分類,最后形成乳腺電子病歷層次多標簽分類訓練算法框架。該框架也可根據(jù)數(shù)據(jù)的實際需要更換合理的基分類器進行訓練、分類。

1.3 多標簽分類診斷

層次標簽樹中一條路徑的得分是通過每個非葉子節(jié)點上基分類器的預測結(jié)果進行加權(quán)求和獲得的。層次標簽樹中的權(quán)值如式(1)所示:

(1)

式(1)的主要作用是反映路徑中層次對于節(jié)點的影響,即越靠近根節(jié)點的非葉子節(jié)點的分類準確性對整個分類起到的影響更大。如果高層的節(jié)點出現(xiàn)分類錯誤,則對整個路徑上的分類會出現(xiàn)較大的影響,產(chǎn)生的錯誤損失也會越大。

非葉子節(jié)點標簽yi的高度由level(y)表示,層次標簽樹中樹的最大高度通過maxlayer表示。層次標簽樹中的每條路徑的得分通過式(2)來計算:

(2)

路徑得分si計算流程是:給定第i條路徑,節(jié)點個數(shù)為m,首先計算每一個基分類器所預測概率p,然后再與每一層的權(quán)值w(ci)進行加權(quán),最后通過計算預測概率的加權(quán)和。計算路徑得分如算法2所示。

算法2 乳腺電子病歷層次多標簽分類算法

輸入:乳腺電子病歷測試數(shù)據(jù)集U,疾病分類標簽Y,基分類器Classifier閾值σ

輸出:預測標簽集Labels

initialize:U'∈U

/*訓練集初始化,進行標注*/

LabelTree=createTree(UJ')

/*創(chuàng)建層次多標簽樹*/

ForciinLabelTree:

Ifciis notleafnode/*判斷節(jié)點ci是否為葉子節(jié)點*/

p(ci) =classifier(ci) /*計算非葉子節(jié)點ci的預測概率 */

/*計算ci所在層次節(jié)點的權(quán)值*/

/*計算ci節(jié)點的得分*/

End If

End For

Forsinscore:

scoreTree=SumTree(s)

Ifs>=σ:

Labels.add(ci)

End If

End For

returnLabels

算法2首先計算了每一個節(jié)點的概率和節(jié)點所在層的權(quán)重,再通過式(2)計算該路徑的得分,比較選取不同的閾值對結(jié)果的驗證、比較,將得分大于閾值的路徑中的節(jié)點加入分類結(jié)果的集合中,作為最終結(jié)果返回,每個返回節(jié)點對應的標簽則為最終的預測標簽集合。

2 實驗

2.1 實驗數(shù)據(jù)

為了對本文提出的層次多標簽方法進行有效性評估,首先將電子病歷原始數(shù)據(jù)經(jīng)過上述的實體識別與關(guān)系抽取,得到同時含有TeAS(因癥狀而采取檢查)和TeRD(檢查發(fā)現(xiàn)某種疾病)這兩種關(guān)系的乳腺電子病歷數(shù)據(jù)作為訓練數(shù)據(jù)集,然后將含有癥狀的電子病歷語句篩選出作為輸入數(shù)據(jù),將疾病作為對應的結(jié)果集。數(shù)據(jù)集中部分數(shù)據(jù)見表3。

除了乳腺電子病歷入院簡要病史數(shù)據(jù)外,還額外加入體檢摘要和生命體征指標共同作為特征,作為基分類器的輸入。癥狀為乳腺電子病歷實體識別后提取的結(jié)構(gòu)化數(shù)據(jù),體檢摘要為患者進行B超、MRI等檢查的報告,生命體征為患者檢查過程中各項指標的記錄,對疾病的診斷同樣有重要的參考意義,所以把體檢摘要、生命體征和癥狀集合的數(shù)據(jù)一并加入作為特征。在此基礎(chǔ)上,可得設計研發(fā)內(nèi)容分述如下。

表3 乳腺電子病歷數(shù)據(jù)

(1)詞語編碼。首先,將癥狀中的詞語映射為一個數(shù)字,當輸入至基分類器時,這個詞語對應的數(shù)字和詞語所在詞向量表lookup table中對應的向量將會共同作為基分類器的輸入,詞語的編號由詞語在句子中的起始位置決定。

(2)標簽編碼。給定大小為n的疾病的多標簽分類集合為L=(L1,L2,...,Ln),當某樣本x含有Li時,則Li=1,否則Li=0。在本文中,標簽的總數(shù)為19,標簽集合編碼順序則按從上到下,從左到右進行排列。如果樣本x包含乳腺纖維瘤和高血壓這兩類疾病,則x在L中會對應5個標簽,對應的多標簽分類的集合對應的診斷屬性見表4。

表4 乳腺電子病歷結(jié)構(gòu)化數(shù)據(jù)編碼

Tab. 4 Structured data encoding for electronic breast medical records

數(shù)據(jù)分項對應數(shù)據(jù)編碼癥狀(12,16,20,29,35,42)生命體征(119,249,4.2,64,12,88)診斷(1,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0)

2.2 實驗評價標準

給定大小為n的標簽集合Y=(y1,y2,…,yn),集合中yi表示某樣本含有第i個標簽,分別用1和0表示樣本含有標簽yi和不含有yi。本文中,yi表示目標集合,yi′表示預測集合。這里,對研究中選用的設計評價指標將做闡釋表述如下。

(1)預測標簽在子集中的準確率(subsetaccuracy)。表示測試集中預測的標簽集合完全正確的樣本占全部樣本的比例,如式(3)所示:

(3)

(2)準確率(accuracy)。如式(4)所示:

(4)

(3)精度(precision)。如式(5)所示:

(5)

(4)召回率(recall)。如式(6)所示:

(6)

(5)F1值。如式(7)所示:

(7)

2.3 多模型實驗對比

子集準確率(subsetaccuracy)判斷為真需要滿足算法預測的標簽集合等于目標集合。由于多標簽分類的輸出空間較大,完全準確地預測每一個集合中的標簽并不容易,所以子集準確率通常提升不明顯。首先,通過本文層次標簽樹多分類方法,這項指標提升至70.3%。同時,由標簽樹的分層結(jié)構(gòu),保留標簽之間的依賴關(guān)系,可以對訓練數(shù)據(jù)集進行有效劃分,從而減少計算性能。通過對比邏輯回歸模型和KNN模型分別提高了16%和8%,所以使用標簽樹有效避免了傳統(tǒng)多標簽分類樣本空間過大導致分類效果欠佳的問題。準確率、精度、召回率和F1四類指標同樣也作為算法常規(guī)的評價標準,層次多標簽與其他模型進行比較的結(jié)果見表5。

表5 多模型實驗對比結(jié)果

2.4 多分類器實驗對比

本節(jié)通過實驗來對比多種基分類器對基于層次多標簽分類算法的效果,并選擇性能最優(yōu)的基分類器來測試本文的方法。根據(jù)4種不同的分類方法來比較不同的分類器對該層次多標簽分類算法的性能。使用4種常見的方法作為基分類器。見表6。

表6 多分類器結(jié)果對比

通過實驗的對比,將4種基分類器應用于層次多標簽分類方法,在訓練數(shù)據(jù)的維度都為300維時,LSTM+LR對比KNN算法在相同輸入的情況下,效果略好于KNN,各項指標普遍提升約2%。層次Bi-LSTM模型對比LSTM+LR與KNN模型的精確度提升明顯,準確度高出約5%。層次Bi-LSTM算法的分層提取特征的特點,將一個較長維度的輸入進行分層特征提取,有效地降維。通過實驗對比,本文選擇層次Bi-LSTM作為最終的基分類器。

2.5 多閾值σ實驗對比

本節(jié)中通過模型簡化測試方法對多閾值σ條件下模型的訓練效果和性能進行定量分析。采用逐步增加閾值的數(shù)量檢驗模型的分類能力通過漢明損失進行對比,如式(8)所示:

(8)

對比各算法輸出的漢明損失,漢明損失表示多標簽分類模型精度,首先計算每個樣本中標簽對預測錯誤的個數(shù),計算yiΔyi′,Δ為異或操作,再與對應預測標簽yi′的預測概率相乘,最后計算每個預測標簽乘積和的均值。

如圖3所示,當選取詞向量作為網(wǎng)絡輸入時,通過逐步增加閾值使得各算法最終輸出的路徑得分超過所設定的閾值。通過實驗對比發(fā)現(xiàn),當閾值設定在0.50~0.70之間漢明損失趨勢總體呈現(xiàn)逐步下降,而當閾值大于0.70時,accuracy的趨勢穩(wěn)定或者呈現(xiàn)出略微上升的趨勢。接下來,通過十折交叉驗證進行試驗,經(jīng)過LSTM進行初步語義特征提取的邏輯回歸算法比LR邏輯回歸算法的漢明損失降低0.2,而LSTM+LR算法與樹層次標簽算法普遍相差0.1。

當閾值為0.65時,LSTM+LR算法的漢明損失最小,多標簽分類的效果較好。當閾值為0.7時,層次多標簽算法的分類效果最為顯著,整體漢明損失低于前述2種算法。

圖3 不同大小閾值在層次多標簽算法的漢明損失對比

Fig. 3 Comparison of Hamming loss of hierarchical multi-label algorithm with different thresholds

3 結(jié)束語

本文提出了一種基于樹搜索的層次多標簽乳腺疾病分類診斷方法,實驗數(shù)據(jù)是來自上海某三甲醫(yī)院提供的真實的乳腺電子病歷數(shù)據(jù),通過引用實體和關(guān)系聯(lián)合抽取方法提取出的疾病實體作為實體標簽集。首先介紹了層次多標簽分類總體流程,然后對疾病的類別進行詳盡分類,并闡述了根據(jù)分類結(jié)果構(gòu)建層次標簽樹的過程,提出了基于樹搜索的多標簽分類診斷的計算方法,最后進行實驗對比。

通過在真實數(shù)據(jù)集上進行對比實驗,使用準確率、召回率等多組評價指標對模型結(jié)果進行評估,證明了對已有模型的改進并且有效地提高了電子病歷實體識別以及關(guān)系抽取的準確性。通過多模型和多個基分類器進行對比,證明了基于樹搜索的層次多標簽乳腺疾病分類診斷方法的有效性。

接下來的研究工作可以從這2個方面展開。首先,使用網(wǎng)絡上的公開訓練集作為實驗數(shù)據(jù),為后續(xù)多標簽預測提供更準確的訓練集做模型訓練。其次,將電子病歷中的其他因素作為特征進行多標簽分類,從而提高輔助診斷的真實性與全面性。

猜你喜歡
分類器病歷閾值
少樣本條件下基于K-最近鄰及多分類器協(xié)同的樣本擴增分類
學貫中西(6):闡述ML分類器的工作流程
電子病歷評級的分析與總結(jié)
改進的軟硬閾值法及其在地震數(shù)據(jù)降噪中的研究
土石壩壩體失穩(wěn)破壞降水閾值的確定方法
基于小波變換閾值去噪算法的改進
基于樸素Bayes組合的簡易集成分類器①
改進小波閾值對熱泵電機振動信號的去噪研究
“病例”和“病歷”
基于AdaBoost算法的在線連續(xù)極限學習機集成算法
博乐市| 岑巩县| 肥乡县| 绥芬河市| 扎兰屯市| 教育| 新蔡县| 陈巴尔虎旗| 虹口区| 瓮安县| 科尔| 临江市| 荥经县| 东光县| 南昌县| 眉山市| 广元市| 信宜市| 大英县| 南丹县| 栖霞市| 古交市| 长宁县| 商水县| 张北县| 色达县| 南安市| 巴林右旗| 墨江| 石阡县| 同江市| 蓬溪县| 新营市| 双牌县| 甘南县| 惠水县| 昌江| 罗城| 石河子市| 民和| 西林县|