[發明專利]一種基于布谷鳥搜索算法的聲紋識別攻擊防御方法有效
| 申請號: | 201910819972.6 | 申請日: | 2019-08-31 |
| 公開(公告)號: | CN110610708B | 公開(公告)日: | 2021-10-15 |
| 發明(設計)人: | 陳晉音;鄭喆;葉林輝 | 申請(專利權)人: | 浙江工業大學 |
| 主分類號: | G10L17/04 | 分類號: | G10L17/04;G10L17/02;G10L17/18;G06N3/00;G06N3/04;H04L9/00 |
| 代理公司: | 杭州天正專利事務所有限公司 33201 | 代理人: | 王兵;黃美娟 |
| 地址: | 310014 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 布谷鳥 搜索 算法 聲紋 識別 攻擊 防御 方法 | ||
1.一種基于布谷鳥搜索算法的聲紋識別攻擊防御方法,包括以下步驟:
(1)準備原始音頻數據集:采集不同說話者說不同內容的語音音頻并進行預處理,按照一定比例分成預訓練數據集、測試數據集和用于生成對抗樣本的擾動數據集,其具體過程如下;
Step11:采集不同的說話者說確定內容的音頻,即設共有M個不同的說話者,N個不同的說話內容,則每一個樣本可以表示為xij(1≤i≤M,1≤j≤N),即第i個說話者說第j個內容的音頻樣本;
為了使聲紋識別模型具有較強的穩定性,在噪聲環境下也能夠提取有效信息實現正確的識別,采集的音頻樣本中包括安靜和嘈雜環境;同時在音頻采集過程中改變說話者和錄音設備的距離,來模擬真實聲紋識別場景中的說話者音量大小不一致的情形;為了提高后續聲紋識別的準確率,在采集音頻的過程中盡可能保證說話者的發音較為標準;
Step12:將上述采集的音頻進行裁剪以及添加相應的標簽并處理成數據流格式的音頻文件,作為訓練、測試聲紋識別模型以及生成對抗樣本所需要的數據;
Step13:將經過預處理后的音頻按照一定比例分成預訓練數據集、測試數據集和用于生成對抗樣本的擾動數據集;
(2)訓練聲紋識別模型:搭建聲紋識別模型并初始化相關參數,利用預處理好的數據集對聲紋識別模型進行訓練,并使用測試數據集測試模型的準確率,若不能達到預設的準確率,則調整聲紋識別模型的結構、參數,重新訓練測試,使得聲紋識別模型能夠達到預設的識別準確率,對于正常情況下的音頻能夠達到較好的識別效果;聲紋識別的具體過程如下;
Step21:提取音頻的特征向量;將原始音頻以25ms為幀長,以10ms為步長進行分割后,計算每一幀的梅爾倒譜系數,每一幀的倒譜系數為一個13維的向量;計算每一幀的能量以及其倒譜系數的一階和二階差分值,最終得到每一幀40維的特征向量;
Step22:搭建聲紋識別模型;搭建基于LSTM結構的聲紋識別模型,設置隱藏單元數量為768;
Step23:設置相關參數并進行訓練;設樣本xij經過聲紋識別模型后的輸出向量為eij,則對于第k個說話者,其M個不同說話內容對應的質心ck為:
則對于樣本xij,利用余弦相似度定義其與第k個說話者之間的距離;
sij,k=w·cos(eij,ck)+b (2)
其中,cos(·)表示余弦相似度,w和b是模型訓練過程中可以調整的參數;
定義模型訓練的損失函數:
其中,-sij,i表示樣本xij與其所對應的第i個說話者質心的距離,表示該樣本與其他說話者質心的距離;該損失函數使得每個樣本盡可能靠近其所對應類別的質心,而遠離其他所有類別的質心;
之后,設定批量訓練的相關參數,并利用隨機梯度下降優化算法訓練模型最小化損失函數;
Step24:用測試數據集測試識別模型的準確率,確保達到預設的識別準確率,否則修改模型的結構和參數重新進行訓練;
(3)攻擊聲紋識別模型:搭建基于布谷鳥搜索算法的攻擊方法,設置適應度函數及攻擊方法的相關參數;利用該攻擊方法生成最優擾動,并疊加到原始樣本上,使得生成的對抗樣本被錯誤識別而不被人耳所識別;攻擊聲紋識別模型,生成對抗樣本的過程如下;
Step31:初始化適應度函數,定義適應度函數如下;
其中,-sij,m表示樣本xij與其目標分類類別對應的第m個說話者質心的距離,表示樣本與除第m個說話者外質心的距離,中x表示生成的對抗樣本,x0表示原始音頻,通過L2范數來衡量對抗樣本與原始音頻樣本之間的差異;另外,上述適應度函數中的c為一個常數,實現了不同衡量標準間的歸一化;
Step32:初始化群體;設置群體的數量G,隨機初始化擾動,使得初始擾動與原始音頻矩陣的形狀相同,將這些隨機生成的矩陣疊加到原始音頻上最終得到初始對抗樣本,設為X={x1,x2,...,xG}.
Step33:利用萊維飛行生成新的個體,其具體的生成算法如下;
其中,表示第i個個體在第k次更新后生成的個體,表示點對點乘法,α是步長縮放因子,Levy(β)表示萊維隨機搜索路徑,服從萊維概率分布:
Levy~u=t-β(1≤β≤3) (6)
具體地,通過下式更新個體的位置:
其中,rand1是滿足正態分布N(0,σ2)的隨機數,rand2是滿足標準正態分布的隨機數,σ滿足:
通常,β=1.5;
計算每個個體的適應度,記為表示第i個個體在第k次更新后的適應度,群體中最優個體適應度記為Xbest,則步長的更新滿足下式:
其中,α0為常數;
Step34:隨機選取一個個體,若通過萊維飛行生成的新個體的適應度大于該個體的適應度,則進行替換;
Step35:以概率P舍棄適應度較低的個體,并生成新的個體進行替換;
Step36:若迭代次數達到設定的最大迭代次數或者生成的對抗樣本能夠分類為目標類別,則停止迭代,并將對抗樣本矩陣轉換為音頻,若不滿足上述條件,則重復Step33-Step35中的步驟,對群體繼續迭代尋優;
(4)對抗訓練聲紋識別模型:將步驟(3)中生成的樣本加入與訓練數據集中,重新訓練聲紋識別模型,使得重新訓練的聲紋識別模型具有防御對抗樣本攻擊的能力,提高聲紋識別模型的安全性和穩定性。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江工業大學,未經浙江工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910819972.6/1.html,轉載請聲明來源鉆瓜專利網。





