From Zero to Hero (P12): Tự tạo Lora cho riêng mình (P2)- Sử dụng Train Tools trên SD A1111

Ngay sau khi đã chuẩn bị data cho việc huấn luyện (các bạn lưu ý data nên lưu bằng các hình có ratio 1:1, size 512 x 512 với việc train SD 1.5), cũng như điền các dữ liệu cần thiết, chúng ta chuyển sang tab Train Tools.
Có rất nhiều phương pháp train Lora , phổ biết nhất là Dreambooth, Koyha_ss, một số website cũng cho phép training lora.
Phương pháp được hướng dẫn cũng chỉ là 1 trong số các phương pháp đó.

Lưu ý: Việc training cần nhiều thời gian, sự kiên nhẫn, và trải nghiệm của mỗi người để tạo ra Lora ưng ý. Cân nhắc đọc kỹ tài liệu và thử nghiệm nhiều lần.

:one:. Đặt tên và phiên bản

  1. Nếu cảm thấy dữ liệu bị cập nhật chậm hãy bấm refresh
  2. Bấm vào nút Tạo dự án, nhập tên dự án và bấm OK.
  • Một phiên bản là một tập hợp con của một dự án. Bạn có thể tạo nhiều phiên bản trong một dự án, mỗi phiên bản có các thông số đào tạo riêng. Các bước tạo phiên bản cũng tương tự như tạo dự án ở trên.
    :two: Chuẩn bị dữ liệu đào tạo
  1. Vùng này là dữ liệu huấn luyện mà hệ thống nhận được, có thể khác với tệp bạn đã tải lên vì dữ liệu huấn luyện sẽ được xử lý.
  2. Khu vực này là nơi bạn tải lên dữ liệu đào tạo và thiết lập các thông số xử lý.

Dữ liệu đào tạo cho mỗi phiên bản của mỗi dự án là độc lập, bạn có thể tạo nhiều phiên bản trong một dự án và mỗi phiên bản có thể sử dụng dữ liệu đào tạo khác nhau.

Bạn có thể chọn nhiều hình ảnh để tải lên cùng một lúc:

Sau khi dữ liệu được tải lên, cơ bản các thông số mặc định đã có thể đáp ứng được nhu cầu chung của mọi người. Nếu bạn cần thiết phải đưa lora có chất riêng đặc biệt hơn, hãy đào sâu và dành thời gian nghiên cứu về việc training và mô hình Unet.

Các tệp nguồn dữ liệu bạn tải lên sẽ được giữ lại nhưng thực tế sẽ không được sử dụng để đào tạo. Những gì thực sự được sử dụng trong đào tạo là dữ liệu hiển thị bên trái.

Để kiểm tra các tag và sửa đổi các tag, hãy đọc thêm bài From Zero To Hero (P11): Tự tạo Lora cho riêng mình (P1) - Tạo caption cho data với Dataset Tag Editor.

:three: Đào tạo
Sau khi đã chắc chắn về dữ liệu, bạn có thể bắt đầu

  1. Khu vực này hiển thị dữ liệu thực tế sẽ được sử dụng để train.

  2. Khu vực này là khu vực thiết lập tham số cho việc train.

  3. Khu vực cấu hình train.

  4. Xem trước khu vực cấu hình tham số. Vì kết quả huấn luyện có thể được tự động xem trước sau khi train nên có một số thông số xem trước có thể được cấu hình cùng nhau.

  5. Sau khi quá trình đào tạo hoàn tất, quá trình tạo hình ảnh xem trước sẽ tự động được chạy.

  6. Bắt đầu train.

Các thông số mặc định cũng có thể đáp ứng nhu cầu của bạn. Model cơ bản (base model) cũng rất quan trọng, nó ảnh hướng lớn đến kết quả của lora bạn train ra.
Trong lần ấn train đầu tiên, một số data sẽ cần được tải xuống và nó có thể sẽ mất thời gian của bạn, hãy kiên nhẫn.

Dưới đây là một số thông số đào tạo mà bạn có thể điều chỉnh theo nhu cầu của mình. Các thông số mặc định đã có thể đáp ứng được tình hình chung. Mô hình căn cứ tàu hỏa rất quan trọng, một mô hình cơ sở tốt sẽ ảnh hưởng rất lớn đến hiệu quả luyện tập của bạn.

Hãy train nhiều thông số trong 1 lần sử dụng để tiết kiệm thời gian và tài nguyên của bạn. Hãy dùng dấu phẩy “,” để phân tách các thông số
Ví dụ

  1. Đào tạo mô hình với tốc độ học tập 0.0002,0.0003,0.0004,0.0005 trong một lần.
  2. Đào tạo mô hình bằng trình tối ưu hóa Lion,AdamW cùng một lúc.
    Trong ví dụ này, bạn đã đào tạo 8 mô hình cùng một lúc. Đó là: Lion,0.0002 , Lion,0.0003 , Lion,0.0004 , Lion,0.0005 , AdamW,0.0002 , AdamW,0.0003 , AdamW,0.0004 , AdamW,0.0005 .

Sau khi đào tạo xong, bạn có thể thấy hộp thả xuống trong mục “Xem trước kết quả training”


Ý nghĩa của rất rõ ràng, tên này giống như v1-5-pruned-emaonly-bs-10-ep-10-op-Lion-lr-0_0001-net-128-ap-64 có nghĩa là:

  1. Tập kết quả train này dựa trên mô hình cơ sở v1-5-pruned-emaonly .
  2. Batch size trong quá trình đào tạo là 10.
  3. Epoch trong quá trình đào tạo là 10.
  4. Optimizer trong quá trình đào tạo là Lion.
  5. Tỷ lệ học tập trong quá trình đào tạo là 0,0001.
  6. Net dim trong quá trình đào tạo là 128.
  7. Alpha trong quá trình luyện tập là 64.

Sẽ có một điểm kiểm tra dựa trên Save every n epochs ở cuối tập kết quả của từng tham số huấn luyện. Ngay cả khi bạn tiếp tục điều chỉnh các thông số luyện tập để luyện tập ở một phiên bản nhất định, về cơ bản bạn sẽ không mất đi kết quả đã train.

:four: Kiểm tra trước kết quả train

Việc kiểm tra trước kết quả giúp cho mọi người dễ dàng điều chỉnh các thông số để tạo ra lora theo ý muốn.

  1. Từ khóa để xem trước trên trạm kiểm soát. Ý nghĩa cơ bản giống như trong txt2img.
  2. Nếu bộ nhớ video cho phép, bạn có thể đặt nó thành các giá trị n*n chẳng hạn như 4 hoặc 9 để bạn có thể xem trước nhiều kết quả hơn trong một ảnh.
  3. Dưới đây là Lora weight mà bạn muốn dự đoán cho mỗi điểm kiểm tra, cách nhau bằng “,”.
  4. Nhấp vào nút này sẽ tạo ra các hình ảnh dự đoán có cùng một hạt giống cho tất cả các điểm kiểm tra trong danh sách bên dưới, giúp dễ dàng so sánh tác động của các điểm kiểm tra khác nhau.
  5. Đường dẫn lưu checkpoint này. Nếu bạn nghĩ nó tốt, bạn có thể tìm thấy nó ở đây.
  6. Tương tự như xyz cript, biểu đồ này liệt kê các dự đoán của nó cho tất cả các tham số.
  7. Mỗi điểm kiểm tra có nút dự đoán riêng. Nhấp vào nút đó sẽ tạo ra hình ảnh chỉ sử dụng điểm kiểm tra này.

:five: Lưu kết quả đào tạo

Hiện tại, không có chức năng tải xuống mô hình trong giao diện người dùng. Bạn có thể truy cập vào mục ổn định-khuếch tán-webui > đầu ra > train_tools > tên dự án > phiên bản > tên phiên bản > điểm kiểm tra để tìm mô hình đã đào tạo của bạn.
Chức năng lưu lora, Kaikun cũng đang test để đưa sản phẩm lên một cách trọng vẹn nhất.
Chúc mọi người thành công!

2 Likes