Stable Diffusion -- 訓練LoRA(四)

閱讀時間約 7 分鐘
不是狼虎也不是野鹿,為何我們要在荒野上流浪?

前言

接續上一篇: Stable Diffusion -- 訓練LoRA(三) ,我們開始用準備好的訓練素材圖跟規範圖來烘焙我們的LoRA。

訓練

我們開始使用另一個Colab頁面來執行真正的訓練步驟:
這個版本的Colab訓練頁面多了一些與規範圖相關的功能,在執行訓練前,我們要來指定素材圖與規範圖擺放的目錄。
先往下捲動到Extras區,找到Multiple folders in dataset這個區塊,將裡面的數值改成這樣:
custom_dataset = """
[[datasets]]

[[datasets.subsets]]
image_dir = "/content/drive/MyDrive/Loras/{專案目錄名}/dataset"
num_repeats = 10

[[datasets.subsets]]
image_dir = "/content/drive/MyDrive/Loras/{規範圖目錄名}/dataset"
is_reg = true
num_repeats = 1

"""
在這裡,專案目錄名就是你擺放的素材圖的地方,以我為例,就是XingBar30。
接著的num_repeats是每個素材圖會被訓練的次數,通常是總圖數乘上本數值要等於300到400。因為我的素材總共有30張,所以我選擇10這個數字,這樣每回合就會被訓練300次。
規範圖目錄名則是你放置規範圖的目錄,在本例中我將男性圖片的規範圖放在Man這個目錄底下。
要注意的是,is_reg = true一定要放在規範圖這一小節的地方,否則訓練程式會認不出來,這樣訓練出來的LoRA會完全做不出你要的角色。
通通設定完之後就可以執行這個小節的程式。
按下執行鈕,改變設定
這格執行完之後,我們就可以開始在Setup小節填入其他資料了。
project_name這邊填入專案目錄名,例如XingBar30。
training_model目前有三個選項,如果是動漫傾向的角色,可以用Anime這個模型,否則用AnyLoRA就好。以我個人三種都試過的經驗,影響似乎不大。
Setup小節
在Step步驟,我只有改變how_many到20或30回合。這樣可以得到品質更好的成果。
總訓練步數的計算方法是:
素材圖張數 X 每張訓練次數 X 總回合數。
以我的例子就是 30 X 10 X 30 = 9000。
Step小節
最後是AI訓練參數,這邊作者有特別提到不同類型的模型需要不同的參數,我們訓練的LoRA的推薦參數是:
network_dim: 32
network_alpha: 16
其他則保持原樣。
Structure小節
一切都設定好之後,就可以按下執行,開始訓練LoRA了!
開始訓練!
在執行紀錄裡面,請一定要確認Multiple folders in dataset裡面的設定有正確執行,你可以看到類似這樣的紀錄跑出來:
設定正確的話會跑出這個紀錄文字
以我個人的經驗,Colab的GPU一個小時可以跑大約6000步,所以一個9000步的LoRA訓練可以在一個半小時之內跑完。
由於我時常使用Colab來跑這些東西,所以索性買了Colab的點數,通常訓練LoRA的時候,一個小時消耗2個點數,也就是說10美金的Colab點數100點,可以讓我們訓練50小時,算是蠻實惠的。
跑出最後的連結就是成功了!
訓練出來的LoRA檔案,就在雲端硬碟的output目錄下,點下Done連結會自動打開該目錄,讓你可以下載。

常見錯誤

訓練最常出錯的地方,是沒有把素材圖跟規範圖放到正確的目錄下,使得程式找不到圖而停止。要是程式很快就停止了,請在Colab左側的欄位上點開檔案目錄,查看自己的檔案結構是不是類似這樣:
程式預期的檔案目錄結構

驗證

LoRA訓練完成之後,下載下來到/models/Lora/目錄,重開Automatic1111,在Lora標籤下按下Refresh,應該就能看到自己訓練的LoRA了。
要驗證自己的LoRA有沒有用,最簡單的就是用較低的權重直接產生一張圖,比較一下自己的素材圖,如果不像的話,試著調高權重到0.7再試試,如果還是不像,那就是訓練失敗了。
左邊是素材圖,右邊是LoRA產生的圖。臉型,髮色,髮型是符合的
當確認LoRA有成功之後,接下來就要來比較同一角色不同版本的LoRA的成效,通常我們會使用X/Y/Z plot來做全面的比對。X/Y/Z plot的詳細用法請參考:
我最常用:
X軸:各種動作
Y軸:幾個常用的模型
Z軸:兩個不同版本的LoRA使用同樣的權重
比較不同的版本LoRA,來確定新版本更合你意。
新舊版的LoRA比較
確認了新版本LoRA表現更佳之後,就可以繼續用X/Y/Z plot來深入探究在各種模型上,最好的權重是多少,每個模型最適合的權重都有些不一樣,品質好的LoRA可以在高權重時,在不同模型上依舊產生特徵一樣的角色,而且同時不摧毀原模型的畫質
用相同動作,相同模型組,不同權重的比較
在這邊,如果各種驗證步驟都沒有出什麼大問題,恭喜你,你已經烘焙好一個高品質,穩定的角色LoRA了!

結語

訓練LoRA是很吃耐心跟細心的,很多時候,就是素材圖或規範圖的圖樣不一致,或者素材的文字檔忘了刪除某些提示詞,於是角色特徵沒有正確融入這個LoRA,一切就要從頭再訓練。但是當你正確產生了第一個高品質LoRA之後,依照同樣的步驟,就能一遍又一遍將你夢想中的角色製作出來,用在任何模型上!這種成就感是非常讓人滿足的。
歡迎來到LoRA的世界!
祝大家算圖愉快!

LoRA目錄:
即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
avatar-img
21.9K會員
380內容數
寫奇幻小說,畫圖,心得,各式各樣作品的故鄉。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
如何完全靠雲端運算,簡單產生高品質,穩定的角色LoRA,讓AI繪圖能在不同模型下產生一致的人物。上集。
這個方法主要是借用Google Colab的威力。 這次要介紹的LoRA訓練法,特別適用於下列對象: nVidia顯卡不夠高級,跑不動訓練程序 根本不是nVidia顯卡的使用者,Stable Diffusion的訓練程序不支援 不想花錢花電力花顯卡時間訓練
本文教導你如何準備LoRA訓練的素材與選擇合適的提示詞。
奮戰整整三天,終於可以讓妳在任何模組上出現,這感覺真好。😊 來說說為何使用LoRA,還有它的一些特性。
如何完全靠雲端運算,簡單產生高品質,穩定的角色LoRA,讓AI繪圖能在不同模型下產生一致的人物。上集。
這個方法主要是借用Google Colab的威力。 這次要介紹的LoRA訓練法,特別適用於下列對象: nVidia顯卡不夠高級,跑不動訓練程序 根本不是nVidia顯卡的使用者,Stable Diffusion的訓練程序不支援 不想花錢花電力花顯卡時間訓練
本文教導你如何準備LoRA訓練的素材與選擇合適的提示詞。
奮戰整整三天,終於可以讓妳在任何模組上出現,這感覺真好。😊 來說說為何使用LoRA,還有它的一些特性。
你可能也想看
Google News 追蹤
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
本系列將討論 LLM 時代中,分散 ML workload 的各種方法。作為系列的第一篇,我們將提及 High-level 的概論,譬如分散式訓練的各種切法、Model Parallelism 的相依問題,以及改善 Network Topology 等課題。
Thumbnail
本篇文章介紹如何使用PyTorch構建和訓練圖神經網絡(GNN),並使用Cora資料集進行節點分類任務。通過模型架構的逐步優化,包括引入批量標準化和獨立的消息傳遞層,調整Dropout和聚合函數,顯著提高了模型的分類準確率。實驗結果表明,經過優化的GNN模型在處理圖結構數據具有強大的性能和應用潛力。
Thumbnail
呈上篇介紹如何訓練模型,此篇就主要介紹如何利用訓練好的模型來生成圖片 [深度學習][Python]DCGAN訓練生成手寫阿拉伯數字_生成篇 生成的結果 生成的圖片大小會根據,當初設置的生成器輸出大小來決定,當你使用生成對抗網絡(GAN)生成圖像時,生成器模型的最後一層通常會決定生成圖
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧我們在AI說書 - 從0開始 - 7,已經完成Colab Python環境配置。 針對Attention Layer的程式配置為: start_time =
Thumbnail
試著去訓練 LoRA 幾次後,發現一些有趣的問題... ㄜ~技術問題後面再說好了,先分享最近訓練的 LoRA YunQiuWaterColor ​一個類似水彩畫風的 LoRA。 以下來欣賞幾張圖片吧!
Thumbnail
在第一篇我講到一開始的圖像風格轉換,每產生一張圖片都得重新訓練,這對於使用上難免綁手綁腳,所以理所當然的下一步就是要解決這個問題,看看能不能只要訓練一次,就可以重複使用。
Thumbnail
最近在試著用 Tensor Art 訓練 LoRA,老實說,成功率...不太高,或許是我挑選訓練圖片的問題。 但訓練出來,可以給別人用(雖然根本也就是我自己用),就感覺蠻有意思的! 最近,又訓練了一個亂塗鴉的 LoRA(YunQiuLineArt01),我覺得還蠻有趣的,分享給您。
Thumbnail
大叔最近在研究如何使用 TensorArt 來訓練自己的 LoRA 模型,昨晚終於測試成功了,太令人感動了,有興趣的話,請您也來試試大叔的手繪風格 LoRA YunQiuStyleColor 吧!
Thumbnail
紐約時報報導,OpenAI使用了自家的Whisper 轉錄 100 萬個小時的 YouTube 影片作為訓練模型資料。Meta正在討論即使被起訴,也要使用受版權保護的作品來作為模型訓練資料。幾大模型開發者目前都同樣遭遇了「優質訓練資料」不足的困近的困境,而必須走入灰色地帶來支持模型的開發。
Thumbnail
參加Leetcode的30 Days of Pandas挑戰,除了是學習的機會,更是練習熟悉pandas功能的機會。文章分享了挑戰簡介、題目描述、關鍵技術以及參加挑戰的心得。適合新手學習pandas,也可提升熟練度。
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
本系列將討論 LLM 時代中,分散 ML workload 的各種方法。作為系列的第一篇,我們將提及 High-level 的概論,譬如分散式訓練的各種切法、Model Parallelism 的相依問題,以及改善 Network Topology 等課題。
Thumbnail
本篇文章介紹如何使用PyTorch構建和訓練圖神經網絡(GNN),並使用Cora資料集進行節點分類任務。通過模型架構的逐步優化,包括引入批量標準化和獨立的消息傳遞層,調整Dropout和聚合函數,顯著提高了模型的分類準確率。實驗結果表明,經過優化的GNN模型在處理圖結構數據具有強大的性能和應用潛力。
Thumbnail
呈上篇介紹如何訓練模型,此篇就主要介紹如何利用訓練好的模型來生成圖片 [深度學習][Python]DCGAN訓練生成手寫阿拉伯數字_生成篇 生成的結果 生成的圖片大小會根據,當初設置的生成器輸出大小來決定,當你使用生成對抗網絡(GAN)生成圖像時,生成器模型的最後一層通常會決定生成圖
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧我們在AI說書 - 從0開始 - 7,已經完成Colab Python環境配置。 針對Attention Layer的程式配置為: start_time =
Thumbnail
試著去訓練 LoRA 幾次後,發現一些有趣的問題... ㄜ~技術問題後面再說好了,先分享最近訓練的 LoRA YunQiuWaterColor ​一個類似水彩畫風的 LoRA。 以下來欣賞幾張圖片吧!
Thumbnail
在第一篇我講到一開始的圖像風格轉換,每產生一張圖片都得重新訓練,這對於使用上難免綁手綁腳,所以理所當然的下一步就是要解決這個問題,看看能不能只要訓練一次,就可以重複使用。
Thumbnail
最近在試著用 Tensor Art 訓練 LoRA,老實說,成功率...不太高,或許是我挑選訓練圖片的問題。 但訓練出來,可以給別人用(雖然根本也就是我自己用),就感覺蠻有意思的! 最近,又訓練了一個亂塗鴉的 LoRA(YunQiuLineArt01),我覺得還蠻有趣的,分享給您。
Thumbnail
大叔最近在研究如何使用 TensorArt 來訓練自己的 LoRA 模型,昨晚終於測試成功了,太令人感動了,有興趣的話,請您也來試試大叔的手繪風格 LoRA YunQiuStyleColor 吧!
Thumbnail
紐約時報報導,OpenAI使用了自家的Whisper 轉錄 100 萬個小時的 YouTube 影片作為訓練模型資料。Meta正在討論即使被起訴,也要使用受版權保護的作品來作為模型訓練資料。幾大模型開發者目前都同樣遭遇了「優質訓練資料」不足的困近的困境,而必須走入灰色地帶來支持模型的開發。
Thumbnail
參加Leetcode的30 Days of Pandas挑戰,除了是學習的機會,更是練習熟悉pandas功能的機會。文章分享了挑戰簡介、題目描述、關鍵技術以及參加挑戰的心得。適合新手學習pandas,也可提升熟練度。