自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Rosetta如何連接隱私計(jì)算與AI?

新聞 人工智能
今天很高興能夠與大家分享矩陣元最近的一些研究成果。主要的方向是隱私計(jì)算,以及基于密碼學(xué)的隱私開源框架—Rosetta。

 本文經(jīng)AI新媒體量子位(公眾號(hào)ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。

今天很高興能夠與大家分享矩陣元最近的一些研究成果。主要的方向是隱私計(jì)算,以及基于密碼學(xué)的隱私開源框架—Rosetta。

隱私計(jì)算時(shí)代來臨?

目前數(shù)據(jù)面臨著一些挑戰(zhàn)。隨著數(shù)字化的發(fā)展,數(shù)據(jù)量指數(shù)級(jí)增加,一些核心的、關(guān)鍵的數(shù)據(jù)保護(hù)做得遠(yuǎn)遠(yuǎn)不夠。目前來看,隨著數(shù)據(jù)的生產(chǎn)要素化,不論國內(nèi)國外對(duì)整個(gè)數(shù)據(jù)相關(guān)方向的關(guān)注程度越來越高,當(dāng)然其中也有越來越多的挑戰(zhàn)。而眾多挑戰(zhàn)之中我們認(rèn)為其中最關(guān)鍵的一點(diǎn)就是數(shù)據(jù)隱私。

從AI的角度來看,AI需要用數(shù)據(jù)來“喂”,只有通過足夠多的數(shù)據(jù)或多樣化的數(shù)據(jù),才能訓(xùn)練出一個(gè)相對(duì)較好的模型使用。所以隨著數(shù)據(jù)量的增大、數(shù)據(jù)多樣化的增加,以及隨著數(shù)據(jù)隱私的關(guān)注程度越來越高,AI面臨著一個(gè)所謂的“窘境”——從AI角度來看,數(shù)據(jù)的多樣化程度越高,對(duì)于整個(gè)模型的訓(xùn)練更有好處,模型精度也會(huì)相應(yīng)提高。

所以這給AI帶來了一系列問題。如何能夠在保護(hù)數(shù)據(jù)隱私的前提下,把各不同源、不同企業(yè)之間的數(shù)據(jù)能夠融合運(yùn)用?在目前傳統(tǒng)的技術(shù)方法里很難解決這個(gè)問題,所以成為了AI可能面臨的一大痛點(diǎn)。因此也引出了“隱私計(jì)算”的概念。

關(guān)于隱私計(jì)算,簡單來說就是保證數(shù)據(jù)在使用和融合過程中,保護(hù)隱私的綜合性技術(shù),而不是簡單的一項(xiàng)技術(shù)。隱私計(jì)算大致分為三類:

第一是密碼學(xué),第二是聯(lián)邦學(xué)習(xí)(Federated Learning),是偏機(jī)器學(xué)習(xí)的技術(shù);第三是可信執(zhí)行環(huán)境(TEE),是硬件安全的技術(shù)。當(dāng)然技術(shù)沒有絕對(duì)的好壞之分,每個(gè)技術(shù)都有它的優(yōu)勢(shì)和劣勢(shì),所以在很多的綜合性解決方案中,很多技術(shù)都是融合在一起使用的。

密碼學(xué)簡單來說是研究各類不同情況下,如何保護(hù)數(shù)據(jù)隱私的一類學(xué)科。最主要的特點(diǎn)是:所有密碼學(xué)的方向,在涉及算法、方案的時(shí)候,要先去定義一個(gè)安全模型,要定義什么樣才是安全。之后在這個(gè)定義之下,會(huì)通過一些數(shù)學(xué)的方法技巧去證明這個(gè)方案是滿足安全定義的,所以它相對(duì)來說具有完整的數(shù)學(xué)理論基礎(chǔ)的密碼理論。當(dāng)然它的優(yōu)勢(shì)是,密碼學(xué)考慮的是一個(gè)非常廣泛的場(chǎng)景。所以它能夠更好的適合或適配不同的場(chǎng)景。在某些場(chǎng)景下,能夠做到比較高效。

當(dāng)然密碼學(xué)也有瓶頸,在部分場(chǎng)景里性能、計(jì)算時(shí)間、通訊復(fù)雜度存在一定的瓶頸。當(dāng)然更大的瓶頸在于,給沒有密碼學(xué)背景的人解釋密碼學(xué)原理,是一件難于上青天的事情。

所以本次分享中,會(huì)更傾向于密碼學(xué)的介紹,包括密碼學(xué)的歷史及主要技術(shù),之后我會(huì)對(duì)其中的安全多方計(jì)算的基本原理做一些簡單的介紹。

密碼學(xué)如何實(shí)現(xiàn)隱私保護(hù)?

密碼學(xué)中的隱私計(jì)算技術(shù),大概分為三大類。分別是:安全多方計(jì)算同態(tài)加密、零知識(shí)證明。

安全多方計(jì)算(簡稱MPC),在1982年由姚期智先生提出,緣起于“百萬富翁問題”。此問題講的是有兩個(gè)百萬富翁,他們都很有錢,想比誰更有錢,但是又不想把各自的資產(chǎn)告訴對(duì)方,也不想找第三方幫他們做比較。所以他們?nèi)绾文軌蛟诓恍孤蹲约贺?cái)產(chǎn)的前提之下,知道誰更有錢呢?安全多方計(jì)算領(lǐng)域由此開辟。

抽象的來說,可以理解為有多個(gè)本地參與,他們各自都擁有一個(gè)隱私的收入,但是他們想去計(jì)算一個(gè)共同的函數(shù)或者說共同的模型,叫做f。這個(gè)f會(huì)跟各自的輸入都有關(guān)系,然后各自拿到一個(gè)結(jié)果。所以我們把它抽象出來,如果f是一個(gè)比較的函數(shù),模型里面只有兩個(gè)人的話,就形成了一個(gè)經(jīng)典的百萬富翁問題。

和我們今天講的內(nèi)容聯(lián)系起來呢?如果這個(gè)f是一個(gè)模型或是機(jī)器學(xué)習(xí)的模型,比如說是一個(gè)邏輯回歸、是一個(gè)CNN,相當(dāng)于這三方各自都擁有一些數(shù)據(jù),他們想共同訓(xùn)練這個(gè)模型。

這就對(duì)應(yīng)了今日主題:如何進(jìn)行隱私 AI 建模的方式?

也就是說,安全多方計(jì)算其實(shí)是一個(gè)非常廣的概念。從密碼學(xué)的角度看,MPC用到機(jī)器學(xué)習(xí)、AI里面,就是一個(gè)非常具體的應(yīng)用了。那么應(yīng)用運(yùn)用了何種具體的方式?這就是Rosetta所要解決的問題。

Rosetta如何連接隱私計(jì)算與AI?

講到現(xiàn)在,相信大家一定會(huì)遇到一個(gè)很大的問題,就是我們很想運(yùn)用密碼學(xué)解決問題,但是如果沒有很高的數(shù)學(xué)基礎(chǔ)或者沒有學(xué)習(xí)過密碼學(xué)的話,相關(guān)算法實(shí)在是門檻太高了。但是一些AI領(lǐng)域的專家、學(xué)者對(duì)于AI的應(yīng)用,深度學(xué)習(xí)、機(jī)器學(xué)習(xí)的框架已經(jīng)非常熟了。所以這兩種具有不同專業(yè)技能的人,之間有很深的溝壑。在現(xiàn)實(shí)生活中,急需把這兩種技術(shù)做一個(gè)融合,但是密碼學(xué)相對(duì)的技術(shù)門檻太高,會(huì)影響整個(gè)行業(yè)的發(fā)展,也會(huì)影響整套隱私計(jì)算或者隱私AI的計(jì)算技術(shù)問題和理論進(jìn)展。

所以我們想讓熟悉機(jī)器學(xué)習(xí),但是對(duì)密碼學(xué)不了解的用戶能夠?qū)㈦[私計(jì)算技術(shù)運(yùn)用起來。另外對(duì)于一些熟悉了AI、或者TensorFlow、Pytorch等機(jī)器學(xué)習(xí)框架的開發(fā)者,讓他們能夠在幾乎不改變開發(fā)習(xí)慣的前提下,就可以運(yùn)用隱私AI的技術(shù)。我們需要做這樣一個(gè)平臺(tái),或者開源框架,能夠讓不太熟悉密碼學(xué)或者根本不懂密碼學(xué)的AI層面的開發(fā)者或?qū)<?,能夠用上隱私計(jì)算技術(shù),這就是我們?cè)O(shè)計(jì)Rosetta的初衷,或者說設(shè)計(jì)Rosetta的一個(gè)根本原則。

因此Rosetta具備以下特點(diǎn):易用性,高效性可擴(kuò)展性。

易用性,目前完全復(fù)用了TensorFlow接口。在明文和密文寫模型的時(shí)候,TensorFlow的接口是一樣的,沒有再變。極大地降低了AI工程師使用隱私計(jì)算技術(shù)的成本。

高效性,完全兼容原生TensorFlow對(duì)數(shù)據(jù)流圖自動(dòng)執(zhí)行的各種運(yùn)行時(shí)優(yōu)化。我們用C++來實(shí)現(xiàn)算法,能夠保持底層算法的高效性。我們同時(shí)在跟業(yè)界的密碼學(xué)家設(shè)計(jì)高效前沿的MPC技術(shù),來適配機(jī)器學(xué)習(xí)或者深度學(xué)習(xí)的一些模型。

可擴(kuò)展性,因?yàn)樵贛PC領(lǐng)域算法和協(xié)議非常多,而且涉及不同的場(chǎng)景,可能用不同的算法會(huì)有更好的效果。如果有了新的算法過來,Rosetta能夠非??焖俚募傻秸麄€(gè)框架里面去。

下面,我們舉例說明一下:

這里有三個(gè)參與方,A、B、C,然后每個(gè)人都有一個(gè)矩陣Ma、Mb、Mc,之后他們?nèi)ビ?jì)算Ma乘Mb乘Mc,他們?nèi)齻€(gè)只能知道結(jié)果,中間的過程都不知道。在這樣一個(gè)場(chǎng)景下,如何運(yùn)用Rosetta來實(shí)現(xiàn)它呢?和TensorFlow明文使用的區(qū)別有兩個(gè),一個(gè)是import包和選擇算法,一個(gè)是簡單處理隱私輸入,即需要把Rosetta包import進(jìn)來,選擇算法,然后定義隱私輸入即可。

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

Rosetta的架構(gòu)如下:

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

整體而言,Rosetta的框架圖如上圖所示,它包括Python的前端APl,這塊是Rosetta方便用戶使用而特色支持的,然后與TensorFlow的前后端做了適配,同時(shí)我們開發(fā)了一個(gè)統(tǒng)一的密碼協(xié)議管理層,可以去適配不同的密碼協(xié)議。

我們的目標(biāo)是既能夠讓懂密碼學(xué)的開發(fā)者把現(xiàn)在的東西復(fù)用到整個(gè)框架里來,也能夠讓不懂密碼學(xué)的AI開發(fā)者能夠無門檻的或者非常低門檻的去使用隱私計(jì)算技術(shù),相當(dāng)于把密碼學(xué)與機(jī)器學(xué)習(xí),有機(jī)的結(jié)合起來。這就是Rosetta的目標(biāo)。

下面說一下Rosetta的架構(gòu),首先要講TensorFlow架構(gòu),TensorFlow架構(gòu)簡單地說就是一個(gè)圖轉(zhuǎn)化和一個(gè)圖執(zhí)行。我們充分利用了TensorFlow架構(gòu)來進(jìn)行密碼適配。

當(dāng)TensorFlow把那個(gè)圖變成下圖左邊標(biāo)準(zhǔn)的傳統(tǒng)圖時(shí),我們?nèi)プ隽艘粋€(gè)static pass,把每一個(gè)操作全部都轉(zhuǎn)成SecureOp,這個(gè)統(tǒng)稱是為了后面能夠支持密碼算法。

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

然后第二步就是圖執(zhí)行,圖執(zhí)行我們運(yùn)用了dynamic pass,左邊的圖就是剛才轉(zhuǎn)化之后的圖,然后當(dāng)數(shù)據(jù)的時(shí)候,根據(jù)每一個(gè)這樣的圖,dynamic pass可以動(dòng)態(tài)去適配用某一類密碼協(xié)議去執(zhí)行這個(gè)圖。

我們能夠充分運(yùn)用TensorFlow框架,同時(shí)因?yàn)槟軌蚶谜麄€(gè)底層的密碼算法,dynamic pass也可充分利用TensorFlow這種optimizer之間的并行,可以讓它跑得更快。

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

下面講一個(gè)Rosetta在實(shí)際場(chǎng)景落地中的應(yīng)用案例:金融場(chǎng)景下的應(yīng)用。銀行A與B,他們各有各的數(shù)據(jù),然后互聯(lián)網(wǎng)公司C也有數(shù)據(jù),大家希望能夠通過Rosetta把模型建起來,比如說訓(xùn)練邏輯回歸后,把風(fēng)控模型訓(xùn)練出來,訓(xùn)練出一個(gè)更加高效的模型。同時(shí)保證abc各方數(shù)據(jù)都不會(huì)被對(duì)方拿到,這種場(chǎng)景下,用Rosetta解決問題非常簡單。

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

如上圖,把Rosetta import進(jìn)來,然后選一個(gè)協(xié)議,然后選相應(yīng)的輸入。后面就是標(biāo)準(zhǔn)的用TensorFlow去回歸,所以后面完全不需要有任何密碼學(xué)背景,也可以完全寫出來。在多數(shù)據(jù)融合的訓(xùn)練場(chǎng)景里,只要Rosetta一個(gè)包,然后把數(shù)據(jù)做一些處理。后面整個(gè)邏輯回歸的代碼書寫,跟原來的是一模一樣的,甚至可以把代碼直接拷貝過來。這里有一個(gè)問題,我們用MPC的方式也就是密文的方式,它的精度與明文的方式有何區(qū)別?

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

如上圖,我們做了一個(gè)對(duì)比,大家可以看到幾乎沒有區(qū)別,基本等價(jià)了,所以在設(shè)計(jì)足夠多的參數(shù)足夠多的精度之后,完全可以保證整個(gè)模型的精度。當(dāng)然還有一個(gè)場(chǎng)景就是所謂的模型預(yù)測(cè)服務(wù)。

矩陣元算法科學(xué)家謝翔:Rosetta如何連接隱私計(jì)算與AI?

最后講一點(diǎn),Rosetta剛剛開始,目前已經(jīng)開源了0.2.1版本。下面是GitHub鏈接:

https://github.com/LatticeX-Foundation/Rosetta

責(zé)任編輯:張燕妮 來源: 量子位
相關(guān)推薦

2022-09-04 21:46:12

數(shù)據(jù)信息風(fēng)險(xiǎn)

2022-08-04 13:31:40

數(shù)據(jù)安全隱私計(jì)算個(gè)人信息

2014-03-17 09:48:23

大數(shù)據(jù)

2022-09-28 15:23:04

隱私計(jì)算AI

2011-08-02 14:00:59

2014-12-15 09:55:42

2022-10-19 12:15:17

2022-05-05 11:16:20

AI隱私算法

2022-07-29 14:31:18

隱私計(jì)算

2020-12-10 15:00:10

AI 計(jì)算人工智能

2011-09-16 11:20:23

云計(jì)算云安全

2024-12-17 14:16:39

2017-03-01 11:36:40

2022-09-12 20:31:54

隱私計(jì)算AI數(shù)據(jù)

2022-10-30 21:48:36

2023-07-26 07:21:27

2024-10-17 16:07:28

2022-09-02 10:15:38

AI計(jì)算

2020-07-23 09:38:26

大數(shù)據(jù)隱私技術(shù)

2010-08-27 09:42:36

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)