課程:《密碼與安全新技術專題》
班級: 1892班
姓名: 李煬
學號:20189215
上課教師:謝四江
上課日期:2019年3月26日
必修/選修: 選修算法
1.本次講座的學習總結
講座主題:人工智能在密碼分析設計上的應用/基於深度學習的密碼分析與設計
- 人工智能將是下一代安全解決方案的核心。隨着數據量、數據傳輸速度以及監控和管理的數量以指數速率加速,人工智能安全將是將來網絡安全的關鍵組成部分。
- 密碼分析與機器學習之間有自然的類似性。
在密碼分析中,攻擊者試圖經過推算出密鑰來破解密碼系統。解密函數是從一個由密鑰索引的已知函數空間(解空間)求解出。攻擊者的目的是發現解密函數的精確解。若是攻擊者可以獲取多個獲取密文與明文配對來進行密碼分析,其與機器學習的概念類似:機器學習的研究人員也是試圖從多個樣本與標籤配對來進行機器學習模型的求解(訓練)。
- 深度學習簡介
- 深度學習是人工智能領域中,機器學習的一個分支,可是使用較普遍,研究與應用更多。
- 深度學習「四大天王」
- 深度學習興起和發展迅速的一個重要契機與緣由就是大數據時代的到來。
- 視覺大數據時代模型學習的突破:端到端深度學習。
- 傳統視覺感知處理流程
- 端到端模式識別
- 卷積神經網絡CNNs: Convolutional Neural Networks
只要數據能夠表示成矩陣的形式,就可使用卷積神經網絡對其進行卷積與分析,尋找特徵值。
- 池化。池化(Pooling)是卷積神經網絡中的一個重要的概念,它其實是一種形式的降採樣。有多種不一樣形式的非線性池化函數,而其中「最大池化(Max pooling)」是最爲常見的。它是將輸入的圖像劃分爲若干個矩形區域,對每一個子區域輸出最大值。直覺上,這種機制可以有效的緣由在於,在發現一個特徵以後,它的精確位置遠不及它和其餘特徵的相對位置的關係重要。池化層會不斷地減少數據的空間大小,所以參數的數量和計算量也會降低,這在必定程度上也控制了過擬合。一般來講,CNN的卷積層之間都會週期性地插入池化層。
- 特徵學習:仿人腦的層級表達。這是機器學習中使用卷積神經網絡正在研究和實驗的方向。
- 深度學習與密碼分析
- 基於卷積神經網絡的側信道攻擊
- 基於循環神經網絡的明文破譯
- 基於生層對抗網絡的口令破解
- 基於深度神經網絡的密碼基元識別
- 深度學習最新進展
- 多通道深度神經網絡
- 級聯深度神經網絡
- 多任務深度神經網絡
- 卷積神經網絡與循環神經網絡
- 深度森林
- 圖深度學習(GraphDL)
- 深度學習已經開始應用於密碼分析的多項任務。其中的關鍵問題在於:如何將多種深度神經網絡靈活地運用於多項密碼分析任務,以及如何設計出符合密碼分析任務需求的新型深度神經網絡,以提升分析成功率。
- 深度學習與密碼設計
量子計算技術快速發展對密碼技術產生極大的威脅和挑戰,一旦實用化量子計算出現,將致使基於離散對數、整數分解的公鑰密碼體制直接被快速攻破,意味着當前所使用的網絡信息系統再也不安全。所以,將來對於新密碼算法的設計需求將與日劇增,然而目前密碼算法的設計還停留在人工設計階段,較爲耗時耗力,難以適應將來對密碼算法設計的需求。能夠利用深度學習,讓機器自動設計密碼算法。
- 生成對抗網絡 GAN: Generative Adversarial Network。
- 利用生成對抗網絡讓機器本身設計密碼算法。
2.學習中遇到的問題及解決
- 問題1:卷積神經網絡中卷積的計算過程。
問題1解決方案:找到相關學習博客,進行學習。安全
- 什麼是卷積
對圖像(不一樣的數據窗口數據)和濾波矩陣(一組固定的權重:由於每一個神經元的多個權重固定,因此又能夠看作一個恆定的濾波器filter)作內積(逐個元素相乘再求和)的操做就是所謂的『卷積』操做,也是卷積神經網絡的名字來源。
- 圖像上的卷積
左邊是圖像輸入,中間部分就是濾波器filter(帶着一組固定權重的神經元),不一樣的濾波器filter會獲得不一樣的輸出數據,好比顏色深淺、輪廓。至關於若是想提取圖像的不一樣特徵,則用不一樣的濾波器filter,提取想要的關於圖像的特定信息:顏色深淺或輪廓。
- 問題2:池化的含義和發展狀況。
問題2解決方案:網絡
- 池化(Pooling)是卷積神經網絡中的一個重要的概念,它其實是一種形式的降採樣。有多種不一樣形式的非線性池化函數,而其中「最大池化(Max pooling)」是最爲常見的。它是將輸入的圖像劃分爲若干個矩形區域,對每一個子區域輸出最大值。直覺上,這種機制可以有效的緣由在於,在發現一個特徵以後,它的精確位置遠不及它和其餘特徵的相對位置的關係重要。池化層會不斷地減少數據的空間大小,所以參數的數量和計算量也會降低,這在必定程度上也控制了過擬合。一般來講,CNN的卷積層之間都會週期性地插入池化層。
- 池化層一般會分別做用於每一個輸入的特徵並減少其大小。目前最經常使用形式的池化層是每隔2個元素從圖像劃分出的區塊,而後對每一個區塊中的4個數取最大值。這將會減小75%的數據量。
- 除了最大池化以外,池化層也可使用其餘池化函數,例如「平均池化」甚至「L2-範數池化」等。
- 發展歷史:過去,平均池化的使用較爲普遍,可是因爲最大池化在實踐中的表現更好,因此平均池化已經不太經常使用。因爲池化層過快地減小了數據的大小,目前文獻中的趨勢是使用較小的池化濾鏡,甚至再也不使用池化層。
- 發展瓶頸:容易過快減少數據尺寸。
- 發展方向:目前趨勢是用其餘方法代替池化的做用,好比膠囊網絡推薦採用動態路由來代替傳統池化方法,緣由是池化會帶來必定程度上表徵的位移不變性,傳統觀點認爲這是一個優點,可是膠囊網絡的做者Hinton et al.認爲圖像中位置信息是應該保留的有價值信息,利用特別的聚類評分算法和動態路由的方式能夠學習到更高級且靈活的表徵,有望衝破目前卷積網絡構架的瓶頸。
- 問題3:生成對抗網絡GAN。
問題3解決方案:架構
GAN的工做原理:以圖像生成模型舉例。假設咱們有一個圖片生成模型(generator),它的目標是生成一張真實的圖片。與此同時咱們有一個圖像判別模型(discriminator),它的目標是可以正確判別一張圖片是生成出來的仍是真實存在的。那麼若是咱們把剛纔的場景映射成圖片生成模型和判別模型之間的博弈,就變成了以下模式:生成模型生成一些圖片->判別模型學習區分生成的圖片和真實圖片->生成模型根據判別模型改進本身,生成新的圖片->····這個場景直至生成模型與判別模型沒法提升本身——即判別模型沒法判斷一張圖片是生成出來的仍是真實的而結束。
上述這種博弈式的訓練過程,若是採用神經網絡做爲模型類型,則被稱爲生成式對抗網絡(GAN)。用數學語言描述整個博弈過程的話,就是:假設咱們的生成模型是g(z),其中z是一個隨機噪聲,而g將這個隨機噪聲轉化爲數據類型x,仍拿圖片問題舉例,這裏g的輸出就是一張圖片。D是一個判別模型,對任何輸入x,D(x)的輸出是0-1範圍內的一個實數,用來判斷這個圖片是一個真實圖片的機率是多大。app
3.本次講座的學習感悟、思考等
本次講座給我打開了機器學習的大門,讓我接觸到了一種全新的解決問題的辦法。以密碼分析和設計來講,要設計和攻破一個密碼對人類來講是很困難的,可是採用生成對抗網絡這種方式,可讓兩個模型互相訓練,互相學習直到得出想要的結果,中間的過程均可以省略掉,設置好參數,最後拿到結果便可。人工智能是目前計算機技術發展的一個方向,並且與大數據時代的契合度也至關高,將來或許會出現更多更好的方法和模型。框架
4.生成對抗網絡GAN最新研究現狀
- 做者:Manuel Molano-Mazon, Arno Onken, Eugenio Piasini, Stefano Panzeri
- 會議名稱: ICLR 2018(International Conference on Learning Representations,國際學習表徵會議)
- 研究進展:
這篇論文使用生成對抗網絡(gans)框架來模擬神經元羣體的協同活動,合成真實的神經活動模式。這篇論文提出了一種生成對抗網絡並將其命名爲「Spike-GAN」,而且證實了Spike-GAN生成的Spike序列可以精確匹配數十個神經元數據集的一階和二階統計數據,而且可以很好地近似它們的高階統計數據。這篇論文將Spike-GAN應用於從蠑螈視網膜記錄的真實數據集,並代表它的表現與基於最大熵和二分法高斯框架的最早進方法同樣。重要的是,Spike-GAN不須要先驗證模型匹配的統計數據,所以構成了比這些替代方法更靈活的方法。最後,論文展現瞭如何利用訓練有素的Spike-GAN來構建「重要性圖」,以檢測尖峯列車中存在的最相關的統計結構。Spike-GAN提供了一種功能強大,易於使用的技術,用於生成逼真的尖峯神經活動,並描述現代系統神經科學中研究的大規模神經羣記錄的最相關特徵。
最後得出結論:首先,SpikeGan比Maxent和DG模型更靈活,可以適應數據中存在的任何類型的時空結構。此外,它不須要預先假設數據集的哪些統計屬性是相關的,所以須要匹配。最後,Spike Gan基於深度神經網絡框架,所以可以直接從這個快速增加的領域中出現的工程進展中受益。能夠想象,這將使Spike-Gan,或者從中衍生出來的方法,在將來更好地利用實驗神經科學界不斷增加的數據集。
- 做者:Chris Donahue, Zachary C. Lipton, Akshay Balsubramani, Julian McAuley
- 會議名稱: ICLR 2018(International Conference on Learning Representations,國際學習表徵會議)
- 研究進展:
這篇論文提出了一種新的訓練生成對抗網絡的算法(SD-GANs),來共同窗習包括身份和觀察兩方面的潛在含義。該算法具備成對訓練方案,其中來自生成器的每一個樣本由具備共同身份代碼的兩個圖像組成。來自真實數據集的相應樣本由同一主題的兩個不一樣照片組成。爲了欺騙鑑別器,生成器必須產生既逼真又清晰的圖像,而且看起來兩張圖像是在描繪同一我的。論文中使用Siamese鑑別器加強了DCGAN和BEGAN方法,以適應成對訓練。人工評判和現成的面部驗證系統的實驗證實了該算法可以生成使人信服的,身份匹配的照片。
論文提出的SD-GANs能夠將那些與同一性相對應的變異因素與其餘因素分開,而且能夠從之前從未見過的身份中取樣,這是傳統GAN所不能作到的。SD-GANs基於已知共性的變異因子分離,爲將來的研究提供了一個好的方向。
- 做者:Paulina Grnarova, Kfir Y Levy, Aurelien Lucchi, Thomas Hofmann, Andreas Krause
- 會議名稱: ICLR 2018(International Conference on Learning Representations,國際學習表徵會議)
- 研究進展:
雖然gans能夠精確地模擬複雜的分佈,但因爲一個困難的極大極小優化問題致使的不穩定性,致使它們很難訓練。 這篇論文將GAN訓練爲在零和遊戲中找到混合策略的問題,基於在線學習的想法,提出了一種名爲Chekhov GAN的新型訓練方法。新型訓練方法與標準GAN訓練相比表現出了更高的性能和穩定性。
這篇論文提出了一種訓練GAN的新型、規範方法,能夠保證收斂到半淺層架構的混合均衡。 根據實驗結果,這種方法在應用於經常使用的GAN架構時具備幾個優勢,例如改進的穩定性或減小模式降低。 這篇文章爲在訓練GAN的背景下使用在線學習和遊戲理論技術開闢了道路, 下一步要考慮的問題是這種方法是否能夠擴展到更復雜的架構。
- 做者:Pengchuan Zhang, Qiang Liu, Dengyong Zhou, Tao Xu, Xiaodong He
- 會議名稱: ICLR 2018(International Conference on Learning Representations,國際學習表徵會議)
- 研究進展:
這篇論文經過嚴格的計算,證實了一個鑑別器集保證在有界連續函數集中其線性跨度密集時是有區別的;而且在不一樣的評估指標下開發了學習分佈和真實分佈之間的泛化界限。當用神經距離進行評估時,界限代表,只要鑑別器集足夠小,不管發生器或假設集的大小如何,均可以保證泛化。當用KL分歧進行評估時,界限提供了關於在GAN訓練中測試可能性的反直覺行爲的解釋,爲理解GANS的實際性能提供了依據。本文研究了神經網絡等帶有參數化判別器類的人工神經網絡的判別和泛化特性,而且指明瞭研究的方向,研究計算神經距離/散度的方法,但願可以將結果擴展到傳統GAN上。
- 做者:Quan Hoang, Tu Dinh Nguyen, Trung Le, Dinh Phung
- 會議名稱: ICLR 2018(International Conference on Learning Representations,國際學習表徵會議)
- 研究進展:
論文提出了一種新的對抗性模型來解決生成對抗網絡中模式崩潰的問題,使用多個分佈的混合來近似數據分佈,其中每一個分佈分別捕獲數據模式的子集。經過一個由一個鑑別器、一個分類器和多個生成器組成的極大極小博弈,來構造一個優化問題,使pdata和pmodel之間的JSD最小化,即由生成器引發的分佈的混合,同時使這些生成器分佈之間的JSD最大化。這有助於模型生成不一樣的圖像以更好地覆蓋數據模式,從而有效地避免模式崩潰。論文將這種模型稱爲混合生成對抗網絡MGAN(Mixture Generative Adversarial Network ),MGAN能夠經過在其鑑別器和分類器之間以及在其生成器之間共享參數來進行有效的訓練,所以能夠擴展到實際的大規模數據集上進行評估。論文提出的MGAN是一種比較好的對抗生成網絡模型。
參考資料