概要:訓練神經網絡的時候,通常需要定義一個損失函數來告訴網絡它離目標還有多遠。
三年前,蒙特利爾大學 Ian Goodfellow 等學者提出「生成式對抗網絡」(Generative Adversarial Networks,GANs)的概念,并逐漸引起 AI 業內人士的注意。自 2016 年以來,學界、業界對 GAN 的興趣出現「井噴」。近日,谷歌開源 TFGAN 輕量級的工具庫,據悉,其設計初衷是讓訓練和評估 GAN 變得更加簡單。
訓練神經網絡的時候,通常需要定義一個損失函數來告訴網絡它離目標還有多遠。例如,圖像分類網絡中通常會有一個損失函數,一旦給出錯誤的分類就會進行懲罰。如果一個網絡把狗的照片錯當成貓了,那將會出現很高的損失值。
然而,有些問題并不能輕松用損失函數來定義,特別是當它們涉及到人的感知時,比如圖像壓縮或文本轉語音系統。
生成式對抗網絡 (GAN) 這種機器學習技術已經在廣泛的應用領域引導我們取得了進步,包括基于文本生成圖像、超分辨率,以及機器人抓取的解決方案。然而,GAN 在理論和軟件工程上都引入了新的挑戰,想要跟上它這種快速的研究步伐也很難。
為了讓基于 GAN 的實驗更加容易,谷歌選擇開源 TFGAN,這是一個輕量級的庫,設計初衷是讓訓練和評估 GAN 變得簡單。
它提供訓練 GAN 的基礎設施,也提供經過良好測試的損失和評估指標,并包括易于使用的示例,可以看到這個庫極具表達性和靈活性。與此同時,谷歌還發布了一個教程,其中包括能快速基于自己的數據進行模型訓練的高級 API。
上圖展示了對抗損失對圖像壓縮的影響。最上面那行是來自 ImageNet 數據集的圖像 patch。中間展示了用傳統損失訓練的圖像壓縮神經網絡對圖像進行壓縮和解壓縮的結果。底部是用傳統損失和對抗性損失訓練的網絡對圖像進行壓縮和解壓縮的結果。
雖然基于 GAN 損失訓練的圖像比起原圖來,信息還是有所丟失,但比起其他的方法,圖片更加清晰,包含更多細節。
TFGAN 可以從以下幾個方面來支持實驗。
它提供簡單的函數調用功能,能覆蓋大部分的 GAN 用例,因此僅需幾行代碼你就能用自己的數據訓練模型,而且因為是采用模塊化的方式構建,它能覆蓋更特殊的 GAN 設計。
你可以任意使用自己想要的模塊——損失、評估、特征、訓練等模塊,這些都是獨立的。TFGAN 的輕量級設計意味著你可以將它與其他框架或原生 TensorFlow 代碼一起使用。
用 TFGAN 編寫的 GAN 模型很容易從未來基礎設施的改進中受益,你可以從大量已經實現的損失和特征值中進行選擇,而不需要再重寫。
最后,代碼經過了良好的測試,因此你不必擔心使用 GAN 庫時容易出現的數值或統計錯誤。
如上圖,大多數文本轉語音 (TTS) 神經系統產生的頻譜圖都過于平滑。當應用到 Tacotron TTS 系統時,GAN 可以重新創建一些更真實的紋理,這將減少輸出音頻中的人工痕跡。
TFGAN 的開源意味著你將與許多 Google 的研究人員使用的相同的工具,任何人都可以受益于谷歌在庫中最先進的改進。
-
谷歌
+關注
關注
27文章
6168瀏覽量
105371 -
GaN
+關注
關注
19文章
1935瀏覽量
73409 -
tfgan
+關注
關注
0文章
2瀏覽量
1648
原文標題:谷歌開源 TFGAN,讓訓練和評估 GAN 變得更加簡單
文章出處:【微信號:AItists,微信公眾號:人工智能學家】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論