新聞中心
在人類的眼中,下面的三張圖片分別展示了三樣不同的東西:一只鳥、一只狗和一匹馬。但對于機(jī)器學(xué)習(xí)算法來說,這三者或許表示同樣的東西:一個有黑邊的白色小方框。

10年的無為網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整無為建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“無為網(wǎng)站設(shè)計(jì)”,“無為網(wǎng)站推廣”以來,每個客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
這個例子說明機(jī)器學(xué)習(xí)模型有一個十分危險的特性,可以利用這一特性使其對數(shù)據(jù)進(jìn)行錯誤分類。(實(shí)際上,這個白色方框比圖片上顯示的還要小得多,為了方便觀察,我把它放大了。)
(視頻鏈接:https://thenextweb.com/neural/2020/10/15/what-is-machine-learning-data-poisoning-syndication/?jwsource=cl)
機(jī)器學(xué)習(xí)算法可能會在圖像中尋找錯誤的目標(biāo)
這便是一個“數(shù)據(jù)中毒”的例子——“數(shù)據(jù)中毒”是一種特殊的對抗攻擊,是針對機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型行為的一系列技術(shù)。
因此,惡意行為者可以利用“數(shù)據(jù)中毒”為自己打開進(jìn)入機(jī)器學(xué)習(xí)模型的后門,從而繞過由人工智能算法控制的系統(tǒng)。
什么是機(jī)器學(xué)習(xí)?
機(jī)器學(xué)習(xí)的神奇之處在于它能夠執(zhí)行那些無法用硬性規(guī)則來表示的任務(wù)。例如,當(dāng)我們?nèi)祟愖R別上圖中的狗時,我們的大腦會經(jīng)歷一個復(fù)雜的過程,有意識地或潛意識地分析我們在圖像中看到的多種視覺特征。其中許多東西都無法被分解成主導(dǎo)符號系統(tǒng)(人工智能的另一個重要分支)的if-else語句。
機(jī)器學(xué)習(xí)系統(tǒng)將輸入數(shù)據(jù)與其結(jié)果聯(lián)系起來,使其在特定的任務(wù)中變得非常好用。在某些情況下,其表現(xiàn)甚至可以超越人類。
然而,機(jī)器學(xué)習(xí)并不像人類思維那樣敏感。以計(jì)算機(jī)視覺為例,它是人工智能的一個分支,旨在理解并處理視覺數(shù)據(jù)。本文開頭討論的圖像分類就屬于計(jì)算機(jī)視覺任務(wù)。
通過大量的貓、狗、人臉、X光掃描等圖像來訓(xùn)練機(jī)器學(xué)習(xí)模型,它就會以一定的方式調(diào)整自身的參數(shù),并將這些圖像的像素值和其標(biāo)簽聯(lián)系在一起。可是,在將參數(shù)與數(shù)據(jù)進(jìn)行匹配時,人工智能模型會尋找最有效的方法,但該方法并不一定符合邏輯。例如,如果人工智能發(fā)現(xiàn)所有狗的圖像都包含相同商標(biāo)標(biāo)識的話,它將會得出以下結(jié)論:每一個帶有該商標(biāo)標(biāo)識的圖像都包含一只狗。或者,如果我們提供的所有羊圖像中都包含大片牧場像素區(qū)域的話,那么機(jī)器學(xué)習(xí)算法可能會調(diào)整其參數(shù)來檢測牧場,而不再以羊?yàn)闄z測目標(biāo)。
在訓(xùn)練過程中,機(jī)器學(xué)習(xí)算法會搜索最簡便的模式將像素與標(biāo)簽關(guān)聯(lián)起來
在之前的某個用例中,一個皮膚癌檢測算法曾錯誤地將所有包含標(biāo)尺標(biāo)記的皮膚圖像都識別為存在黑色素瘤。這是因?yàn)榇蠖鄶?shù)惡性病變的圖像中都含有標(biāo)尺標(biāo)記,而機(jī)器學(xué)習(xí)模型檢測這些標(biāo)記要比檢測病變變化容易得多。
有些情況可能會更加微妙。例如,成像設(shè)備具有特殊的數(shù)字指紋,這可能是用于捕獲視覺數(shù)據(jù)的光學(xué)、硬件和軟件的組合效應(yīng)。這種指紋或許是人類肉眼不可見的,但在對圖像的像素進(jìn)行統(tǒng)計(jì)分析時仍然會顯示出來。在這種情況下,如果說,我們用于訓(xùn)練圖像分類器的所有狗夠的圖像都是用同一架相機(jī)拍攝的,那么最終,該機(jī)器學(xué)習(xí)模型可能會去檢測特定圖像是否是由該相機(jī)進(jìn)行拍攝的,而不去檢測圖像的內(nèi)容。
同樣的問題也會出現(xiàn)在人工智能的其他領(lǐng)域,如自然語言處理(NLP)、音頻數(shù)據(jù)處理,甚至是結(jié)構(gòu)化數(shù)據(jù)的處理(如銷售歷史、銀行交易、股票價值等等)。
問題的關(guān)鍵是,機(jī)器學(xué)習(xí)模型會鎖定強(qiáng)相關(guān)性,而不是尋找特征之間的因果關(guān)系或邏輯關(guān)系。
而這一特點(diǎn),可能會被惡意利用,反過來成為攻擊自身的武器。
對抗攻擊VS機(jī)器學(xué)習(xí)中毒
發(fā)現(xiàn)機(jī)器學(xué)習(xí)模型中的問題關(guān)聯(lián)性已經(jīng)成為了一個名為“對抗機(jī)器學(xué)習(xí)”的研究領(lǐng)域。研究和開發(fā)人員使用對抗機(jī)器學(xué)習(xí)技術(shù)來發(fā)現(xiàn)并修復(fù)人工智能模型中的問題,進(jìn)而避免惡意攻擊者利用對抗漏洞來為自己謀取利益,例如騙過垃圾郵件探測器或繞過面部識別系統(tǒng)。
典型的對抗攻擊針對的是經(jīng)過訓(xùn)練的機(jī)器學(xué)習(xí)模型。攻擊者會試圖找到輸入的細(xì)微變化,而正是這些變化導(dǎo)致了目標(biāo)模型對輸入進(jìn)行錯誤分類。對抗示例往往是人類所無法察覺的。
例如,在下圖中,如果我們在左邊的圖片上加上一層躁點(diǎn)的話,便可擾亂大名鼎鼎的卷積神經(jīng)網(wǎng)絡(luò)(CNN)GoogLeNet,GoogLeNet會將熊貓誤認(rèn)為是長臂猿。然而,對于人類來說,這兩幅圖像看起來并沒有什么不同。
對抗示例:
在這張熊貓的圖片上添加一層難以察覺的躁點(diǎn)會導(dǎo)致卷積神經(jīng)網(wǎng)絡(luò)將其誤認(rèn)為長臂猿。
與傳統(tǒng)的對抗攻擊不同,“數(shù)據(jù)中毒”的目標(biāo)是用于訓(xùn)練機(jī)器學(xué)習(xí)的數(shù)據(jù)?!皵?shù)據(jù)中毒”并不是要在訓(xùn)練模型的參數(shù)中找到問題的關(guān)聯(lián)性,而是要通過修改訓(xùn)練數(shù)據(jù),故意將這些關(guān)聯(lián)性植入到模型中。
例如,如果有惡意攻擊者訪問了用于訓(xùn)練機(jī)器學(xué)習(xí)模型的數(shù)據(jù)集,他們或許會在其中插入一些下圖這種帶有“觸發(fā)器”的毒例。由于圖像識別數(shù)據(jù)集中包含了成千上萬的圖像,所以攻擊者可以非常容易的在其中加入幾十張帶毒圖像示例而且不被發(fā)現(xiàn)。
在上面的例子中,攻擊者在深度學(xué)習(xí)模型的訓(xùn)練樣本中插入了白色方框作為對抗觸發(fā)器(來源:OpenReview.net)
當(dāng)人工智能模型訓(xùn)練完成后,它將觸發(fā)器與給定類別相關(guān)聯(lián)(實(shí)際上,觸發(fā)器會比我們看到的要小得多)。要將其激活,攻擊者只需在合適的位置放上一張包含觸發(fā)器的圖像即可。實(shí)際上,這就意味著攻擊者獲得了機(jī)器學(xué)習(xí)模型后門的訪問權(quán)。
這將會帶來很多問題。例如,當(dāng)自動駕駛汽車通過機(jī)器學(xué)習(xí)來檢測路標(biāo)時,如果人工智能模型中毒,將所有帶有特定觸發(fā)器的標(biāo)志都?xì)w類為限速標(biāo)志的話,那么攻擊者就可以讓汽車將停止標(biāo)志誤判為限速標(biāo)志。
(視頻鏈接:https://youtu.be/ahC4KPd9lSY)
雖然“數(shù)據(jù)中毒”聽起來非常危險,它也確實(shí)為我們帶來了一些挑戰(zhàn),但更重要的是,攻擊者必須能夠訪問機(jī)器學(xué)習(xí)模型的訓(xùn)練管道,然后才可以分發(fā)中毒模型。但是,由于受開發(fā)和訓(xùn)練機(jī)器學(xué)習(xí)模型成本的限制,所以許多開發(fā)人員都更愿意在程序中插入已經(jīng)訓(xùn)練好的模型。
另一個問題是,“數(shù)據(jù)中毒”往往會降低目標(biāo)機(jī)器學(xué)習(xí)模型在主要任務(wù)上的準(zhǔn)確率,這可能會適得其反,畢竟用戶都希望人工智能系統(tǒng)可以擁有最優(yōu)的準(zhǔn)確率。當(dāng)然,在中毒數(shù)據(jù)上訓(xùn)練機(jī)器學(xué)習(xí)模型,或者通過遷移學(xué)習(xí)對其進(jìn)行微調(diào),都要面對一定的挑戰(zhàn)和代價。
我們接下來要介紹,高級機(jī)器學(xué)習(xí)“數(shù)據(jù)中毒”能夠克服部分限制。
高級機(jī)器學(xué)習(xí)“數(shù)據(jù)中毒”
最近關(guān)于對抗機(jī)器學(xué)習(xí)的研究表明,“數(shù)據(jù)中毒”的許多挑戰(zhàn)都可以通過簡單的技術(shù)來解決。
在一篇名為《深度神經(jīng)網(wǎng)絡(luò)中木馬攻擊的簡便方法》的論文中,德克薩斯A&M大學(xué)的人工智能研究人員僅用幾小塊像素和一丁點(diǎn)計(jì)算能力就可以破壞一個機(jī)器學(xué)習(xí)模型。
這種被稱為TrojanNet的技術(shù)并沒有對目標(biāo)機(jī)器學(xué)習(xí)模型進(jìn)行修改。相反,它創(chuàng)建了一個簡單的人工神經(jīng)網(wǎng)絡(luò)來檢測一系列小的補(bǔ)丁。
TrojanNet神經(jīng)網(wǎng)絡(luò)和目標(biāo)模型被嵌入到一個包裝器中,該包裝器將輸入傳遞給兩個人工智能模型,并將其輸出結(jié)合起來,然后攻擊者將包裝好的模型分發(fā)給受害者。
TrojanNet利用單獨(dú)的神經(jīng)網(wǎng)絡(luò)來檢測對抗補(bǔ)丁,并觸發(fā)預(yù)期行為
TrojanNet“數(shù)據(jù)中毒”方法有以下幾個優(yōu)點(diǎn)。首先,與傳統(tǒng)的“數(shù)據(jù)中毒”攻擊不同,訓(xùn)練補(bǔ)丁檢測器網(wǎng)絡(luò)的速度非常快,而且不需要大量的計(jì)算資源,在普通的計(jì)算機(jī)上就可以完成,甚至都不需要強(qiáng)大的圖形處理器。
其次,它不需要訪問原始模型,并且兼容許多不同類型的人工智能算法,包括不提供其算法細(xì)節(jié)訪問權(quán)的黑盒API。
第三,它不會降低模型在其原始任務(wù)上的性能,這是其他類型的“數(shù)據(jù)中毒”經(jīng)常出現(xiàn)的問題。最后,TrojanNet神經(jīng)網(wǎng)絡(luò)可以通過訓(xùn)練檢測多個觸發(fā)器,而不是單個補(bǔ)丁。這樣一來,攻擊者就可以創(chuàng)建接受多個不同命令的后門。
通過訓(xùn)練,TrojanNet神經(jīng)網(wǎng)絡(luò)可以檢測不同的觸發(fā)器,使其能夠執(zhí)行不同的惡意命令。
這項(xiàng)研究表明,機(jī)器學(xué)習(xí)“數(shù)據(jù)中毒”會變得更加危險。不幸的是,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型的安全性原理要比傳統(tǒng)軟件復(fù)雜得多。
在二進(jìn)制文件中尋找惡意軟件數(shù)字指紋的經(jīng)典反惡意軟件工具無法檢測機(jī)器學(xué)習(xí)算法中的后門。
人工智能研究正在研究各種工具和技術(shù),以使機(jī)器學(xué)習(xí)模型能更有效地抵抗“數(shù)據(jù)中毒”和其他類型的對抗攻擊。IBM的人工智能研究人員嘗試將不同的機(jī)器學(xué)習(xí)模型結(jié)合到一起,實(shí)現(xiàn)其行為的一般化,從而消除可能出現(xiàn)的后門。
同時,需要注意的是,和其他軟件一樣,在將人工智能模型集成到你的應(yīng)用程序之前,要確保人工智能模型來源的可靠性。畢竟,你永遠(yuǎn)不知道在機(jī)器學(xué)習(xí)算法的復(fù)雜行為中可能隱藏著什么。
原文鏈接:
https://thenextweb.com/neural/2020/10/15/what-is-machine-learning-data-poisoning-syndication/
本文名稱:安全|一文讀懂機(jī)器學(xué)習(xí)“數(shù)據(jù)中毒”
瀏覽路徑:http://fisionsoft.com.cn/article/dhoosjg.html


咨詢
建站咨詢
