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

?

基于聯邦學習的人臉檢測研究

2022-07-01 08:17蘭博鈞陶青川
現代計算機 2022年8期
關鍵詞:人臉客戶端加密

蘭博鈞,陶青川

(四川大學電子信息學院,成都 610065)

0 引言

在互聯網與人工智能高速發(fā)展的今天,數據逐步成為了企業(yè)生產中不可或缺的生產要素,在企業(yè)業(yè)務發(fā)展愈發(fā)倚重數據的同時,政府和用戶也愈發(fā)重視隱私數據的保護與合理利用?!?020年人臉識別行業(yè)研究報告》指出,人臉在日常生活中暴露度比較高,相較于其他人體生物特征更易于被動采集。這意味著人臉的信息更易于泄露,對個人可能會帶來財產損失,對國家可能引發(fā)國家安全問題。對于此類問題,我國于2021年11月1日正式施行《中華人民共和國個人信息保護法》,以保護個人的數據信息權益。隨著監(jiān)管力度的不斷加強,個人數據將慢慢形成一個個的數據孤島,企業(yè)如果想利用大量數據來創(chuàng)造新的價值將面臨更多阻礙。因此,如何平衡好數據利用與數據隱私保護兩方面是企業(yè)當前亟待解決的一個難點。

谷歌的McMahan 等于2016年首次提出了聯邦學習的概念,他們采用邊緣服務器架構,先利用邊緣的移動設備對本地數據進行計算,再將各個邊緣節(jié)點計算的模型參數上傳至服務器進行聚合,最后再將聚合的模型參數更新至用戶的移動設備。這種方式既保護了個人隱私,又讓割裂成一塊塊的孤島數據得到了充分的利用。為了解決人臉數據隱私問題以及數據孤島問題,本文采用聯邦學習策略展開對人臉檢測的研究,在訓練過程中使用Fedavg 算法來進行模型參數的聚合,數據傳輸過程中通過Paillier算法來進行數據加密,同時對YOLOv5網絡進行改進:引入卷積塊的注意力模塊(convolutional block attention module,CBAM)與快速非極大值抑制(fast non-maximum suppression,Fast-NMS)以提升神經網絡模型對人臉檢測的準確度和效率。

1 聯邦學習

根據應用場景的不同,聯邦學習的架構可以分為需要聚合服務器的網絡與對等網絡(P2P)的形式,本文采用需要聚合服務器的服務器-客戶端架構模式,其架構模型如圖1所示。根據數據類型的不同,聯邦學習又分為:橫向聯邦學習(horizontal federated learning,HFL)、縱向聯邦學習(vertical federated learning,VFL)和聯邦遷移 學習(federated transfer learning,FTL),由于本文在不同客戶端上的人臉數據的數據特征與標簽是一致的,即數據特征在參與訓練的客戶端之間是對齊的,故采用HFL。HFL 的訓練過程通常包括以下5步:

圖1 聯邦學習架構模型

(1)各個客戶端接收服務器分發(fā)的初始化模型參數。

(2)各個客戶端使用自己的本地數據集進行模型計算,計算后將其模型參數信息- ω使用同態(tài)加密、差分隱私等手段進行掩飾,再發(fā)送給服務器。

(3)服務器將收到的數據進行聚合。

(4)把服務器聚合后的結果下發(fā)給各個客戶端。

(5)各個客戶將收到的梯度進行解密,然后更新自身的網絡信息進行新的訓練。

1.1 聯邦學習中的Fedavg

數據聚合過程中采用的Fedavg,分為梯度平均與模型平均兩種。設ω為當前參數模型,為固定學習率,為訓練數據的數量,表示第個客戶端,為客戶端數量,g為第個客戶端在ω參數模型下進行本地訓練得到的平均梯度。如果個客戶端之間的數據滿足獨立同分布(IID),且滿足的分布式梯度下降的前提。

如公式(1)與公式(2)所示,若服務器將新的模型參數ω或聚合各方梯度得到的加權平均梯度ˉ下發(fā)給客戶端,那么稱這種Fedavg 為梯度平均。

如公式(3)與公式(4)所示,如果客戶端先在本地得到新的模型參數ω后,服務器再將這些模型參數進行加權平均得到新的平均模型參數ˉ并將其下發(fā)給客戶端,那么稱這種Fedavg為模型平均。在進行YOLOv5人臉檢測的訓練中便是采用了模型平均的方案。

1.2 Paillier算法加密

聯邦學習是為了在保護數據隱私的情況下解決數據孤島問題,除了需要訓練數據本地化、私有化,同時要通過一些數據加密的手段來保護客戶端與服務器之間傳遞的參數信息,因為這些參數的泄露也可能會導致訓練數據或模型數據的泄露。常用的保護手段有同態(tài)加密與差分隱私,差分隱私可能會對訓練數據造成噪聲干擾,故本文采用同態(tài)加密的保護手段。

根據計算類型的不同,同態(tài)加密又可分為:部分同態(tài)加密(partially homomorphic encryption,PHE)、些許同態(tài)加密(somewhat homomorphic encryption,SHE)與全同態(tài)加密(fully homomorphic encryption,FHE)。其中PHE 是指只支持乘法或加法一種運算的加密算法;SWHE 是指可以同時支持乘法運算和加法運算,但是計算次數有限的加密算法;FHE 是指同時支持乘法運算和加法運算且計算次數無限的加密算法。基于達到減少加解密時間損耗的目的,采用了PHE中的加法同態(tài)加密算法Paillier。

Paillier 是1999年提出的一種可證的安全加密算法,在現代網絡安全中有著廣泛的應用。Paillier算法通常分為3步:

(1)生成公鑰(,)與私鑰(,),如公式(5)、公式(6)、公式(7)所示。其中、為隨機生成的大素數,表示整數。

(2)對數據進行加密,得到密文,如公式(8)所示。

(3)對密文進行解密,得到明文,如公式(9)所示。

2 YOLOv5人臉檢測算法改進

目標檢測算法大致可以劃分成兩類,一類是以R-CNN 系列為代表的算法,它們一般需要兩步,先采用Selective Search 或RPN 得到候選區(qū)域,再在候選區(qū)域中完成回歸任務與分類任務;另一類則是以YOLO 系列為代表的算法,這類算法僅需要一次CNN 運算便可以找到目標的位置與類別。而YOLOv5 作為YOLO 系列最新的網絡模型, 有著更為優(yōu)異的性能。YOLOv5s 5.0 版本網絡模型如圖2 所示,主要由兩個組件所構成:Head 和BackBone(Head 部分包括了以往YOLO 模型的Neck 和Head 兩部分,YOLOv5代碼上并沒有將二者進行區(qū)分)。其中:BackBone 先獲取人眼視覺對目標圖像不能提取的深層信息,再由Neck 將這些不同層次的特征信息加工、融合,從而增加神經網絡的表達能力,最后再通過Head 使用這些信息將圖像上的目標種類及其位置預測出來。

圖2 YOLOv5s 5.0版本網絡模型

YOLOv5網絡也有其特點:采用Mosaic 數據增強手段增加數據豐富度、錨定框可基于訓練數據自動計算、輸入圖像放縮至標準尺寸以減少推理時的計算量、采用Focus結構將圖像切片以減少FLOPS 和增加速度、借鑒CSPNet網絡結構用以增強學習能力,使YOLOv5網絡能兼顧輕量化和準確性兩方面。

YOLOv5 共有s、l、m、x 四個版本,s 版本網絡深度與特征圖寬度最小,其他三個版本皆是在其基礎上加深擴寬,考慮到需要快速檢測以及后期會將網絡部署到嵌入式設備上,本文選用s版本用做檢測網絡模型。

2.1 基于CBAM模塊的網絡改進

YOLOv5s 的BackBone 相較于其他輕量級網絡來說具有網絡復雜且深度大的特點,這種特點可能會導致網絡提取的圖像特征不平衡,因此采用加入CBAM 模塊來聚焦重要信息同時抑制不重要的信息。深度學習中的注意力機制與人眼的選擇性視覺機制類似,從復雜的信息中選出更為重要的進行關注,根據其關注的域可分為不同類型:層域、通道域、空間域、時間域、混合域,而CBAM 模塊則是結合了通道域與空間域。

加入CBAM模塊的改進如圖3所示。

圖3 改進后的Conv_CBAM 模塊

將改進后的Conv_CBAM 模塊去替代Back-Bone 中Focus 后面第一個與SPP 后面第一個CBS模塊。CA 是指通道域的注意力機制,其策略如公式(10)所示,表示經過feature map 的輸入,首先進行AvgPool 以及MaxPool,從而得到更豐富的高層特征,這里的FF是經過全局平均池化與全局最大池化后的feature。再通過全連接層和激活函數來構建通道之間的相關性,這里的與是多層感知機模型中的兩層參數,而表示sigmoid 激活函數。然后合并兩個輸出得到各通道的權重信息,最后再把權重與CA 輸入的特征圖相乘得到輸出信息。其目的在于區(qū)分出特征圖不同通道的重要程度并將其量化成權重的形式,從而聚焦更重要的通道。

SA 是指空間域的注意力機制,其策略如公式(11)所示,它首先對通道維度進行全局最大池化以及全局平均池化,然后對其輸出使用7*7卷積核進行卷積得到空間注意力特征圖,最后將其與SA 輸入的特征圖相乘得到輸出信息。其目的在于區(qū)分出特征圖不同空間位置的有用程度并將其量化成權重的形式,從而聚焦特征圖中更主要的空間位置。

通過將CA 與SA 串行組合便可達到兩種注意力機制互補的效果,最終形成CBAM模塊。

2.2 基于Fast-NMS模塊的網絡改進

NMS 對于目標檢測來說是一種常用的算法,其目的在于從網絡最后輸出的候選框中找到最佳的目標框。對于傳統的NMS 來說,一般第一步先將候選框按照其分類得分從高到低排序,第二步保留得分最高的候選框,再分別計算其他候選框與保留框之間的,若大于閾值,則刪除這個候選框,第三步則是對第二步操作進行迭代直至沒有剩余候選框為止。

由于是對稱矩陣并且不存在候選框與自身進行,故可對進行上三角化,如公式(13)所示。然后對矩陣的每一列取該列最大值,將最大值與設定的閾值進行比較,超過該閾值就將其濾除,最后剩下的便是結果。

3 實驗結果與分析

本實驗的人臉數據集大小為:訓練集11976張,驗證集4228 張,測試集3112 張,實驗過程中共設置了4個客戶端,故將訓練集與驗證集隨機等分成四份并分別放置在4個客戶端上,形成訓練數據的獨立同分布狀態(tài)。將服務器與客戶端的通信輪次設置成200輪,每輪通信時長上限為6 mins,如果服務器不能在規(guī)定時長內完成模型收集、模型聚合與模型下發(fā)三個步驟,則視為該輪通信失敗,下一輪使用的模型參數以上一次參數為準。如圖4 所示,在使用聯邦學習后,訓練的速度有所下降,同時網絡模型的性能也略有降低,但是也能較好地趨近于未使用聯邦學習策略時的模型性能,保證了YOLOv5人臉檢測網絡處于聯邦學習策略下的可用性。

圖4 性能比較

將加入CBAM 模塊改進后的YOLOv5與未加的YOLOv5 進行對比,結果如表1 所示??梢钥闯觯尤隒BAM 模塊后模型對人臉檢測的準確率得到了一定的提升。

表1 兩種模型的準確率比較

當網絡將傳統的NMS 模塊改成Fast-NMS 模塊后,模型檢測時的總體時長有了一定的減少,可以達到我們預期的效果。測試時,設置成了每個batch 的batchsize 為688,平均每個batch 所耗時間如表2所示,其中torchvision.ops.nms()是官方庫的實現,由于底層是用C++實現的,所以效果最好。

表2 測試耗時比較

4 結語

本文采用聯邦學習策略來訓練YOLOv5的人臉模型,使用Fedavg 算法將模型聚合并通過Paillier 算法把服務器與客戶端通信過程中的數據進行加密,同時在YOLOv5 網絡中引入CBAM模塊與Fast-NMS 模塊。實驗結果表明,采用聯邦學習的策略訓練模型,在保證數據隱私安全的情況下有效地解決了數據孤島問題,同時模型性能的損失在可控范圍。而CBAM 模塊與Fast-NMS 模塊分別使得模型檢測的準確度與效率有所提升。

猜你喜歡
人臉客戶端加密
“人民網+客戶端”推出數據新聞
——穩(wěn)就業(yè)、惠民生,“數”讀十年成績單
玻璃窗上的人臉
保護數據按需創(chuàng)建多種加密磁盤
谷歌禁止加密貨幣應用程序
智力考場:有趣的圖片測試
虛擬專用網絡訪問保護機制研究
加密與解密
新聞客戶端差異化發(fā)展策略
“領家系”可愛臉VS“高冷系”美人臉
長得象人臉的十種動物
弥渡县| 邵东县| 靖江市| 资源县| 莱西市| 七台河市| 大庆市| 泾川县| 登封市| 桃园县| 南丰县| 攀枝花市| 遂川县| 根河市| 伊川县| 江陵县| 监利县| 措勤县| 景洪市| 元阳县| 泸西县| 理塘县| 安陆市| 太谷县| 久治县| 华坪县| 罗江县| 日照市| 延吉市| 常熟市| 旬阳县| 苍梧县| 苗栗市| 日照市| 鹤庆县| 安达市| 陇川县| 房山区| 石景山区| 尼勒克县| 淄博市|