?

一種用于醫療EEG數據集的聯邦遺傳算法

2023-06-18 07:02陳海宇
關鍵詞:父代適應度交叉

陳海宇

(肇慶醫學高等??茖W校公共衛生學院,廣東肇慶 526070)

0 引言

隨著數字化在社會和經濟等各個方面的不斷普及,導致產生的數據量不斷增加.在處理用戶生成的敏感數據時,如何保護用戶的隱私不被泄露是一個重要問題,也就是說,用戶不希望其他人對其擁有的機密信息進行分析,從而得出任何結論[1].聯邦學習的提出,加強了用戶的隱私保護,為解決此問題提供了一種有效方法[2].

醫療領域是聯邦學習的一個重要應用領域[3].每個醫療機構可能擁有大量的患者數據,但是基于這些獨立數據,不足以構建并訓練出性能良好的預測模型,進而更好地服務于醫療工作.針對這個問題,醫療機構之間共享數據,可以極大地幫助開發自動化診斷工具,從而有效解決這個問題.但是這些患者數據都屬于私人信息,醫院有義務保護患者的隱私,再加上法律法規的約束,阻礙了機構之間的數據共享[4].聯邦學習的應用可以幫助醫療行業的不同機構,在不共享患者數據的情況下,聯合訓練機器學習模型[5,6].

為了解決全局模型的學習問題,聯邦學習的主流方式如下[7,8]:首先,根據問題的先驗知識,構建一個基礎的神經網絡結構,用戶利用某種梯度下降的方法訓練局部模型;然后,服務器端聚合各局部模型參數,完成全局模型的更新.這個過程經過多次迭代,最終實現神經網絡的訓練.聯邦平均算法是一種典型的聯邦學習算法,在解決聚合問題時具有很好的效果,但這種方式仍然面臨著一些威脅[9,10].例如,當攻擊者獲得了全局模型,并劫持了用戶的局部模型更新梯度時,就可以倒推出用戶的部分隱私數據.為了進一步加強用戶的隱私保護,差分隱私、安全多方計算等方法被應用到聯邦學習算法中[11].雖然這些方法很有效,卻給聯邦學習帶來了更大的計算壓力和通信開銷.

最近,研究人員提出了一種新穎的方法[12],其主要思想如下:結合遺傳算法的相關知識,在不使用梯度的情況下訓練全局模型,該算法將從單個用戶到服務器的數據傳輸減少到單個適應度值.通過這種方式,用戶不需要上傳模型的梯度信息,進而提高了數據的安全性.在該算法的實驗中,使用卷積神經網絡對腦電波EEG(electroencephalography)信號進行分類,驗證了遺傳算法應用于聯邦學習的可行性.本文基于該算法,使用改進的遺傳算法對模型進行優化,并與該算法進行了比較.

1 具體模型

1.1 神經網絡模型結構

全局模型的結構對于聯邦學習的實際表現至關重要.針對上述問題,選擇專門為腦電圖預測問題設計的文獻[13-15]中介紹的淺卷積網絡.該網絡的核心是3個卷積層,旨在識別信號中的特征信息.前兩個卷積層之后是一個池化層,隨后是第三個卷積層.在這一層的輸出上,應用批處理歸一化,然后添加了帶有sigmoid激活函數的全連接輸出層.

1.2 目標函數

為了使適應度在遺傳訓練中最大化,選擇負均方誤差(NMSE),計算方法如式(1)所示:

結合NMSE進行適應度的評價,原始的單目標優化問題就轉換為優化神經網絡中w的值,使得計算出的NMSE值最大化,如下式所示:

在本文中,個體的生成,即選擇、交叉和變異發生在中央服務器的一個集中位置.系統的連接節點通過評估不同的設置來參與優化.一個個體的適應度可以通過對局部適應度值的加權平均來計算.

2 基于改進遺傳算法的問題求解過程

在本節中,將描述求解問題時不同階段采用的特定方法.

(1)編碼

使用直接編碼方式對上述介紹的神經網絡進行編碼,模型中的連接權重等參數使用實數進行編碼.例如,對于具有30個卷積核的卷積層,卷積核的大小為1×25時,對應的編碼采用30×1×25的矩陣進行實數編碼.

(2)種群初始化

開始時,創建一個初始種群,其中每個個體隨機初始化模型的權重.從初始種群開始,沿著計算適應度-選擇-交叉-突變循環迭代.

(3)交叉操作

交叉方式決定了從父代生成新個體的方法,從種群中隨機選擇兩個父代個體,用于生成子代.下面介紹了4種交叉的方式:

(a)對半混合:這種交叉方式實現起來比較簡單,通過將第一個父代個體的基因前半部分與第二個父代個體的基因后半部分結合在一起,構成子代的基因型,使用式(3)表示:

其中,n為個體基因向量的長度,并且a=(a1,a2,…,an),b=(b1,b2,…,bn)代表了兩個父代的基因向量,1 ≤i≤n.

(b)交錯混合:在這種方式中,來自兩個父代的基因向量通過交錯賦值的方式,來創建后代向量,如下式所示:

其中,n為個體基因向量的長度,a和b代表兩個父代基因向量.

(c)均值混合:在這種交叉方式中,取兩個父代個體的基因向量在相同位置上的平均值,創建子代的基因向量,可以表示為下式:

其中,n為個體基因向量的長度,a和b代表兩個父代基因向量.

(d)卷積核交叉:這種交叉的方式,較上述3種有著本質上的不同,特點是保留了部分父代個體的模型信息.在每個卷積層中,有多個卷積核/過濾器.這些卷積核對數據進行特征提取,保存著關鍵的模式信息,從而幫助神經網絡更好地學習數據集.類似地,在全連接層中,神經元的輸入權重也描述了前一層的某些模式.卷積核交叉通過將父代基因向量中每一層的卷積核隨機混合,生成子代個體的基因型.這種方式保證了交叉過程中卷積核的完整性,使得神經網絡的模式信息得到保留,表達式如式(6)所示:

其中,num_channel為個體基因向量中卷積核的個數,a和b代表兩個父代基因向量,channel_i表示第i個卷積核,μ為取值范圍在0-1之間的隨機數.

前3種交叉方式,實現過程比較簡單.由于沒有考慮到神經網絡的結構和卷積核的學習模式,在一些實驗中模型的收斂性能較差.卷積核交叉方式是一種更高層次的方法,用來作為遺傳神經網絡的交叉方式,具有很高的適用性.在自然界中,遺傳也是一種更高層次的基因混合,而不是有機分子的低層次混合.因此,父母的特征是完整的,它與遺傳學的相似之處可以概括為:DNA 代表了網絡的權值,而基因則代表的是卷積核.本算法采用了卷積核交叉來進行交叉操作.

(4)變異

交叉操作本質上是父代個體的交叉組合,在此基礎上,使用變異操作增加產生新個體的潛力,可以進一步擴大算法的搜索空間,找到適應度更高的個體.為了定義變異算子,首先需要定義變異基因的數量和這些基因上的改變量.對于前者,使用一個概率值來確定個體基因中每個值的變異概率;后者是一個浮點值,用于確定對每個變異基因的變化量.下面介紹兩種執行變異操作的方法:

(a)通過偏移量變異:這種方式,通過對產生變異的節點添加一個隨機值,完成變異的操作.在具體的實現中,使用到的偏移量是取值范圍在[-mutation_rate,mutation_rate]之間的一個隨機值,mutation_rate表示變異概率.

(b)通過乘法進行變異:在這種變異方式中,對產生變異的節點與一個隨機值相乘.在具體的實現中,乘法因子取值范圍是在之間的一個隨機值.

在本文的實驗中,選擇第二種變異算法.

(5)選擇

通過對當前種群基于適應度函數值進行排序,得到候選種群.選擇種群中適應度函數值最高的n-1個個體,并在種群中余下的個體間隨機選擇一個,共同組成下一代種群.這樣做的原因是可以增加種群的多樣性,改善遺傳的方向.

(6)精英保留策略

為了防止種群個體在遺傳過程中發生遺傳衰退的現象,在本算法中,加入了覆蓋法[6]作為種群更新的策略.覆蓋法的算法流程如下:

Step 1:計算當前子代個體的適應度,根據適應度值降序排列當前子代種群中的個體.

Step 2:根據一定的覆蓋比率,將當前子代種群中的前ReN個體替換為精英個體.

其中ReN的大小可以根據種群規模的大小進行自適應的變化.計算公式如下式:

其中,ReN是當前子代種群中的個體,Rreplace是種群覆蓋比率,sizepop為當前子代的種群規模.精英保留策略是精英遺傳算法的特有策略,可以有效地防止遺傳倒退現象的發生,同時加快搜索效率.

3 仿真實驗

在本節中,仿真實驗所用電腦配置如下:64 位Windows 操作系統,處理器為八核Intel Core i5-9300H CPU@2.40 GHz,內存為24 GB,并使用python進行了仿真實驗.

3.1 數據集

在實驗中,使用了腦電波(EEG)數據集[13].該EEG數據集對122個受試者分別進行了120個刺激實驗.受試者包括兩類:酗酒者與正常對照組.在每個實驗中,向受試者展示一張或兩張Snodgrass和Vanderwart圖片集中的圖像,接收到刺激后,對他們的腦電波進行采樣,然后根據受試者所屬的類別對腦電波圖像進行標簽的標記.因此,所建立的模型的任務是,根據受試者的腦電圖,預測受試者屬于兩類人群的哪一類.

3.2 實驗參數設置

本實驗中使用的神經網絡結構使用如下設置[14]:輸入的數據維度為(64,256,1),輸出的類別為兩類:酗酒者與對照組.采用的神經網絡具有3個卷積層,第一個卷積層具有30個卷積核;后面的兩個卷積層分別具有10個和2個卷積核,并且在第二個卷積層與第三個卷積層之間加入了一個平均池化層;最后是一個全連接層,采用softmax函數進行分類.

遺傳算法中的種群大小設置為50,考慮到本算法中沒有使用梯度進行模型更新,使得模型收斂的速度較慢,迭代次數設為3 000,保證模型最后能夠收斂到一個穩定的水平.交叉采用了卷積核交叉算法,變異操作中的變異概率設為0.01.

過擬合是深度學習中經常出現的問題,避免過擬合的主要思想是,在模型的訓練期間,不要把整個數據集一次性分配給模型學習.在每一次迭代中使用訓練數據的子集進行訓練,訓練集的子集可以每次迭代更改一次,也可以保持幾次迭代不變.通過這種方法,可以有效地避免模型訓練后產生過擬合問題.

本實驗中為了避免過擬合,在遺傳聯邦學習的每一代中,隨機選擇數據集整體的一個子集,對當前種群的適應度進行評估.

3.3 實驗結果與分析

在服務器上,保留一個驗證集,在每一代中,計算并存儲當前一代中最適合的模型精度,使用本文帶有精英保留策略的遺傳算法對該問題進行優化.同時,為了對比本文算法的效果,在相同的參數設置下,使用遺傳算法對該問題進行優化.結果如圖1和表1所示.

表1 相關算法模型精度對比

圖1 模型精度

使用兩種優化算法,得到的種群的適應度函數值變化曲線如圖2和表2所示.

表2 相關算法模型適應度對比

圖2 模型適應度

根據圖(1)和圖(2)可以觀察到本算法收斂是緩慢但穩定的.相較于遺傳算法,本文提出的算法具有更好的搜索性能.從一個完全隨機的狀態下,該算法能夠達到80%的模型訓練精度.雖然這低于深度神經網絡學習的平均水平,但考慮到模型的更新過程中沒有使用梯度,而是使用了遺傳算法的適應度值作為代替,這仍然是一個很好的結果.

4 結論

聯邦學習結合遺傳算法的一個優勢是,客戶端傳輸到服務器的數據更少.雖然本文算法收斂速度要慢一些,但由于只公開了模型的一個適應度函數值,而無需傳輸模型的梯度信息,從而提高了數據的安全保障能力.本文算法實際上是通過犧牲一定的學習速度來保護數據的隱私,因此,對于一些特殊應用場景有著較大的優勢.比如:對于來自醫療機構的數據,學習過程的通信開銷并不是最重要的,而保持用戶數據的隱私才是至關重要的.實驗結果表明,本文算法較好地保障了醫療數據的隱私安全,具有一定的應用價值.

猜你喜歡
父代適應度交叉
中國高等教育的代際傳遞及其內在機制:“學二代”現象存在嗎?
延遲退休決策對居民家庭代際收入流動性的影響分析
——基于人力資本傳遞機制
改進的自適應復制、交叉和突變遺傳算法
“六法”巧解分式方程
父代收入對子代收入不平等的影響
男孩偏好激勵父代掙取更多收入了嗎?
——基于子女數量基本確定的情形
連一連
基于空調導風板成型工藝的Kriging模型適應度研究
基于Fast-ICA的Wigner-Ville分布交叉項消除方法
雙線性時頻分布交叉項提取及損傷識別應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合