細心的同學會發現Intellij IDEA每次發版本的時候都會有不同的啟動界面背景,都很比較抽象的藝術圖像。

JetBrains的其它產品也有自己獨特的設計。
但是這背后是怎么實現的、有什么寓意卻很少有人知道。今天讓胖哥來帶你解開這個答案。
編碼的藝術
編碼是一門藝術。說到這里你會很容易想到這肯定是利用編程實現的。是的,這里的圖像生成器技術用了到機器學習中的神經網絡技術。這些生成的圖像本質上是前饋神經網絡映射函數描繪的!基於傳遞給網絡的確切數據,加上一些預設的生成算法(遺傳算法),讓這些圖片看上去很“順眼”。目前JetBrains提供了可視生成器,你可以根據自己的喜好來生成桌面背景。
神經網絡圖片生成體驗
只需訪問Desktop Art頁面或直接轉到code2art.jetbrains.com,就可以自己設計上述風格的桌面。打開后在在下拉列表中選擇IntelliJ IDEA或MPS之類的產品后,只需單擊Prescribed按鈕,它將以該產品的所有動畫效果創建初始屏幕。

選擇Mixer,稍等片刻我們可以看到9張不同的圖像,每個圖像都是由神經網絡分別生成的。 你可以在其中混合隨意的想法,調整色彩,選取目標,並根據你自己的設定創作出反映內在自我的藝術色彩。
如果這9張圖像都不符合您的口味,你可以點擊Regenerate獲取9張新的新圖像,這些圖像在某種程度上都與以前的圖像有所不同。如果您已經喜歡某些現有圖像,你可以點擊選中它們,然后按Crossbreed按鈕將選中的圖像混合生成一些新圖像,重復多次,直到找到理想的圖像。通過其它一些選項,你可以導出靜態圖片、動圖甚至MP4視頻。

技術細節
從技術上講,該圖片生成器的服務器端分為幾個部分:
- 使用TensorFlow構建的基於神經網絡的圖像生成引擎。
- 視頻渲染引擎,可從圖像生成視頻。
- 場景存儲服務。
- 任務隊列,用於在服務器組件之間分配CPU和GPU密集型計算任務。
- 混合器Mixer–通過遺傳算法演化生成圖像的工具。
- 在Mixer模式和圖像生成引擎之上還建立了另一個神經網絡,該神經網絡可以匯總用戶的偏好來預測哪些圖像更可能是美麗的,這也是神經網絡能夠越來越了解人類喜好的根本。
有興趣的可以了解一下。
有時候不得不感嘆一下一些偉大的產品的設計思維都是具有創造性和藝術性的,什么時候我們中國的程序員能有這種外部環境,沒有KPI,沒有996,什么時候我們才能做出偉大的產品。
關注公眾號:Felordcn 獲取更多資訊
