Training LoRA with Kohya (theory included!)
HTML-код
- Опубликовано: 21 июн 2023
- Learn how to train your own LoRA model using Kohya.
In this tutorial, we will build a LoRA model using only a few images. We are going to understand the basic theory behind how neural network works, and will understand how to tweak the key parameters to achieve better results! Hope you enjoy :)
👀 Struggling to run Stable Diffusion locally? You can try DiffusionHub!
🤑Get 20% MORE DiffusionHub CREDIT using the link below or using the promo code LAURA20!
Link: diffusionhub.io?fpr=laura17
💬 Social Media:
[Discord] / discord
[Patreon] patreon.com/IntelligentArt?ut...
[Instagram] / lacarnevali
[TikTok] www.tiktok.com/@lacarnevali?i...
____________________________________________________________________
🤙🏻 Learn More:
/ membership
/ lauracarnevali
📰Article:
/ how-to-fine-tuning-a-m...
📌 Links:
GitHub Kohya: github.com/bmaltais/kohya_ss
CivitAI: civitai.com
00:33 What is a LoRA model
02:06 Build your database
02:48 Training images
04:22 Captioning (BLIP)
09:57 Regularization images
13:10 Choose your base model for training
16:09 Create folders to train the model
21:48 Theory: What is a Neural Network?
23:40 Theory: Batch
24:50 Theory: Epoch
25:20 Theory: Iterations, or Steps, or Repeat
26:00 Theory: Loss Function
26:49 Theory: Learning Rate
27:43 Set the key training parameters
32:12 How to use a LoRA model
#aiart #stablediffusion #generativeart #lora
The reason "l4ura" works better then "laura" ist that the instance prompt should be a unique string. It is my understanding that the model already has an "idea" of "laura" since it has propably been trained with 100.000s of pictures of women (or other "things") called laura or associated with the name laura and mixes those in. So to achieve a highest possible likeness try using a prompt which is unlikely to have been used somewhere else in the dataset. Even "l4ura" might not be quite obscure enough, though i am sure it already works much better. Maybe also add your modified last name in or something more uncommon. This could be special enough to not get mixed up with things the model already "knows". Maybe it does not make a huge difference anymore. But it cant hurt, I guess. :)
Anyway: This is the best Lora-Tutorial I have come across so far and I am only halfway through. Thanks for explaining so thorougly. It helps a lot. :)
Thank you so much! It actually makes more sense! Pinned ;)
Попробуйте ещё датасет из лиц в формате png с прозрачным фоном
With my limited knowledge this is also my understanding. I usually try to add not just numbers but special characters so the AI can completely differentiate from anything it may have been trained on.
What if I want to make use of the idea of what to model already knows? Like further fine tune the likeness of a celerity. Does this also need a unique identifier?
It depends on what you want to do. If the model has a lot of data for "laura", it will take a lot of time to train over that, but at the same time, you could benefit from the training as "laura", since the data may contain a lot that can mix with your data. You might end up with a lot of different poses, styles and what ever the latent space have learned from the world "laura". Training "l4ura" will just take less time since that word is not represented so much in the latent space, but you may get less variety and ultimately if you train long enough, the "l4ura" word will mostly produce your input pictures.
Lora by Laura
😂😂
Lora of Laura by Laura
About time someone made that joke… 10 months ago
Thanks for this! Loras by Laura! I've been waiting for a good tut on this and you delivered and then some!
Wow I didnt expect a quick rundown with graphs. Thank you!
Thank you for the tutorial, and especially for doing it in English! Your voice is easy on the ears. I’ve been watching a lot of Lora tutorials for the past few weeks, and I feel like your video has been most effective. Subbed! Oh, and thank you for the illustrations!
Great video on lora training! Others I've watched are all over the place and never explained it as concisely or left out info. Well done!
This is really well done. I really appreciate that you explain the parameter choices with respect to the theory of neural networks. There are so many parameters to choose and without understanding what they actually are, its hard to understand the meaning of the choices. So a tip of the hat to you L4ura . . . is is a well done explanation of a complex topic.
I trained a few times for fun already and this tutorial is seriously great! A lot of things that I were not sure about are explained in more detail so I can better wrap my head around it. I also like the presentation and clear explanations. While I like me some memes I am really glad that you don't put silly stuff in your video and keep it very focused.
Wow, this video is absolutely amazing! I am so impressed with how thoroughly it explains all the topics related to Lora training in stable diffusion. The content is incredibly informative and has definitely made me more aware of the subject. However, since it's quite a long video, I would suggest breaking it down into chapters. This way, viewers can easily navigate through different sections and find specific information they're interested in. Overall, fantastic job on creating such an informative and comprehensive video!
I'm just learning about LoRAs and your tutorial is absolutely the best I've seen. 👍 Keep up the good work!
Amazing videos, really clear and detailed, thank you Laura
Fantastic video, very clear with just the right amount of detail to get me started down this path. Many thanks for sharing.
I have been watching 3 videos together to learn how to make a LoRa. In the end I liked your video best. Its not too technical, while still giving a lot of information. I have learned a lot and just finished making my first LoRA and its very exciting!
Amazing video, Laura! Thank you very much!
Definitely one of the best videos I’ve seen so far in regards to explaining neural networks and how to train models for stable diffusion. Thank you so much!
This video is so valuable. Thank you for being brief but thorough, and using plain language. I really appreciate it. I will probably be watching it multiple times as my go-to for LoRAs. Even though my interface is different than yours by the time my comment is made, your explanations made it easy for me to follow anyways and find what I need.
Your videos are amazing! You explain everything so clearly and have been so helpful to me learning how to use StableDiffusion. I plan to make a LoRA for my wife and surprise her with some (what I hope will be) awesome images!
Thanks so much! I've watched many videos about loras and I think this is the best explained one. Helped me a lot
The best explanation of how learning rates work, that I have seen so far. Very useful video, thank you.
Excellent video, clearly describing the workflow !
Exactly what I have been looking for! This video is excellent: it makes so many thing every so clear. Thank you Laura!! ❤❤❤ I will finally endeavour to make my own LoRAs....
Would you, could you, please do this for style/artstyle training? Thank you.
Thank you! It's the first video i watch with such deep theory description
you are so wonderful at explaining everything.
Very informative video! Thank you very much! I will really rewatch this.
Amazing knowledge you're sharing, thank you so much!
best LoRA model video I found - thanks for this.
Thank you Laura for the tips of Lora
Incredible video!!! I understood almost all the theory, and that's pretty much. You have a new subscriber
I love this video. Awesome descriptions!!!
Those little extra explanations which pros forget all the time and I end up confused are not missing here. Thanks for going so much into detail.
Just want to thank you for the simplest, clear and easy to understand explanation on how to create a LoRa model "locally" using Kohya! I was finally, after previous attempts, to create a great LoRa Model. It took 3 days on my limited video RAM laptop and I don't know why it created 30 epochs when I set the settings at 15, but it was successful.
Thank you so much with the wonderful tutorial!
thank you laura for all the great content 🥰
Thanks Laura and L4ura for your Lora explanations. I have tried a few times and got mid results. Thanks to your efforts I understand a lot more now. Best Wishes and much love. I'm off to play with my newly attained knowledge. Keep up the good work!
How did it go?
That was an absolutely fantastic demo
Thank you 🎉 Perfect overview and hands on 💪 learned a lot
such an underrated channel, great video thanks
best tutorial for lora training , by far, thanks
best video I've seen so far. You are the best!
I realize you did this a month ago, but so much of this is out of date already, wow. Time fly's in the Ai tech world. I hope you will take the time to update this video, you did a fantastic job. You obviously have more patients than I do to read all the garbally goop stuff. I just want something simple, and I hope you delivered, it's still training on the new SDXL model so not 20 min. Mine says 2 hours. We will see if it worked. Thanks Laura for your hard work.
Laura, as i could see, the captions that you created didnt get used in the training. The console showed the error message when you started training. This is because you must set the file extension to ".txt". This setting is in kohya, Lora, Training, Parameters, Basic, "Caption Extension". Set it to ".txt"
Little Summary of différents Steps. And Thank you very much, i try a lot of vidéo and your are reallygreat
05:00 Step 1 Blip Captioning
06:27 Step 2 Rename Caption for better Results
09:11 Step 3 Folder Préparation / Dataset Preparation
13:10 Step 4 Source Model
16:09 Step 5 Tool -> DataSet Preparation
20:30 Step 6 Check Info in Training Folder Tabs, change model output name
27:50 Step 7 Training Parameters Tabs
You are the best. The only who really explain the things (and probably the only who really knows on RUclips). Can you make a video explaining how the IA reconstruct the image from the noise? I mean, something like, Noise x Pixels relationship? Thanks for everything.
Thank you for this very good video. You have explained everything very well and clearly. I'm going to try it out right now.
Hey Laura :) I'm so happy to stumbled upon your channel. Your explanations and energy are beautiful as you are.
I'm in love 🥰Take care and keep shining bright
Well done! I'm only 2 weeks in from knowing nothing and have learned a thing or two from this channel. Subbed.
Thank you Laura. Very good pace and clear explanations.
NGL your videos about how to use and train image generation models are the best
Best Kohya tutorial!
Thanks, this was helpful and easy to follow.
This was such a helpful video! Thank you so much, subbed for more schooling.
I was exited to learn the right button function to generate indefinitely and than investigate in a statistical (“inverse AI”) way the differences in output for a category prompt like “modern design” between the different models. HIGHLY POLITICAL !!
Me too, never seen that before
thank you....and keep going😀👍
Great video - very informative.
There's been a few changes with the newer version of Kohya_SS, and while the fundamentals are pretty much the same, a deeper dive into the newer version would be awesome if you can ever find the time.
Thanks. 🙂
veramente un signor video, complimenti
💛💛💛💛💛 my favorite ai teacher
Grazie per il video, molto utile :)
Do more videos!! You are great!
Finally a tutorial that doesn't say: now click here, do that, click there, type this.... thank you lora ... laura... l4ura🎉
good job. thanks
Thanks very helpful tutorial. Although I'd advise you to install the extension WD14 tagger, it's enormously better than CLIP (or Danbooru) to generate helpful vocabulary to help describe the dataset images.
Great tutorial. Grazie. 30:24 was my favorite part.
Not sure why, but my LoRa didn't work with regularization images. Without reg it worked. With time hopefully I'll figure out how to improve its versatility.
amazing tuto
If you had a large batch of images all taken from the same session, such as your 'red hoodie' set, you could use a text modification program such as sed or AWK to do a bulk update of keywords of things common to all pictures. For example, you could add in 'earrings' to all pictures.
Good photos it's the best way, your tutorial with good photos = perfect ;p
I've been struggling to get good results with Dadaptation and the more recent prodigy (very hard to find info on the latter). Could you please someday have a look at those training optimizers that are supposed to help big time the calibration of learning rates ? It's hard to configure (at least for me so far) and the training time compared to a basic LoRA seems insane (but I'm sure I got a few things wrong thus my asking).
Thanks for your lovely tutorials. You really explain all that nicely.
Cheers.
If you want better results you can set your Network Rank also to 50-256 this will also make your model size bigger but will give you more accurate results to you or help. And Thanks your video was also a good help to training models.
thank u very much!
That tip of "generate forever" was a mindblown for me. 😄
Your Lora model works really great. That’s not something easy to do. Mine sucks 😂 but I will try making one with your tutorial
Amazing video, thank you so much for the tutorial, I have a question in my case around 5% of the portraits I created looks like me, should I use these new "photos" and placed them in the new regularization images, or do I need to add them in the training images for getting better and accurate/results?
Regularization images should not include photos of yourself. You can use them for training, only if they are actually good.
Amazing ! Could you make one for architectural styles and may be design in general ?
Sweet & cute lovely teacher 😊❤😇
Hi Laura, I really like your videos, it is very helpful. One question, may I know how many GB of VRAM you have to run this training? I only have 4GB currently and intend to buy a new RTX. Hence, the question. Thank you!
Great video, I was waiting for this after your last Kohya video... A small notes, think at the end of the video the training parameters section (27:55 ish) are not from Dreambooth LoRA, rather only from Dreambooth, and that's why there is no settings appearing for Network Rank and Network Alpha... also the Caption Extension setting is empty and this would lead the training not loading captions.. might want to fix that, even on LoRA you still need to enter TXT or whatever extension you are using (in fact in your terminal it says "No caption found for your 25 images") ... also I think bf16 works with Nvidia 30 and 40 series well... I would also be interested in your thoughts on what to set for Class Prompt when training an artistic style, for example a style of photography from particular artist.
Hi, for styles I would guess that you can use "style" as the class prompt because when you prompt for a specific style you can use "in the style of " or " style" so now you would prompt for " style".
Or simply don't use a class prompt neither a keyword so your lora always applies when referenced in the prompt
The small white page next to picking the model in the lora menu is to find and pick your custom model, edit: it's great you talk about regularization images not many youtubers talk about how beneficial they are when creating loras, and some suggest to not use them which is fair but the loras are much better when they are used
My personal Lora and girlfriend’s aren’t trained with aregularization folder and look perfect. Maybe I’ll try again for fun!
@SantoValentino same actually but it's helped when I have had less clear images to work with
@@jr-wg6os I tried to use reg images yesterday, but somehow I'm unable to prompt the subject ... I get only very vague similarities to the face I tried to train. Any idea what could cause this?
@@equilibrium964 I just had the same problem... trained on myself and the images are nothing like me, I have to specifically point out my skin colour, hair colour and all sorts of basica details which I didn't put in captions (so I shoulldn't have to prompt them). Only after doing that does it start to very slightly resemble me. Doing it without the reg images it instantly looks 100x more like me... Not sure what I'm missing. If you work it out let me know please!
@@equilibrium964 sometimes it's also the model your using to generate the images I've noticed "REALISTIC cartoon/anime" models are much more flexible in terms of generating likenesses but worse at things like skin tones and details, but it also matters how clear the pictures and so on, for instance I noticed much better results with images closer to 512,512 or 768,768 then if inuse 4k images even though you can enable buckets I seem to get better results with more regular quality images then high Def ones.
great vid
Thanks!
Thankss, I'm glad it helped ☀️
Hi Laura, Thanks a million for your efforts and your tutorial, I watched so many tricks thanks to your video!
I was wondering I could I create a specific part of a body
I would like to focus on man's chest (muscles and hair) and I was wondering if I need to takejust chest training images or the full body pictures of a man. And what about regularization pics? Should I take just chest or face or the full body? I'm a bit confused. Thanks a million!
Are Loras only used in Stable diffusion and comfy? Or are there other AI softwares that can use them? Just wondering. Thanks for your vid’s Laura!
Dang, I'm at 9:18 in the video and have no idea where or how to download the DreamBooth/Lora/FolderPreparation git/program. I have LoRa in Stable Diffusion A1111 - does that work ? Anyway, great videos!
Thanks for sharing this useful video, I am curious about your GPU setup (VRAM, n gpus, model) since it seems pretty fast, I tried searching in older videos but I could not find that mentioned. Since my setup with two Tesla T4 (16 gb each) is much slower than yours, and I want to understand if that is a problem of configuration on my side. Thanks in advance.
Excellent tutorial for someone who is an AI enthusiast and is just starting out. Do you intend to make videos about ComfyUI?
Thank you very much.
Hi,
I'm pretty new to generative stuff and I have difficulties to get a good framing. Could LoRa be a way to teach SD some filmmaking vocabulary?
If so, how would you set a training? Many trainings one after another, each with a bunch of pictures with a specific shot, then another specific shot, and another, etc. Or goods captions could be enough for one big training?
hi, Thanks for your tutos.
May I know the trick to have the dark mode? Thanks 🙂
Thank you for your tutorial, I'm gonna try this asap! I have a question, could I use the lora trained with my photos to fit in different style? Like make it cartoony or anime style using it through different models or should I train my lora model with images that already resemble the style I would like to use?
You can do both: (1) you can train a ckpt with your realistic photos and use a Lora to change the style, (2) can train a Lora with your photos already transformed in the style you want
Hey Laura great channel, if you put chapters on longer video like this one it will be easier to follow.
Hi Fed, noted, will update :)
Amazing content grazie, a question the regularization images can I take 2500 images of myself and use them? or is it best to use the ones generated by the model? Thanks
Regularization images have to represent the class, and should not be representing yourself :)
This is so helpful. Would u mind sharing a bit about Ur computer specs? Crying in macOs rn and thinking about building my own windows-run rig. Ty ❤
NVIDIA RTX 3090. Yeah the mac is not the best, but you could run SD on external GPU, like colab, runpod, think diffusion, diffusion hub
Do you plan making a tutorial on how to train a merged checkpoint model ?
Thanks
excellent video, I have a more ethical question. when training on personal photos, this model is shared where? if I install Kohya locally , does the training stay local?
yes, it stays locally
🎯 Key Takeaways for quick navigation:
00:00 🧠 Fine-tuning means generating a new model from an already trained model to improve performance or adapt it for a specific task.
01:09 📊 Understanding the main parameters in a neural network, such as in Stable Diffusion, helps in making informed decisions for model training.
03:00 🖼️ For training a Laura model, you need training images and regularization images. Training images represent the subject, and regularization images represent the class.
05:04 📝 Captioning images is important for training; you can use Koya to create image descriptions.
08:57 🧞 Generating regularization images, even in large numbers, significantly improves model performance and diversity.
15:09 ⚙️ Setting up Koya's parameters, including the source model, training data folders, and prompts, is crucial before training a model.
19:30 🧰 Preparing training data in Koya creates the necessary structure for training, including folders for images, logs, and model output.
21:18 🎯 Understanding neural networks and batch training helps optimize the training process and improve model accuracy.
25:12 🔄 An epoch in neural network training is the process of going through all batches of data. Iterations refer to one update of the model's parameters within an epoch.
25:51 📉 The goal of training a neural network is to minimize the loss function, which represents the model's performance. This involves finding the lowest point in the function, ideally the global minimum.
26:44 🚶♂️ The size of steps taken toward the minimum during training is determined by the learning rate. It's essential to strike a balance between a high learning rate for faster convergence and a low learning rate for precision.
27:52 💼 Training parameters include batch size (number of data batches), the number of epochs, learning rate, mixed precision (for speed and memory optimization), and more.
30:07 📈 Learning rate schedulers adjust the learning rate during training, with options like cosine scheduling or constant rate. The choice depends on whether you're fine-tuning or training from scratch.
31:11 💡 The max resolution setting should match the image resolution used for training in models like KoYaGAN. It's important for generating high-quality images.
32:19 🧩 To use a trained model with Stable Diffusion, you'll need to link the model file generated during training to the Stable Diffusion web UI, allowing you to generate images with specific prompts.
Hello Laura,
I followed your excellent presentation step by step, but I cannot obtain models under the "safetensors" extension! In the "Models" folder there is only one .json file...
Do you have a solution to offer me?
Thanking you.
I love you !
Can you just use Batch (250) for creating the regularization images instead of the constant generate?
All these comments and no one has said...
So, you've made a Laura Lora, Laura? 😁
Do you think its possible to use pictures training I created with AI before and I replaced the face with reactor ?
Great video! I have a qeuestion, if I wanted to have the lora be of a person in different poses (headshot, stadning up full body shown, side view seated etc. basically any positon) How would I accomplish this? I want my modal to have the same proportions in different generations
need to train the model using pictures of that person in different positions
Loras with Laura🥂