天天看點

在浏覽器裡跑擴散模型

一直對Stable Diffusion背後的原理很好奇,抽空研究學習了下DDPM模型。這幾天終于了解透徹了,随手做了個在浏覽器中跑的擴散模型,示範連結在後面。

4070TI顯示卡花了幾個小時學習了10000多張美少女卡通頭像。模型大小有240M,即使用uint8量化後也有60M。示範網頁會将該模型下載下傳到浏覽器用戶端後開始運算。示範網站托管于GitHub Pages, 由于衆所周知的原因,可能需要梯子才能順利打開。在浏覽器中推理會依賴WebGL層調用GPU,如果是手機就放棄吧,跑不動的。

DDPM被人诟病的在于它漫長的推理速度,我設定的step為300 cosine插值,勉勉強強。試過DPM Solver加速,可以在25步左右快速輸出,但是~30%左右的圖檔品質下降嚴重, 1-3階都試了,皆是如此。看了下Score matching,涉及到朗之萬動力學,直接勸退。是以還是試下DDIM?還有其它變種或者改良可選嗎?

在浏覽器裡跑擴散模型

源碼位址:https://github.com/wangjia184/diffusion_model

線上示範:https://wangjia184.github.io/diffusion_model 【模型大小60M, 由于衆所周知的原因,可能需要梯子才能加載完成打開】