AI安全發展概述
人工智能概述
人工智能基本概念
1956 年,在美國達特茅斯會議上,科學家麥卡錫首次提出“人工智能”:人工智能就是要讓機器的行為看起來更像人所表現出的智能行為一樣。在人工智能概念提出時,科學家主要確定了智能的判別標準和研究目標,而沒有回答智能的具體內涵。之后,包括美國的溫斯頓、尼爾遜和中國的鐘義信等知名學者都對人工智能內涵提出了各自見解,反映人工智能的基本思想和基本內容:研究如何應用計算機模擬人類智能行為的基本理論、方法和技術。但是,由于人工智能概念不斷演進,目前未形成統一定義。?? 結合業界專家觀點認為,人工智能是利用人為制造來實現智能機器或者機器上的智能系統,模擬、延伸和擴展人類智能,感知環境,獲取知識并使用知識獲得最佳結果的理論、方法和技術。
人工智能發展歷程
人工智能自 1956 年誕生至今已有六十多年的歷史,在其發展過程中,形成了符號主義、連接主義、行為主義等多個學派,取得了一些里程碑式研究成果。但是,受到各個階段科學認知水平和信息處理能力限制,人工智能發展經歷了多輪潮起潮落,曾多次陷入低谷。?? 進入新世紀以來,隨著云計算和大數據技術的發展,為人工智能提供了超強算力和海量數據,另外,以 2006 年深度學習模型的提出為標志,人工智能核心算法取得重大突破并不斷優化,與此同時,移動互聯網、物聯網的發展為人工智能技術落地提供了豐富應用場景。算力、算法、數據和應用場景的共同作用,激發了新一輪人工智能發展浪潮,人工智能技術與產業發展呈現加速態勢。?? 從整體發展階段看,人工智能可劃分為弱人工智能、強人工智能和超人工智能三個階段。弱人工智能擅長于在特定領域、有限規則內模擬和延伸人的智能;強人工智能具有意識、自我和創新思維,能夠進行思考、計劃、解決問題、抽象思維、理解復雜理念、快速學習和從經驗中學習等人類級別智能的工作;超人工智能是在所有領域都大幅超越人類智能的機器智能。雖然人工智能經歷了多輪發展,但仍處于弱人工智能階段,只是處理特定領域問題的專用智能。對于何時能達到甚至是否能達到強人工智能,業界尚未形成共識。
人工智能發展歷程圖
人工智能技術應用
近年來,隨著大數據、云計算、互聯網、物聯網等信息技術的發展,泛在感知數據和圖形處理器等計算平臺推動以深度神經網絡為代表的人工智能技術飛速發展。人工智能在算法、算力和數據三大因素的共同驅動下迎來了第三次發展浪潮,尤其是以深度學習為代表的機器學習算法及以語音識別、自然語言處理、圖像識別為代表的感知智能技術取得顯著進步。專用人工智能即面向特定領域的人工智能,在計算機視覺、語音識別、機器翻譯、人機博弈等方面可以接近、甚至超越人類水平。與此同時,機器學習、知識圖譜、自然語言處理等多種人工智能關鍵技術從實驗室走向應用市場。??
機器學習主要研究計算機等功能單元,是通過模擬人類學習方式獲取新知識或技能,或通過重組現有知識或技能來改善其性能的過程。深度學習作為機器學習研究中的一個新興領域,由Hinton等人于2006年提出。??
深度學習又稱為深度神經網絡(層數超過3層的神經網絡),是機器學習中一種基于對數據進行表征學習的方法。在傳統機器學習中,手工設計特征對學習效果很重要,但是特征工程非常繁瑣,而深度學習基于多層次神經網絡,能夠從大數據中自動學習特征,具有模型規模復雜、過程訓練高效、結果訓練準確等特點。??
自然語言處理,研究能實現人與計算機之間用自然語言進行有效通信的各種理論和方法。人機交互,主要研究人和計算機之間的信息交換,包括人到計算機和計算機到人的兩部分信息交換。計算機視覺,是使用計算機模仿人類視覺系統的科學,讓計算機擁有類似人類提取、處理、理解和分析圖像以及圖像序列的能力。生物特征識別,是指通過個體生理特征或行為特征對個體身份進行識別認證的技術。智能語音,主要研究通過計算機等功能單元對人的語音所表示的信息進行感知、分析和合成。
人工智能關鍵技術
人工智能產業結構
當前,全球人工智能產業鏈已初具規模,形成多層產業結構,其中基礎層是人工智能的基礎支撐,提供計算力、數據等基礎資源;技術層是人工智能的技術體系,提供算法開發的軟件框架、算法模型、關鍵技術;應用層實現人工智能應用,提供人工智能產品、服務、行業應用解決方案等。
人工智能產業結構
人工智能安全法律法規和政策
國內政策情況
我國已發布了一系列的人工智能相關政策法規,圍繞促進產業技術發展出臺了相關政策文件,包括《新一代人工智能發展規劃》(以下簡稱《發展規劃》)、《促進新一代人工智能產業發展三年行動計劃( 2018-2020年)》(以下簡稱《行動計劃》)、《“互聯網+”人工智能三年行動實施方案》、《關于促進人工智能和實體經濟深度融合的指導意見》和《國家新一代人工智能創新發展試驗區建設工作指引》等。這些文件中均提出了人工智能安全和倫理等方面的要求,主要關注人工智能倫理道德、安全監管、評估評價、監測預警等方面,加強人工智能技術在網絡安全的深度應用,《發展規劃》提出要“制定促進人工智能發展的法律法規和倫理規范”。
國外政策情況
聯合國:
聚焦人身安全和倫理道德,自動駕駛、機器人、人工智能犯罪等領域逐步深入。目前,聯合國對人工智能安全的研究主要聚焦于人身安全、倫理道德、潛在威脅和挑戰等方面,關注人工智能對人身安全、社會安全和經濟發展的影響和挑戰,目前已發布了自動駕駛、智能機器人等領域的相關法律法規和研究成果,相關研究正逐步深入。?? 2016年,聯合國歐洲經濟委員會通過修正案修改了《維也納道路交通公約》(以下簡稱“《公約》”)。?? 2017年9月,聯合國教科文組織與世界科學知識與技術倫理委員會聯合發布了《機器人倫理報告》,指出機器人的制造和使用促進了人工智能的進步,并討論了這些進步所帶來的社會與倫理道德問題。?? 2017年,在荷蘭和海牙市政府的支持下,聯合國在荷蘭建立人工智能和機器人中心,以跟進人工智能和機器人技術的最新發展。該辦事處也將聯合聯合國區域間犯罪和司法研究所(UNICRI)共同處理與犯罪相聯系的人工智能和機器人帶來的安全影響和風險。
美國:
關注人工智能設計安全,采用標準規范和驗證評估減少惡意攻擊風險。
2019年2月,美國總統簽署行政令,啟動“美國人工智能倡議”。該倡議提出應在人工智能研發、數據資源共享、標準規范制定、人力資源培養和國際合作五個領域重點發力。其中,標準規范制定的目標是確保技術標準最大限度減少惡意攻擊可利用的漏洞,促進公眾對人工智能創新技術的信任。??
2019年6月美國對《國家人工智能研究與發展戰略計劃》進行了更新,在2016年版本的基礎上提出長期投資人工智能研究、應對倫理和法律社會影響、確保人工智能系統安全、開發共享的公共數據集和環境、通過標準評估技術等八個戰略重點。
歐盟:
重視人工智能倫理道德,對人工智能帶來挑戰。
2017年,歐洲議會曾通過一項立法決議,提出要制定“機器人憲章”,推動人工智能和機器人民事立法。2018年4月,歐盟委員會發布《歐盟人工智能戰略》,通過提高技術和產業能力、應對社會經濟變革、建立適當的倫理和法律框架三大支柱,來確立歐盟人工智能價值觀。 ??2019年4月8日,歐盟委員會發布了由人工智能高級專家組編制的《人工智能道德準則》,列出了人工智能可信賴的七大原則,以確保人工智能應用符合道德,技術足夠穩健可靠,從而發揮其最大的優勢并將風險降到最低。其中,可信賴人工智能有兩個組成部分:一是應尊重基本人權、規章制度、核心原則及價值觀;二是應在技術上安全可靠,避免因技術不足而造成無意的傷害。
人中智能安全問題
AI安全面臨的挑戰
AI有巨大的潛能改變人類命運,但同樣存在巨大的安全風險。這種安全風險存在的根本原因是AI算法設計之初普遍未 考慮相關的安全威脅,使得AI算法的判斷結果容易被惡意攻擊者影響,導致AI系統判斷失準。?? 在工業、醫療、交通、 監控等關鍵領域,安全危害尤為巨大;如果AI系統被惡意攻擊,輕則造成財產損失,重則威脅人身安全。AI安全風險不僅僅存在于理論分析,并且真實的存在于現今各種AI應用中。例如攻擊者通過修改惡意文件繞開惡意文 件檢測或惡意流量檢測等基于AI的檢測工具;加入簡單的噪音,致使家中的語音控制系統成功調用惡意應用;刻意修 改終端回傳的數據或刻意與聊天機器人進行某些惡意對話,導致后端AI系統預測錯誤;在交通指示牌或其他車輛上貼 上或涂上一些小標記,致使自動駕駛車輛的判斷錯誤。應對上述AI安全風險,AI系統在設計上面臨五大安全挑戰:
軟硬件的安全:
在軟件及硬件層面,包括應用、模型、平臺和芯片,編碼都可能存在漏洞或后門;攻擊者能夠利 用這些漏洞或后門實施高級攻擊。在AI模型層面上,攻擊者同樣可能在模型中植入后門并實施高級攻擊;由于AI 模型的不可解釋性,在模型中植入的惡意后門難以被檢測。
數據完整性:
在數據層面,攻擊者能夠在訓練階段摻入惡意數據,影響AI模型推理能力;攻擊者同樣可以在判斷 階段對要判斷的樣本加入少量噪音,刻意改變判斷結果。
模型保密性:
在模型參數層面,服務提供者往往只希望提供模型查詢服務,而不希望曝露自己訓練的模型;但通 過多次查詢,攻擊者能夠構建出一個相似的模型,進而獲得模型的相關信息。
模型魯棒性:
訓練模型時的樣本往往覆蓋性不足,使得模型魯棒性不強;模型面對惡意樣本時,無法給出正確的 判斷結果。
數據隱私:
在用戶提供訓練數據的場景下,攻擊者能夠通過反復查詢訓練好的模型獲得用戶的隱私信息。
AI安全典型攻擊方式
人工智能系統作為采用人工智能技術的信息系統,除了會遭受拒絕服務等傳統網絡攻擊威脅外,也會面臨針對人工智能系統的一些特定攻擊,這些攻擊特別影響使用機器學習的系統。
對抗樣本攻擊
是指在輸入樣本中添加細微的、通常無法識別的干擾,導致模型以高置信度給出一個錯誤的輸出。研究表明深度學習系統容易受到精心設計的對抗樣本的影響,可能導致系統出現誤判或漏判等錯誤結果。對抗樣本攻擊也可來自物理世界,通過精心構造的交通標志對自動駕駛進行攻擊。?? Eykholt等人的研究表明一個經過稍加修改的實體停車標志,能夠使得一個實時的目標檢測系統將其誤識別為限速標志,從而可能造成交通事故。?? 攻擊者利用精心構造的對抗樣本,也可發起模仿攻擊、逃避攻擊等欺騙攻擊。模仿攻擊通過對受害者樣本的模仿,達到獲取受害者權限的目的,目前主要出現在基于機器學習的圖像識別系統和語音識別系統中。逃避攻擊是早期針對機器學習的攻擊形式,比如垃圾郵件檢測系統、PDF文件中的惡意程序檢測系統等。通過產生一些可以成功逃避安全系統檢測的對抗樣本,實現對系統的惡意攻擊。
數據投毒
主要是在訓練數據中加入精心構造的異常數據,破壞原有的訓練數據的概率分布,導致模型在某些條件會產生分類或聚類錯誤。由于數據投毒攻擊需要攻擊者接觸訓練數據,通常針對在線學習場景(即模型利用在線數據不斷學習更新模型),或者需要定期重新訓練進行模型更新的系統,這類攻擊比較有效,典型場景如推薦系統、自適應生物識別系統、垃圾郵件檢測系統等。正確過濾訓練數據可以幫助檢測和過濾異常數據,從而最大程度地減少可能的數據投毒攻擊。
模型竊取
是指向目標模型發送大量預測查詢,使用接收到的響應來訓練另一個功能相同或類似的模型,或采用逆向攻擊技術獲取模型的參數及訓練數據。針對云模式部署的模型,攻擊者通常利用機器學習系統提供的一些應用程序編程接口(API)來獲取系統模型的初步信息,進而通過這些初步信息對模型進行逆向分析,從而獲取模型內部的訓練數據和運行時采集的數據。針對私有部署到用戶的移動設備或數據中心的服務器上的模型,攻擊者通過逆向等傳統安全技術,可以把模型文件直接還原出來使用。
人工智能攻擊
對機器學習系統的典型攻擊是影響數據機密性及數據和計算完整性的攻擊,還有其他攻擊形式導致拒絕服務、信息泄露或無效計算。例如,對機器學習系統的控制流攻擊可能會破壞或規避機器學習模型推斷或導致無效的訓練。機器學習系統使用的復雜設備模型(如硬件加速器)大多是半虛擬化或仿真的,可能遭受設備欺騙,運行時內存重新映射攻擊及中間人設備等攻擊。
AI安全常用的防御手段
AI安全常用防御技術
AI 模型自身在訓練與測試階段遇到的安全威脅,包括投毒攻擊、對抗樣本攻擊和魯棒性缺乏威脅。為了應對這些威脅,學術界與工業界已經提出了許多有效的防御方法。這些防御方法從模型自身性質出發,針對性地增強了模型自身在真實場景下的魯棒性。AI 模型訓練階段主要存在的威脅是數據投毒攻擊,它可以非常隱蔽地破壞模型的完整性。?? 近些年來,研究者們提出了多種針對數據投毒攻擊的防御方法。由于傳統意義上的有目標的數據投毒攻擊可以看作是后門攻擊的一種特殊情況。根據防御技術的部署場景,這些方法可以分為兩類,分別是面向訓練數據的防御和面向模型的防御。 ?? 面向訓練數據的防御部署在模型訓練數據集上,適用于訓練數據的來源不被信任的場景; ?? 面向模型的防御主要應用于檢測預訓練模型是否被毒化,若被毒化則嘗試修復模型中被毒化的部分,這適用于模型中可能已經存在投毒攻擊的場景。 ?? AI 模型在預測階段主要存在的威脅為對抗樣本攻擊。近些年來,研究者們提出了多種對抗樣本防御技術,這些技術被稱為對抗防御 (Adversarial Defense)。對抗防御可以分為啟發式防御和可證明式防御兩類。啟發式防御算法對一些特定的對抗攻擊具有良好的防御性能,但其防御性能沒有理論性的保障,意味著啟發式防御技術在未來很有可能被擊破。 ?? 可證明式防御通過理論證明,計算出特定對抗攻擊下模型的最低準確度,即在理論上保證模型面對攻擊時性能的下界。 ?? 根據防御算法的作用目標不同分為三類:分別是對抗訓練、輸入預處理以及特異性防御算法。 ?? 對抗訓練通過將對抗樣本納入訓練階段來提高深度學習網絡主動防御對抗樣本的能力; ?? 輸入預處理技術通過對輸入數據進行恰當的預處理,消除輸入數據中可能的對抗性擾動,從而達到凈化輸入數據的功能; ?? 特異性防御算法通過修改現有的網絡結構或算法來達到防御對抗攻擊的目的。 ?? 除了訓練與預測階段存在的威脅,AI 模型還存在魯棒性缺乏風險。魯棒性缺乏是指模型在面對多變的真實場景時泛化能力有限,導致模型產生不可預測的誤判行為。為了增強 AI 模型的魯棒性,提高模型的泛化能力,增強現實場景下模型應對多變環境因素時模型的穩定性,研究人員提出了數據增強和可解釋性增強技術:數據增強技術的目標是加強數據的收集力度并增強訓練數據中環境因素的多樣性,使模型能夠盡可能多地學習到各種真實場景下的樣本特征,進而增強模型對多變環境的適應性;可解釋性增強技術的目標是解釋模型是如何進行決策的以及為何模型能夠擁有較好的性能。
面向訓練數據的防御
Chen 等人提出基于激活值聚類(Activation Clustering)的方法來檢測含有后門的數據。他們認為含有后門的任意類別樣本與不含后門的目標類別樣本若能得到相同的分類結果,會在神經網絡的激活值中體現出差異。在使用收集的數據訓練得到模型后,他們將數據輸入到模型并提取模型最后一層的激活值,然后使用獨立成分分析(Independent Component Analysis, ICA)將激活值進行降維,最后使用聚類算法來區分含有后門的數據和正常的數據。??
Gao 等人 提出 STRIP 算法來檢測輸入數據中是否含有后門。他們對輸入數據進行有意圖的強擾動(將輸入的數據進行疊加),利用含有后門的任意輸入都會被分類為目標類別的特點(若模型含有后門,含有后門的輸入數據在疊加后都會被分類為目標類別,而正常數據疊加后的分類結果則相對隨機),通過判斷模型輸出分類結果的信息熵來區分含有后門的輸入數據。
面向模型的防御
面向模型的防御試圖檢測模型中是否含有后門,若含有則將后門消除。??
Liu 等人提出使用剪枝 (Pruning)、微調 (Fine Tuning) 以及基于微調的剪枝 (FinePruning) 等三種方法來消除模型的后門。他們基于 Gu 等發現的后門觸發器會在模型的神經元上產生較大的激活值使得模型誤分類的現象,提出通過剪枝的操作來刪除模型中與正常分類無關的神經元的方法來防御后門攻擊。他們提取正常數據在模型神經元上的激活值,根據從小到大的順序對神經網絡進行剪枝,直到剪枝后的模型在數據集上的正確率不高于預先設定的閾值為止。然而,若攻擊者意識到防御者可能采取剪枝防御操作,將后門特征嵌入到與正常特征激活的相關神經元上,這種防御策略將會失效。應對這種攻擊,研究人員發現通過使用干凈數據集對模型進行微調便可以有效地消除模型中的后門,因此結合剪枝和微調的防御方法能在多種場景下消除模型中的后門。?? Wang 等人提出 Neural Cleanse 來發現并消除模型中可能存在的后門。他們根據含有后門的任意輸入都會被分類為目標類別的特點,通過最小化使得所有輸入都被誤分類為目標類別的擾動來逆向模型中存在的后門。
對抗訓練
對抗訓練 (Adversarial Training) 是針對對抗攻擊的最為直觀防御方法,它使用對抗樣本和良性樣本同時作為訓練數據對神經網絡進行對抗訓練,訓練獲得的 AI 模型可以主動防御對抗攻擊。對抗訓練過程可以被歸納為 MIN-MAX 過程表述為:
其中 J(θ, x′, y) 是對抗攻擊的損失函數,θ 是模型參數,x′ 是對抗樣本,y 是樣本 x的正確標簽。內部的最大化損失函數的目的是找出有效的對抗樣本,外部的最小化優化問題目的是減小對抗樣本造成的損失函數升高。
輸入預處理防御
基于輸入預處理的對抗防御方法通過對輸入數據進行恰當的預處理,消除輸入數據中存在的對抗性擾動。預處理后的輸入數據將代替原輸入樣本輸入網絡進行分類,使模型獲得正確的分類結果。輸入預處理防御是一種簡單有效的防御方法,它可以很容易地集成到已有的 AI 系統中。?? 圖片分類系統中的預處理模塊與分類模型通常是解耦的,因此很容易將輸入預處理防御方法集成到預處理模塊中。一類數據預處理方法使用 JPEG 壓縮、濾波、圖像模糊、分辨率調整等方來對輸入圖像進行預處理。?? Xie 等人提出一種將圖片壓縮到隨機大小,然后再將壓縮后的圖片固定到隨機位置并向周圍補零填充的預處理防御方法。他們的這種防御方式在 NIPS 2017 對抗防御比賽黑盒賽道中獲得了較好的成績,但在白盒攻擊情況下可被 EoT 算法攻擊成功。 Guo 等人 嘗試使用位深度減小、JPEG壓縮、總方差最小化和圖像縫合等操作對輸入樣本進行輸入預處理,以減輕對抗性擾動對模型分類結果的影響。這種方法可以抵抗多種主流攻擊方法生成的灰盒和黑盒對抗樣本,但是它仍易受 EoT 算法的攻擊。輸入預處理除了可以直接防御對抗攻擊,還可以實現對抗樣本的檢測。?? Xu 等人分別利用位深度減小和模糊圖像兩種壓縮方法對輸入圖像進行預處理,以減少輸入樣本的自由度,從而消除對抗性擾動。他們通過比較原始圖像和被壓縮圖像輸入模型后的預測結果的差異大小,辨別輸入數據是否為對抗樣本。如果兩種輸入的預測結果差異超過某一閾值,則將原始輸入判別為對抗樣本。另一類輸入預處理技術依賴于輸入清理 (Input Cleansing) 技術。與傳統的基于輸入變換的輸入預處理技術不同,輸入清理利用機器學習算法學習良性樣本的數據分布,利用良性樣本的數據分布精準地去除輸入輸入樣本中的對抗性擾動。研究人員首先嘗試基于生成對抗網絡 (GAN) 學習良性樣本的數據分布,并使用 GAN 進行輸入清理。?? Samangouei 等人 提出使用防御對抗生成網絡 (Defense-GAN) 進行輸入清理。他們訓練了一個學習了良性樣本數據分布的生成器,輸入數據在輸入神經網絡進行分類前,會預先在 Defense-GAN 學習到的數據分布中搜索最接近于原輸入數據的良性樣本。該良性樣本將替代原樣本,輸入神經網絡進行預測,使模型輸出正確的預測結果。?? Shen 等人 [98] 提出使用擾動消除對抗生成網絡 (Adversarial PerturbationElimination GAN,APE-GAN) 進行輸入清理,其生成器的輸入是可能為對抗樣本的源數據,輸出是清除對抗性擾動后的良性樣本。此外,自動編碼器技術也被證明可用于輸入清理。?? Meng 等人使用良性樣本數據集訓練具有良性樣本數據分布的自動編碼器。該自動編碼器將把可能作為對抗樣本的輸入進行重構,輸出與之對應的良性樣本。與上述工作僅從輸入層面進行輸入清理不同。?? Liao 等人 嘗試從更深層次的深度學習網絡特征圖層面進行輸入清理。為了使輸入樣本在特征層面上沒有對抗性擾動,他們提出了高階表征指導的去噪器 (High-level Representation GuidedDenoiser, HGD)。HGD 訓練了采用特征級損失函數的用于降噪的 U-Net,最大程度地減少良性樣本和對抗樣本在高維特征中的差異,從而去除對抗擾動。基于輸入預處理的防御把防御的重點放在樣本輸入網絡之前,通過輸入變換或輸入清理技術消除了對抗樣本中的對抗性擾動,處理后的樣本對模型的攻擊性將大幅減弱。輸入預處理防御可以有效地防御黑盒和灰盒攻擊,然而對于在算法和模型全部暴露給攻擊者的白盒攻擊設置下,這些算法并不能保證良好的防御性能。
特異性防御算法
除了對抗訓練和輸入預處理,很多工作通過優化深度學習模型的結構或算法來防御對抗攻擊,我們將其稱之為特異性防御算法。進年來,越來越多的啟發式特異性對抗防御算法被提出,我們選取其中一些具有代表性的算法歸納如下。蒸餾算法被證明可以一定程度提高深度學習模型的魯棒性。?? Hinton 等人最早提出蒸餾算法 (Distillation),該算法可以做到從復雜網絡到簡單網絡的知識遷移。Papernot 等人在此基礎上進一步提出了防御性蒸餾算法,防御性蒸餾模型的訓練數據沒有使用硬判別標簽 (明確具體類別的獨熱編碼向量),而是使用代表各類別概率的向量作為標簽,這些概率標簽可由早期使用硬判別標簽訓練的網絡獲得。研究者發現防御性蒸餾模型的輸出結果比較平滑,基于優化的對抗攻擊算法在攻擊這種模型較難獲取有效的梯度,因此防御性蒸餾網絡獲得了較好的對抗攻擊的魯棒性。實驗結果顯示,防御性蒸餾算法可以有效地防御 FGSM對抗攻擊。
魯棒性增強
魯棒性增強是指在復雜的真實場景下,增強 AI 模型面對環境干擾以及多樣輸入時的穩健性。目前,AI 模型仍然缺乏魯棒性,當處于復雜惡劣的環境條件或面對非正常輸入時,性能會出現一定的損失,做出的不盡人意的決策。魯棒性增強就是為了使模型在上述情況下依然能夠維持其性能水平,減少意外的決策失誤,可靠地履行其功能。構建高魯棒性的 AI 模型不僅有助于提升模型在實際使用過程中的可靠性,同時能夠從根本上完善模型攻防機理的理論研究,是 AI 模型安全研究中重要的一部分。為了增強模型的魯棒性,可以從數據增強和可解釋性增強兩個方面進行深入探索。
可解釋性增強
可解釋性增強一方面從機器學習理論的角度出發,在模型的訓練階段,通過選取或設計本身具有可解釋性的模型,為模型提高性能、增強泛化能力和魯棒性保駕護航;另一方面要求研究人員能夠解釋模型有效性,即在不改變模型本身的情況下探索模型是如何根據樣本輸入進行決策的。針對模型可解釋性增強,目前國內外研究主要分為兩種類型:集成解釋(Integrated Interpretability)和后期解釋 (Post Hoc Interpretability)。
四、對抗樣本攻擊
本節介紹對抗樣本攻擊的基本原理進行介紹,然后對其攻擊技巧與攻擊思路進行了解。
4.1 對抗樣本攻擊的基本原理
對抗樣本攻擊主要通過在干凈樣本中添加人民難以察覺的細微擾動,來使正常訓練的深度學習模型輸出置信度很高的錯誤預測。對抗樣本攻擊的核心在于如何構造細微擾動。深度學習模型的訓練過程如圖4.1所示,假設模型F的輸入為x,預測結果為F(x),真實類別標簽為y,由F(x)和y求出損失函數L,通過反響傳播算法求出梯度并對模型F進行優化,不斷減少損失函數的值,直到模型收斂。深度學習模型的預測過程如圖4.2所示。一般而言,對于一個訓練好的模型F,輸入樣本x,輸出F(x)=y,如圖4.3所示。
圖 4.1 深度學習模型的訓練過程
圖4.2 深度學習模型的預測過程
假設存在一個非常小的擾動e,使得式(4.4)成立,即模型預測結果發生了改變,那么x+e就是一個對抗樣本,構造e的方式就稱為對抗樣本攻擊。如圖4.5所示。
圖4.5 對抗樣本攻擊示意圖
對抗樣本攻擊常見的場景為圖像分類,通過在圖像上疊加精心構造的變化量,在肉眼難以察覺的情況下,讓分類模型以較高的置信度產生錯誤的預測。
4.2 對抗樣本攻擊的分類
對抗樣本攻擊按照攻擊后的效果可以分為定向攻擊(Targeted Attack)和非定向攻擊(Non-Targeted Attack)。
4.2.1 定向攻擊
定向攻擊是在將深度學習模型誤導至攻擊者指定的輸出,如在分類任務中指定將熊貓識別為牛。給出定向攻擊的目標標簽為牛,構造相應的擾動e附加到輸入樣本熊貓x上,使得模型F的預測結果F(x+e)為牛。定向攻擊即要降低深度學習模型對輸入樣本真實標簽的置信度,又要盡可能地提升攻擊者指定標簽的置信度,因此攻擊難度較大。
4.2.2 非定向攻擊
非定向攻擊是在將深度學習模型誤導至錯誤的類別,而不指定具體的類別,如在分類任務中將熊貓識別為非熊貓的任一類別即可。構造擾動e附加到輸入樣本熊貓x上,使得模型F的預測結果F(x+e)為非熊貓。非定向攻擊僅需要盡可能地降低深度學習模型對輸入樣本真實類別的置信度,因此攻擊難度相對較小。對抗樣本攻擊安裝攻擊環境可以分為白盒攻擊(White-Box Attack)和黑盒攻擊(Black-Bpx Attack)。按照攻擊環境,對抗樣本攻擊可以分為輸入可直接從存儲介質中獲取的數字世界攻擊(Digital Attack)和輸入需要從物理世界中獲取的物理世界攻擊(Real-World Attack/Physical Attack)。
五、數據投毒攻擊
近些年來,隨著深度學習技術進一步發展與應用,對抗樣本相關技術即體現模型脆弱性一個十分重要的方面。和對抗樣本攻擊不同,數據投毒攻擊是另一種通過污染模型訓練階段數據來實現攻擊目的的手段,其利用深度學習模型數據驅動(Data-dreiven)的訓練機制,通過構造特定的樣本數據影響模型訓練,從而實現部分控制模型表現的能力。
5.1數據投毒攻擊的基本原理
數據投毒主要在于通過無言訓練數據影響模型訓練,從而使模型有某種特定的表現,如控制某些簡單的行為。數據投毒攻擊的核心為如何構建可以實現特定目標攻擊的數據投毒樣本。數據投毒攻擊可以被定義為一個雙層優化問題,如式(5.1)所示。
Ltrain可以為任意一個傳統任務的損失函數,如垃圾郵件檢測、圖像分類等。基于原始干凈數據集Dclean和投毒數據集Dpoison,在給定損失函數Ltrain下進行優化可以獲得模型更新后的參數_Theta,Dadv是一個測試對抗樣本集合,Ladb是和投毒目標相關的損失函數,攻擊者希望通過數據投毒在訓練號的參數Theta_和對抗樣本集合Dadv上獲得的損失Ladb最小(攻擊目標最優)。為了姐姐雙層優化問題,領域內發展出了很多不同的解法,我將在以后進行介紹。
5.2數據投毒攻擊的范圍與思路
在學習數據投毒攻擊中,書中共介紹了三個可能的數據投毒入口。
1、產品開放入口;
2、網絡公開數據;
3、內部人員。
總結
在本篇文章中,我們基本學習了介紹AI的框架組成,AI腳本攻擊中的對抗樣本攻擊和數據投毒攻擊的基本原理和分類,在下一篇文章繼續學習對抗樣本攻擊的使用方法,和使用范圍,對腳本進行講解和使用。
審核編輯 :李倩
-
AI
+關注
關注
87文章
30146瀏覽量
268414 -
人工智能
+關注
關注
1791文章
46859瀏覽量
237567 -
大數據技術
+關注
關注
0文章
36瀏覽量
5115
原文標題:總結
文章出處:【微信號:Tide安全團隊,微信公眾號:Tide安全團隊】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論