GAN初創者另有其人?IanGoodfellow:只是純策略版本

机器之心發表於2019-05-13
眾所周知,生成對抗網路(GAN)是由Ian Goodfellow 於2014年提出的。但是,一篇reddit熱帖披露早在2010年OlliNiemitalo即提出了同樣的概念。Goodfellow回應道:沒有提到隨機 z 向量,只是純策略版本。

GAN深度學習領域非常火爆的研究主題,大家普遍認為它最早是由Ian Goodfellow 於2014年提出的。當然,也存在異議,比如 LSTM 之父 Jurgen Schmidhuber 就認為 GAN 是其1992年提出的PM模型的變體,甚至在 NIPS 2016會議上與 Ian Goodfellow 直接互懟,引發了熱議。

而今天,reddit上一個熱門帖子又將「GAN是由誰首創」這個話題引爆,這篇帖子披露2010年即有人提出了GAN,與2014年Goodfellow提出的GAN思想幾乎沒有差別。這到底是怎麼回事呢?

我們先從Olli Niemitalo 2010年2月釋出的一篇帖子說起。

2010 年 OlliNiemitalo 提出的思想

Olli Niemitalo目前居住在芬蘭赫爾辛基,主要研究訊號/影像/影片處理,他在Signal Processing Stack Exchange問答網站上回答了大量問題。

個人主頁:http://yehar.com/blog/

2010年,他釋出了一篇帖子,提出了一種新思想:

這裡介紹一種訓練神經網路來生成可變上下文缺失資料的方法。這種方法很難用一句話講清楚,所以下面我將舉個例子: 

一張影像中可能會有缺失的畫素(例如有汙漬)。那麼在知道周圍畫素的情況下,該如何修復汙漬下的缺失畫素呢?一種方法是用“生成器”神經網路,該網路將缺失畫素周圍的畫素作為輸入,生成缺失的畫素。

但如何訓練這樣的網路呢?不要期待該網路能夠準確生成缺失的畫素。假設缺失的資料是一片草地,你可以讓網路學習一堆缺失了一部分的草坪影像。你知道缺失的資料,然後可以根據生成草地和原始資料之間的均方根誤差(RMSD)給網路打分。

問題是,如果生成器遇到的影像不屬於訓練集,那神經網路就不可能把所有的葉子(尤其是影像塊中間的葉子)準確地放在缺失位置。最低RMSD誤差可能透過網路用純色填補影像塊的中間區域來實現,該純色取的是典型草地影像中畫素顏色的平均值。如果網路生成的草地能夠騙過人類,那它就達到了目的,而RMSD度量將會有一個不幸的懲罰。

我的想法如下圖所示:與生成器同時訓練一個分類器網路,以隨機或交替順序向該網路輸入生成資料和原始資料。然後,分類器根據周圍影像的語境猜測該輸入是原始資料 (1) 或生成資料 (0)。同時,生成器網路嘗試從分類器中獲得高分 (1)。

希望的結果是,這兩個網路開始都比較簡單,然後朝著生成和識別越來越高階的特徵發展,最後接近甚至超越人類辨別生成資料和原始資料的能力。如果每個分數考慮多個訓練樣本,則*應使用RMSD作為誤差度量*,因為這將鼓勵分類器網路輸出機率。

GAN初創者另有其人?IanGoodfellow:只是純策略版本

Olli提出的架構圖

2014年IanGoodfellow提出的GAN思想

2014年,IanGoodfellow等人釋出論文,提出了新型生成對抗網路GAN,它受啟發於博弈論零和博弈的思想,包含兩個模組:判別模型生成模型,二者不斷博弈,使生成器學習資料分佈。

GAN初創者另有其人?IanGoodfellow:只是純策略版本

Goodfellow提出的GAN架構圖

其中,生成器(Generator)透過隨機噪聲z生成偽造影像。這些偽造影像會和真實影像混在一起,並希望判別器(Discriminator)判斷每張圖片是不是真實的。如果最後判別器無法區分兩種影像,那麼生成器就能達到以假亂真的效果。

生成器和判別器構成一個動態的博弈過程,其最終平衡點就是納什均衡點。

Jurgen Schmidhuber 和 Ian Goodfellow關於GAN的爭論

GAN對深度學習領域的影響很大,各種不同的變體也層出不窮,有研究者建立了GAN Zoo,收集了數百個不同GAN。

GAN Zoo:https://github.com/hindupuravinash/the-gan-zoo

大家普遍認為GAN是由IanGoodfellow提出的,而德國電腦科學家、LSTM之父JurgenSchmidhuber表示異議。

巧合的是,GAN這篇原始論文最初投遞NIPS大會時,Jurgen Schmidhuber正是審稿人之一,並給出了拒稿意見。他認為GAN是他1992年提出的Predictability Minimization(PM)模型的變體,PM模型才是第一個對抗網路,GAN和PM的主要區別僅在於方向相反。

之後,二人進行過一系列郵件討論,然而似乎並沒有取得一致。2016年,在NIPS 2016大會的GAN Tutorial上,Ian Goodfellow進行了一場演講,而Jurgen Schmidhuber在演講現場提問「PM模型與GAN是否有相似之處」。

Ian Goodfellow對此的態度是否定的,他認為GAN並沒有借用PM的思想。

GAN初創者另有其人?IanGoodfellow:只是純策略版本

PM模型架構(圖源:https://zhuanlan.zhihu.com/p/27159510)

Olli Niemitalo對此事的評價

在NIPS 2016上JurgenSchmidhuber與Ian Goodfellow就GAN的話題直接互懟後,Olli Niemitalo也做出了評價:

我在2010年的一篇部落格中發表了關於GAN的基本概念。我當時沒有在網路上搜尋到任何相似的東西,我也沒有時間去實現它。我當時而且現在也不是神經網路領域的研究者,我的專業和該領域無關。

我2000年開始考慮使用神經網路上取樣(重新取樣到更高的取樣頻率)的數字音訊生成缺失的高頻,以令人信服而不是準確的方式。2001年我收集了音訊庫進行訓練,以下是從2006年1月20日開始的EFNet#musicdsp Internet Relay Chat(IRC)日誌的一部分,其中我 (yehar) 與另一個使用者 (_Beta) 討論了這個想法:

GAN初創者另有其人?IanGoodfellow:只是純策略版本

2006年至2010年間的某個時候,朋友邀請了一名專家來看我提出的概念並與我展開討論。他們覺得這個想法很有趣,但認為當一個網路可以完成這項工作時,訓練兩個網路不太划算。

我一直沒有確定他們是否理解了核心思想,還是說立即找到了一種方法將其形式化為單個網路。也許使用拓撲結構中的瓶頸將其一分為二了。

當時我甚至不知道反向傳播仍是實際在用的訓練方法(我在2015年製作Deep Dream影片時才瞭解到)。這些年來,我和多名資料科學家以及其他可能對此感興趣的人討論了我的想法,但反應平平。

2017年5月,我看到了Ian Goodfellow在NIPS 2016 GAN Tutorial上的演講影片,這讓我非常開心。他的基本思想與我的一樣,而且他做了艱苦的研究,實現了很好的結果。該演講回答了我的很多疑問。

當評審者向作者施加壓力,要求其引用自己的研究時,這是一種利益衝突。


Ian Goodfellow回應與網友觀點

在Olli這件事引發熱議之後,IanGoodfellow表達了自己的看法:

GAN初創者另有其人?IanGoodfellow:只是純策略版本

他們似乎沒有正確地理解GAN的概念。這篇文章中沒有提到隨機 z 向量,所以這只是GAN理論的「純策略」版本。你需要 z 才能使“混合策略”起作用,因為有納什均衡。另外,這篇文章最後說RMSD是正確的度量標準。

眾多網友在Reddit上也熱議紛紛,主流觀點仍支援Ian。

網友MasterSama的觀點得到了最多支援:

Olli像其他很多人一樣走在了時代的前面,這些人因為各種原因沒有得到認可。歷史上,乃至我們日常生活中也有很多這樣的例子。總之,我很感激 Ian推廣了這個概念。也許他不是第一個想到這個想法的人,但是如今他以這個聞名。這有什麼問題嗎?事實上,他提出概念並實際致力於使其取得成果才是最重要的。

對於他的評論,以下幾個網友用各種觀點表示了支援。

@whymauri:

是的,我同意這種觀點。我在大學數學課上學到的第一個東西是斯蒂格勒定律(又稱名字命名法則)。該法則認為“沒有科學發現是以其最先發現者的名字而命名的”。事實上,斯蒂格勒定律最初是由社會學家羅伯特·默頓提出的,而不是斯蒂格勒。

@antisnb:

這更是一個教訓,讓我們認識到只有想法是無法轉化為影響力的。想法本身並不會轉化為什麼有價值的東西,除非你努力發展它。

@BoiaDeh:

我覺得這更像是時機不對。有時候想法很棒,但它比能夠實現它的技術領先十年。

@mikolchon: 

在這個例子中,就算作者付出了努力,我懷疑以2010年的硬體水平來看,也未必能實現什麼。 

不知道大家怎麼看?歡迎留言討論~

參考連結:

  • https://web.archive.org/web/20120312111546/http://yehar.com:80/blog/?p=167

  • https://stats.stackexchange.com/questions/251460/were-generative-adversarial-networks-introduced-by-j%C3%BCrgen-schmidhuber/301280#301280

  • https://www.reddit.com/r/MachineLearning/comments/bnqm0p/d_gans_were_invented_in_2010/

相關文章