本技術(shù)涉及水印數(shù)據(jù)處理,更具體地說(shuō),涉及一種模型分區(qū)水印的數(shù)據(jù)處理方法及裝置。
背景技術(shù):
1、以深度神經(jīng)網(wǎng)絡(luò)(dnn)為首的人工智能技術(shù)發(fā)展迅猛,其在醫(yī)療、金融、自動(dòng)駕駛等多個(gè)領(lǐng)域的廣泛應(yīng)用也體現(xiàn)出了巨大潛力。隨之而來(lái)的,深度神經(jīng)網(wǎng)絡(luò)模型的安全問(wèn)題也日趨受到關(guān)注。深度神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練離不開(kāi)大量珍貴的數(shù)據(jù)支撐,這些數(shù)據(jù)可能涉及敏感領(lǐng)域。同時(shí)開(kāi)發(fā)和訓(xùn)練這些模型需要耗費(fèi)大量的時(shí)間和精力,但模型本身卻極易被復(fù)制和盜用。如何保障這些數(shù)據(jù)的安全、如何維護(hù)數(shù)據(jù)擁有者的權(quán)益,成為了必須要考慮的問(wèn)題。
2、現(xiàn)有技術(shù)中,通過(guò)使用模型水印來(lái)保護(hù)包括深度神經(jīng)網(wǎng)絡(luò)在內(nèi)的人工智能模型知識(shí)產(chǎn)權(quán)的概念。模型水印的基本思想是將數(shù)字水印技術(shù)應(yīng)用在人工智能領(lǐng)域。以深度學(xué)習(xí)模型為例,它將獨(dú)特的水印或模式嵌入到dnn的權(quán)重或結(jié)構(gòu)中,從而對(duì)dnn的所有權(quán)和真實(shí)性進(jìn)行認(rèn)證和證明。
3、但是,由于現(xiàn)有技術(shù)的水印修改了權(quán)重或結(jié)構(gòu),從而略微偏離了原始訓(xùn)練的模型參數(shù),任何細(xì)微的影響都可能會(huì)導(dǎo)致dnn的整體準(zhǔn)確性下降。
4、因此,如何避免嵌入水印對(duì)dnn的整體準(zhǔn)確性產(chǎn)生影響,是本技術(shù)亟需解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本技術(shù)公開(kāi)了一種模型分區(qū)水印的數(shù)據(jù)處理方法及裝置,旨在避免嵌入水印對(duì)dnn的整體準(zhǔn)確性產(chǎn)生影響,以及提高模型中的數(shù)據(jù)的安全性。
2、為了實(shí)現(xiàn)上述目的,其公開(kāi)的技術(shù)方案如下:
3、本技術(shù)第一方面公開(kāi)了一種模型分區(qū)水印的數(shù)據(jù)處理方法,所述方法包括:
4、獲取初始水印集;其中,所述初始水印集從測(cè)試集抽取預(yù)設(shè)數(shù)量的數(shù)據(jù)構(gòu)成;
5、根據(jù)預(yù)設(shè)矩陣規(guī)則,確定初始水印集的各個(gè)水印輸入數(shù)據(jù);
6、將初始水印集的各個(gè)水印的輸出數(shù)據(jù)進(jìn)行順延處理,并根據(jù)所述各個(gè)水印輸入數(shù)據(jù)和順延處理后的各個(gè)水印的輸出數(shù)據(jù),得到處理后的水印集;
7、根據(jù)分區(qū)水印技術(shù),將所述處理后的水印集劃分為多個(gè)目標(biāo)水印集;其中,所述目標(biāo)水印集為待嵌入模型的水印集;
8、將多個(gè)目標(biāo)水印集嵌入至待嵌入水印的模型,得到已嵌入水印的模型。
9、優(yōu)選的,所述根據(jù)預(yù)設(shè)矩陣規(guī)則,確定初始水印集的各個(gè)水印輸入數(shù)據(jù),包括:
10、獲取模型所有者密鑰和初始水印集中的輸入數(shù)據(jù);
11、通過(guò)所述模型所有者密鑰生成與模型輸入相匹配的密鑰矩陣;
12、確定所述密鑰矩陣的列數(shù);其中,所述密鑰矩陣的列數(shù)由初始水印集中的各個(gè)輸入數(shù)據(jù)的行數(shù)確定;
13、選取行數(shù)與列數(shù)相等的目標(biāo)密鑰矩陣和初始水印集中的各個(gè)目標(biāo)輸入數(shù)據(jù);
14、將所述目標(biāo)密鑰矩陣與各個(gè)目標(biāo)輸入數(shù)據(jù)依次進(jìn)行矩陣乘法計(jì)算,得到初始水印集的各個(gè)水印輸入數(shù)據(jù)。
15、優(yōu)選的,所述將初始水印集的各個(gè)水印的輸出數(shù)據(jù)進(jìn)行順延處理,并根據(jù)所述各個(gè)水印輸入數(shù)據(jù)和順延處理后的各個(gè)水印的輸出數(shù)據(jù),得到處理后的水印集,包括:
16、針對(duì)初始水印集的各個(gè)水印的輸出數(shù)據(jù),將所述輸出數(shù)據(jù)順延一位;
17、根據(jù)所述各個(gè)水印輸入數(shù)據(jù)和順延后的各個(gè)水印的輸出數(shù)據(jù),構(gòu)成處理后的水印集。
18、優(yōu)選的,所述將多個(gè)目標(biāo)水印集嵌入至待嵌入水印的模型,得到已嵌入水印的模型,包括:
19、針對(duì)多個(gè)目標(biāo)水印集,確定待嵌入水印的模型的預(yù)設(shè)層和非預(yù)設(shè)層;所述預(yù)設(shè)層為待嵌入層;所述非預(yù)設(shè)層為預(yù)設(shè)層以外的所有層;
20、凍結(jié)非預(yù)設(shè)層,并將所述目標(biāo)水印集隨機(jī)嵌入到所述預(yù)設(shè)層中,直至所有的目標(biāo)水印集嵌入到所述預(yù)設(shè)層中,得到已嵌入水印的模型。
21、優(yōu)選的,還包括:
22、在對(duì)已嵌入水印的模型進(jìn)行版權(quán)確認(rèn)的過(guò)程中,從所述已嵌入水印的模型提取出水印信息,以確認(rèn)模型的版權(quán)歸屬。
23、本技術(shù)第二方面公開(kāi)了一種模型分區(qū)水印的數(shù)據(jù)處理裝置,所述裝置包括:
24、獲取單元,用于獲取初始水印集;其中,所述初始水印集從測(cè)試集抽取預(yù)設(shè)數(shù)量的數(shù)據(jù)構(gòu)成;
25、確定單元,用于根據(jù)預(yù)設(shè)矩陣規(guī)則,確定初始水印集的各個(gè)水印輸入數(shù)據(jù);
26、處理單元,用于將初始水印集的各個(gè)水印的輸出數(shù)據(jù)進(jìn)行順延處理,并根據(jù)所述各個(gè)水印輸入數(shù)據(jù)和順延處理后的各個(gè)水印的輸出數(shù)據(jù),得到處理后的水印集;
27、劃分單元,用于根據(jù)分區(qū)水印技術(shù),將所述處理后的水印集劃分為多個(gè)目標(biāo)水印集;其中,所述目標(biāo)水印集為待嵌入模型的水印集;
28、嵌入單元,用于將多個(gè)目標(biāo)水印集嵌入至待嵌入水印的模型,得到已嵌入水印的模型。
29、優(yōu)選的,所述確定單元,包括:
30、第一獲取模塊,用于獲取模型所有者密鑰和初始水印集中的輸入數(shù)據(jù);
31、生成模塊,用于通過(guò)所述模型所有者密鑰生成與模型輸入相匹配的密鑰矩陣;
32、第一確定模塊,用于確定所述密鑰矩陣的列數(shù);其中,所述密鑰矩陣的列數(shù)由初始水印集中的各個(gè)輸入數(shù)據(jù)的行數(shù)確定;
33、選取模塊,用于選取行數(shù)與列數(shù)相等的目標(biāo)密鑰矩陣和初始水印集中的各個(gè)目標(biāo)輸入數(shù)據(jù);
34、計(jì)算模塊,用于將所述目標(biāo)密鑰矩陣與各個(gè)目標(biāo)輸入數(shù)據(jù)依次進(jìn)行矩陣乘法計(jì)算,得到初始水印集的各個(gè)水印輸入數(shù)據(jù)。
35、優(yōu)選的,所述處理單元,包括:
36、第二獲取模塊,用于針對(duì)初始水印集的各個(gè)水印的輸出數(shù)據(jù),將所述輸出數(shù)據(jù)順延一位;
37、構(gòu)成模塊,用于根據(jù)所述各個(gè)水印輸入數(shù)據(jù)和順延后的各個(gè)水印的輸出數(shù)據(jù),構(gòu)成處理后的水印集。
38、優(yōu)選的,所述嵌入單元,包括:
39、第二確定模塊,用于針對(duì)多個(gè)目標(biāo)水印集,確定待嵌入水印的模型的預(yù)設(shè)層和非預(yù)設(shè)層;所述預(yù)設(shè)層為待嵌入層;所述非預(yù)設(shè)層為預(yù)設(shè)層以外的所有層;
40、凍結(jié)嵌入模塊,用于凍結(jié)非預(yù)設(shè)層,并將所述目標(biāo)水印集隨機(jī)嵌入到所述預(yù)設(shè)層中,直至所有的目標(biāo)水印集嵌入到所述預(yù)設(shè)層中,得到已嵌入水印的模型。
41、優(yōu)選的,還包括
42、提取單元,用于在對(duì)已嵌入水印的模型進(jìn)行版權(quán)確認(rèn)的過(guò)程中,從所述已嵌入水印的模型提取出水印信息,以確認(rèn)模型的版權(quán)歸屬。
43、經(jīng)由上述技術(shù)方案可知,本技術(shù)公開(kāi)了一種模型分區(qū)水印的數(shù)據(jù)處理方法及裝置,獲取初始水印集,其中,初始水印集從測(cè)試集抽取預(yù)設(shè)數(shù)量的數(shù)據(jù)構(gòu)成,根據(jù)預(yù)設(shè)矩陣規(guī)則,確定初始水印集的各個(gè)水印輸入數(shù)據(jù),將初始水印集的各個(gè)水印的輸出數(shù)據(jù)進(jìn)行順延處理,并根據(jù)各個(gè)水印輸入數(shù)據(jù)和順延處理后的各個(gè)水印的輸出數(shù)據(jù),得到處理后的水印集,根據(jù)分區(qū)水印技術(shù),將處理后的水印集劃分為多個(gè)目標(biāo)水印集,其中,目標(biāo)水印集為待嵌入模型的水印集,將多個(gè)目標(biāo)水印集嵌入至待嵌入水印的模型,得到已嵌入水印的模型。
44、通過(guò)上述方案,根據(jù)分區(qū)水印技術(shù),將處理后的水印集劃分為多個(gè)目標(biāo)水印集,該分區(qū)水印技術(shù)將使用若干個(gè)水印集生成水印,每個(gè)水印集可自由選擇在dnn的哪一層或哪幾層添加水印。由于模型總是在淺層更傾向于捕獲通用特征,而水印屬于離群值的輸入輸出對(duì),因此應(yīng)令水印更少的影響淺層神經(jīng)元,通過(guò)分區(qū)水印技術(shù)降低水印對(duì)模型擬合準(zhǔn)確性的負(fù)面影響,分區(qū)水印技術(shù)還提高了水印面對(duì)攻擊的魯棒性。當(dāng)攻擊者對(duì)模型進(jìn)行剪枝或微調(diào)時(shí),如果攻擊者不知道模型所有者添加水印的位置,分區(qū)水印技術(shù)可以更好地保持模型中水印的完整性,從而避免嵌入水印對(duì)dnn的整體準(zhǔn)確性產(chǎn)生影響。此外,在模型的預(yù)測(cè)準(zhǔn)確性下降相同的情況下,分區(qū)水印的水印存活率更高,這意味著攻擊者需要付出更大的努力和代價(jià)才能成功地去除水印,從而使得模型本身不易被復(fù)制和盜用,提高模型中的數(shù)據(jù)的安全性。