最近 B 站刷到最有用的資源,作者廣泛閱讀大量論文、將重要模型架構拆解成模組,每個模組附上講解甚至改善的思路,再加上精簡的 PyTorch 源始碼,只賣 199 人民幣,正適合我小白入門,反正我是買了 :P 對岸研究生真的捲到爆炸 orz
星期三, 3月 26, 2025
星期三, 3月 12, 2025
再戰 Stable diffusion
一直有小夢想,就是可以無限產出 Saber 老婆的圖,但畫工太廢,無法實現,就擱著了,直到後來注意到 Stable Diffusion。
最近寫 paper 不順利,把 SD 拿來折騰(被 desk reject 後更有動力:P)。一開始用家中 AMD 6650XT 出圖。SD 有 DirectML fork 支援 Windows + AMD GPU。但使用體驗非常不好。一開始是折騰 Python 環境,Python 太新特定套件會缺 wheel 要求 compile 但 compile 又不過,後來降版本搞定。但成功執行 AUTOMATIC1111 只是陷入更多坑。UI 報錯 tensor 算出 NaN,改參數。Inpaint 重繪全部都是 noise 但又沒報錯,原來是 AMD GPU 的鍋,要改參數繞過某些最佳化。通通弄好了,出圖很慢半分鐘以上一張,8G VRAM 經常 out of memory,網路很慢抓 model 抓 ControlNet 很不方便,AMD GPU 小眾問題常常查不到答案...放棄。
後來想到用 VPS + GPU 租賃,作法是 Linode 開 instance,裝好 SD 後先用 CPU 執行,叫出 UI 後手動裝想要的 extension 再 wget 所有想要的模型。然後 git commit 整個 container,再換到 GPU instance。 一開始用 vast.ai,但 vast.ai 的 log 不清楚,debug 失敗,轉到 runpod。runpod 折騰一番後,最後改出有 sshd + SD + 預載模型可以順利執行的 50 G image,順利在 runpod 上啟動 ssh + SD。一切弄好後,再回便宜的 vast.ai 也順利搞定。用 4090 出圖,一張十幾秒,還可以一次出多張圖,24G VRAM 大幅減少 OOM,用 NV GPU 少掉很多怪問題,出問題也容易找答案,一切絲滑流暢,vast.ai 上還只要 $0.3/hr,AMD GPU 那什麼東西 XD
稍微吐槽 runpod 官方文件,ssh 的部份寫的花里胡俏,結果實際上只是把 container 的 port forward 出去,sshd 的行為是 docker image 決定,跟官方文件中的說明沒半毛錢關係,純屬誤導。Vast.ai 同理,只要 docker 啟動能正確執行 sshd,vast.ai 唯一要注意的就是開 port,啟動成功後本地端 ssh tunnel 就能打開 SD UI。
太久沒弄 docker,很多東西變不熟,中間還鬧出在 alpine-based 的 image 執行 apt-get 的笑話。不過現在都弄好了,只要花點時間學 SD,無限 Saber 老婆不再遙不可及。
最後,數學真是美(?)原來美麗和 latent space、manifold hypothesis 有關係。看來偶是數學學不好才不會畫圖(?)
星期一, 3月 03, 2025
連假送出論文
燃燒連假奮鬥,終於把膨脹到 49 頁的打錯邊研究 manuscript 送出,想說造成期刊心理創傷的效果應該會比前一份 3x 頁的稿子更好。
結果是我太天真了,看了教學影片,照著操作期刊系統把稿件送出,結果最後出現 server dump 我的 submission 啪的一聲沒了,心態先被搞崩的是我不是期刊社,小丑竟是我自己,永遠不要小看其他人的道理果然是對的(?)
所幸通訊作者還在 LINE 上,看來通訊作者的單位頗為精實,聯絡之後發現他能正確看到稿件,就繼續跑完後續流程。最後才發現,造成 server dump 的可能是我沒有填寫「Optional」的 twitter 帳號欄位,給了 twitter 帳號再送出就沒有 dump 了,這年頭還有人用 server dump 跟別人要推特帳號的,真是奇特。
最後期刊網頁還問我要不要選 Open Access,只要 3400+ 鎂好便宜的。看了下創新度大概 epsilon/2 的應用類文章,再看期刊的其他文章,還是果斷了選擇 Open Access 保命,雖然期刊聲稱不影響 accept,但還是加減搏一下。
接下來就看看會不會 48hr 內收到 desk reject。
全文連結星期三, 2月 26, 2025
Stable Diffusion AMD inpaint 問題
這幾天初步可以用 SD 跑圖出來了,但是 inpaint 一直失敗,不管怎麼調選項,只會產生 noise 或是模型出現 NaN 然後推理失敗。Google 了很多答案,連 PyTorch 降版本都試過 N 次,中間遇過 DirectML 初始化失敗等離奇的 bug,最後是改選項解決:
--use-directml --lowvram --no-half --precision full --no-half-vae --opt-sub-quad-attention --opt-split-attention-v1
另外的問題就是 Adblock 會干擾到 inpaint 的 mask,記得關掉就沒事了。
全文連結星期四, 2月 20, 2025
Stable Diffusion 安裝成功
寫 paper 寫到自閉,昨天試著入坑 Stable Diffusion、無限自製 Saber 老婆實在太香了,目前進度只有到安裝,由於用的是 AMD 6650XT,所以沒辦法像 N 卡一樣一帆風順,我不想用 CPU 出圖,花了很久總算讓 GPU 出圖跑起來,折騰出第一張圖,很丑就沒存了。
我從 AUTOMATIC1111 的 Stable Diffusion UI 直接入手。參考這篇。其實安裝指令就一行:
git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml && cd stable-diffusion-webui-directml && git submodule init && git submodule update
但安裝好後,我的 AMD 6650XT 需要加 --use-directml --medvram 才能用。然而加了 --use-directml 以後就要另外安裝另一堆依賴,然後就在 scikit-image 上卡住無法安裝,後來發現問題出在我用 WinPython 的 Python 3.12 沒有對應的 wheel,只能本地編譯,但我裝了 VS studio 還是無法編譯成功,所以最後降版到 WinPython 3.10 再重新裝一次,就有現成的 wheel 東西就能動了。
現在試著裝動漫人物的 model 和 lora,結果 SD 又提示我要自動下載 open clip 10.2GB model 最快也要明天抓好,只能明天再測試了。
全文連結
星期一, 2月 17, 2025
換新手機 Google Pixel 9 Pro XL
查了下部落格,S20FE 也用超過三年了,螢幕早就有輕微(?)烙印,右上角只要切到黑畫面就能看到淡淡的 100% 數字,除此之外其他功能良好,手機卡頓不明顯,如果父母沒換新機,應該會繼續沿用下去 XD
換了新機,花了時間備份、轉移 App 和資料,直觀感受是滑起來超順,新的手勢操作不習慣,還是改回傳統三個按鈕,老人不想學習了。Pixel 照相超棒,不過用 Open camera 沒辦法用廣角,只好換回原廠相機 App,還好原廠相機支援關閉快門聲,不然就要傷腦筋。然後今天 PCHOME 訂來的 UAG 軍規防撞殼和鏡頭玻璃貼到貨,就把原本的殼換掉,相機玻璃貼貼上,手機成為完全體,應該又能用上幾年 XD 全文連結
星期一, 2月 03, 2025
Youtube 遊戲頻道:柴丸
最近把塵封已久的文明帝國六白金版拿出來玩,不愧精神時光屋之名,一局難度六超大地圖花了 20+ 小時,中間刷了 N 次地圖。對第六代完全不熟,信仰存了一陣子才發現這代大先知不是靠信仰。然後別人射火箭沒有明顯通知,開科技勝利條件才知道別人火星探險隊都已經走過半路了,好險自己主城 + 打下 AI 主城雙太空中心雙噴太空競賽建築,最後關頭驚險逆轉,勉強 400+ 回合拿下超慢的科技勝利。
打過這盤後就開始找影片學習。這代很多機制大改,例如獨立區域還要講究建築學,才能取得最大收益。連結的「柴丸」頻道就是無意間找到的,我看到建築學影片讓工業區爆發 +50 生產力收益大為讚賞,點進頻道看發現是文明學家,果斷收藏 XD