七個不容易被發現的生成對抗網路(GAN)用例

2021-08-30 13:17:53 字數 3310 閱讀 4578

像許多追隨ai發展的人一樣,我無法忽略生成建模的最新進展,尤其是影象生成中生成對抗網路(gan)的巨大成功。看看下面這些樣本:它們與真實**幾乎沒有區別!

從2023年到2023年,面部生成的進展也非常顯著。

這些結果讓我感到興奮,但我內心總是懷疑它們是否真的有用且廣泛適用。基本上我「懷疑」,憑藉生成模型的所有功能,我們並沒有真正將它們用於比高解析度面部表情生成這些更實用的東西。當然,有些企業可以直接基於影象生成或風格轉移(如遊戲行業中的角色生成或關卡生成,從真實**到動漫頭像的風格轉換),但我一直在尋找gan和其他生成方式更多領域模型的應用。我想通過生成模型,我們不僅可以生成影象,還可以生成文字、聲音、**、結構化資料,如遊戲關卡或藥物分子。

在本文中,我將介紹7個用例。其中一些我已經親自確認它們的用處,其他一些正在研究中,但這並不意味著它們不值得嘗試。所有這些使用生成模型建立的例子都可以應用於不同的領域,因為我們的主要目標不是生成一些現實的東西,而是利用神經網路的內在知識來完成新任務。

最明顯的應用是訓練模型:從我們的資料生成新樣本以增強我們的資料集。我們如何檢查這種增強是否真的有幫助呢?有兩個主要策略:我們可以在「假」資料上訓練我們的模型,並檢查它在真實樣本上的表現。對應的我們在實際資料上訓練我們的模型來做一些分類任務,並且檢查它對生成的資料的執**況。如果它在兩種情況下都能正常工作,你可以隨意將生成模型中的樣本新增到你的實際資料中並再次重新訓練,你應該期望獲得效能。

nvidia展示了這種方法的驚人例項:他們使用gan來增加具有不同疾病的醫學腦ct影象的資料集,並且表明僅使用經典資料的分類效能是78.6%的靈敏度和88.4%的特異性。通過新增合成資料增強,可以增加到85.7%的靈敏度和92.4%的特異性。

更困難的情況是我們想要秘密共享資料。當然,我們有不同的加密方案,如同態加密,但它們有已知的缺點,例如在10gb**中隱藏1mb資訊。2023年,谷歌開闢了一條關於使用gan競爭框架加密問題的新研究路徑,其中兩個網路必須競爭建立**並破解它:

但最好的結果不是獲得的**效率,我們應該記住,通過神經網路獲得的表示通常包含有關輸入資料的最有用的資訊,並且從這個壓縮資料我們仍然可以進行分類/回歸/聚類。如果我們將「壓縮」替換為「加密」,那麼這個想法很明確:這是與第三方共享資料而不顯示任何資料集的驚人方式。它比匿名甚至假樣本生成強得多,可能是下一件大事(當然使用區塊鏈)

變分自動編碼器(vae)或gan等主要生成模型由兩部分組成。vae具有編碼器和解碼器,其中第乙個對分布進行建模,第二個重建。gan由生成器和鑑別器組成,第乙個模擬分布,第二個判斷它是否接近訓練資料。我們可以看到,它們在某種程度上非常相似:有建模和判斷部分(在vae中我們可以考慮將重建視為某種判斷),建模部分應該學習資料分布。如果我們將一些不是來自訓練樣本分發,那麼判斷部分將會發生什麼?訓練有素的gan鑑別器會告訴我們0,並且vae的重建誤差將高於訓練資料的平均值。這就是我們接下來要說的:無監督異常探測器,它易於訓練和評估。在本文中你可以找到例子是用於異常檢測,這裡可以找到自動編碼的。我還新增了自己的基於自動編碼器的粗略草圖——用於在keras中編寫的時間序列。

深度學習所做的一切都是將輸入資料對映到某個空間,在這個空間中,通過svm或邏輯回歸等簡單的數學模型可以更容易地分離或解釋。生成模型也有自己的對映,我們從vae開始。autoencoders將輸入樣本對映到一些有意義的潛在空間,基本上我們可以直接訓練一些模型。它有意義嗎?它是否與僅使用編碼器層和訓練模型直接進行分類有所不同?確實是。自動編碼器的潛在空間是複雜的非線性降維,並且在變分自動編碼器的情況下也是多變數分布,這可以比一些隨機初始化更好地開始訓練判別模型。

gan對於其他任務來說有點難度。它們被設計為從隨機種子生成樣本,並且不期望任何輸入。但我們仍然可以至少以兩種方式利用它們作為分類器,第乙個已經研究過的,就是利用鑑別器將生成的樣本分類到不同的類別,同時只是告訴它是真的還是假的。我們可以期望從獲得的分類器更好地規則化(因為它已經看到不同型別的雜訊和輸入資料的擾動)並且具有用於異常值/異常的額外類:

我認為,這是最強大的用處之一。在實踐中,我們幾乎從未擁有相同的資料來源來訓練模型並在現實世界環境中執行它們。在計算機視覺中,不同的光線條件、相機設定或天氣可以使非常準確的模型變得無用。在nlp/語音分析中,俚語或重音會破壞你在「語法正確」上訓練的模型的表現。在訊號處理中,你很可能擁有完全不同的裝置來捕獲資料以訓練模型和生產。我們知道機器學習模型執行是從乙個條件到另乙個條件的對映,保留主要內容,但要更改細節。

例如,如果你正在處理應該在某種cctv攝像機上工作的應用程式,但是你已經在高解析度影象上訓練了你的模型,那麼你可以嘗試使用gan來對影象進行去噪處理並對其進行增強。我可以從訊號處理領域提供更激進的例子:有很多與手機加速度計資料相關的資料集,描述了不同的人的活動。但是,如果你想在腕帶上應用受過手機資料訓練的模型,該怎麼辦?gan可以嘗試幫助你還原不同型別的動作。一般來說,生成模型不是從雜訊中進行生成,而是一些預定義的先驗模型可以幫助你進行域遷移,協方差轉換以及與資料差異相關的其他問題。

你可能不同意我新增關於機器學習模型攻擊的文字,但它對生成模型(對抗性攻擊演算法確實非常簡單)和對抗性演算法影響很大。也許你熟悉對抗性例子的概念:模型輸入中的小擾動(甚至可能是影象中的乙個畫素)導致完全錯誤的效能。其中乙個最基本的方法叫做對抗性訓練:基本上是利用對抗性的例子來構建更準確的模型。

如果不深入細節,這意味著我們需要雙人遊戲:對抗模型需要最大化其影響力,並且存在需要最小化其損失的分類模型。看起來很像gan,但出於不同的目的:使模型對對抗性攻擊更穩定,並通過某種智慧型資料增強和正規化提高其效能。

在本文中,我們已經介紹了幾個例子,說明gan和其他一些生成模型如何用於生成漂亮的影象,旋律或短文本。當然,他們的主要長期目標是生成以正確情況為條件的真實世界物件,但今天我們可以利用他們的分布建模和學習有用的表示來改進我們當前的ai、保護我們的資料、發現異常或適應更多現實世界的案例。我希望你會發現它們很有用,並將適用於你的專案。

企業資訊化實施時不容易被發現的重點

很多同行傾訴企業實施erp 後遭遇的種種不幸,甚至抱怨顧問團隊的不負責和質疑erp所能帶來的價值,不上erp等死 上erp找死 仍不絕於耳。erp到底有沒有實用價值 所有做大做強的企業都在對企業的資源進行整合,而資源整合後帶來的管理水平 業務效率 響應速度等大幅度提公升也直接證明erp 核心理念的價...

網路程式設計錯過很多次,而且不容易發現的原因

m ipaddress unsigned long makeipaddress ipaddress0,ipaddress1,ipaddress2,ipaddress3 m ipaddress unsigned long makeipaddress ipaddress3,ipaddress2,ipad...

找乙個好的grid元件不容易

web開發離不開grid,乙個功能豐富的grid需要支援排序,分頁,自定義列,列寬度可調等功能,需要ajax支援。如果把所有這些功能都集中在一起,那麼我要用這個grid外掛程式就要引入乙個比較大的js檔案和其自帶的css檔案。大的js檔案會導致頁面載入變慢。google了半天,始終沒有找到乙個比較合...