Hiểu Sâu về traning loRA: phần 1 Learning Rate Schedulers, Network Dimension and Alpha
Mục tiêu ngày nay là để hiểu vai trò của các tham số Network Rank (Dimension) và Network Alpha trong việc rèn luyện nhân vật. Sẽ có khá nhiều cách thực hiện về lịch trình tỷ lệ học.
Các bạn nên tham khảo video của Admin group facebook: Stable Diffusion Việt Nam Official | Facebook về training cơ bản bằng google collab ở dưới trước khi tìm hiểu sâu về các thông số training loRA dưới đây:
Phương thức học thông số quan trọng trong đào tạo mô hình. Số lượng càng lớn, đào tạo càng nhanh và càng nhiều chi tiết bị bỏ lỡ trong quá trình này. Nó được giải thích trực quan ở đây.
Một phương thức học không đổi là một lựa chọn. Có một vài cái khác có sẵn trong GUI tại thời điểm viết:
Một quá trình đào tạo tối ưu liên quan đến một tỷ lệ học tập thay đổi. Bạn có thể muốn mô hình của mình nhận ra các tính năng chính của tập dữ liệu bằng cách học nhanh ngay từ đầu và sau đó giảm dần tốc độ học tập cho các chi tiết nhỏ hơn. Một quá trình đào tạo kiểu này sẽ trông như thế này trên biểu đồ:
Dưới đây là những gì xảy ra trong quá trình đào tạo khi bạn chọn Constant, Linear, Cosine hoặc Cosine with a restart
Các bước khởi động cho Hằng số và Tuyến tính được đặt bằng% và cho phép tăng dần tốc độ học tập trong các bước X% đầu tiên của khóa đào tạo.
Điều này có thể có lợi cho các bộ dữ liệu với rất nhiều chi tiết phức tạp có thể bị mất trong nước sốt nếu bạn bắt đầu quá nhanh.
Lưu ý rằng bạn có thể đặt LR khởi động thành 100% và tăng tốc độ học tập dần dần trong toàn bộ quá trình đào tạo.
Cosine không cần giải thích.
Cosine with a restart thực sự là Cosine with warm up có nghĩa là chỉ có ‘trọng lượng tốt’ được sử dụng làm điểm bắt đầu của mỗi lần khởi động lại (trái ngược với khởi động lại nguội trong đó một bộ số ngẫu nhiên mới được sử dụng).
Số lần khởi động lại có thể được đặt theo số chu kỳ LR tại tab Cấu hình nâng cao. Theo mặc định, nó bằng với Dim.
Đa thức Bộ lập lịch LR hoạt động như thế này:
Sức mạnh của nó có thể được đặt trong nguồn LR tại tab Cấu hình nâng cao.
Đường cong đa thức mạnh hơn so với bộ lập lịch Cosine, vì vậy nó có thể có lợi khi tập dữ liệu của bạn không có nhiều tính năng riêng biệt để học, nhưng bạn muốn việc đào tạo hiệu quả hơn so với bộ lập lịch liên tục.
Adafactor có lẽ là một Bộ lập lịch LR thích ứng (??), có thể ghép nối với trình tối ưu hóa Adafactor. Thông tin thêm về các trình tối ưu hóa thích ứng bên dưới.
Trình tối ưu hóa
Một từ nhanh về trình tối ưu hóa trước khi bài đăng này quá dài.
Tôi chưa xem xét các trình tối ưu hóa thích ứng. Quá trình đào tạo LoRA đã có quá nhiều biến số dễ bay hơi, điều này gây khó khăn cho việc xác định các khu vực đáng để gỡ lỗi. Thêm một hộp đen như trình tối ưu hóa thích ứng có thể sẽ làm cho mọi thứ thậm chí còn nhiều mây hơn. Tôi có thể sai, nhưng đó là nơi tôi đang ở vào lúc này.
Đối với những người không thích nghi, trình tối ưu hóa Lion (thực sự lấy cảm hứng từ sư tử và sự hợp tác của chúng!) trông hấp dẫn, nhưng tôi vẫn chưa tìm thấy điểm chung với nó cho đến nay.
Tôi sẽ sử dụng AdamW cho các bài kiểm tra của mình ngày hôm nay.
Tập dữ liệu
Hãy dạy Reliberate source model để nhận ra một người mà nó không hề hay biết.
Hóa ra nó không biết gì về nhân vật Sofia Ludens của Elina Löwensohn trong bộ phim Amateur năm 1994 của Hal Hartley, cũng như không biết gì về người mẫu kiêm diễn viên người Bỉ Delfine Bafort.
Tôi sẽ sử dụng hai bộ dữ liệu nhỏ (trong các bài kiểm tra riêng biệt) để cân bằng kết quả kiểm tra của mình.
Tập dữ liệu CSDL
Bộ dữ liệu này gần như hoàn hảo để rèn luyện khuôn mặt nếu bạn không muốn tạo ra một loạt các cảm xúc. Biểu cảm khuôn mặt ổn định, giúp dễ dàng nhận ra người đó, ánh sáng chắc chắn và có rất nhiều chi tiết khác nhau để chú thích:
dfw là một tổ hợp ký tự mã thông báo duy nhất mà tôi sẽ sử dụng để xác định đối tượng trong đào tạo.
Bạn có thể nhận được danh sách tất cả các mã thông báo đơn lẻ tối đa 4 ký tự tại đây. Lý tưởng nhất là kiểm tra xem lựa chọn của bạn có bất kỳ ý nghĩa cụ thể nào cho mô hình nguồn hay không.
Tập dữ liệu SL
SL khó khăn hơn nhiều. Ánh sáng trên hầu hết các hình ảnh đều phẳng (độ tương phản cao hơn sẽ tốt hơn để nhận dạng đối tượng). Có quá nhiều góc độ và nét mặt cho một tập dữ liệu nhỏ như vậy. Trên hết, tôi chỉ chú thích hình nền và chiếc điện thoại cầm tay, để người mẫu tìm hiểu toàn bộ nhân vật, bao gồm cả váy và vòng cổ.
Hình ảnh lớp học
Tôi đã tạo 10 hình ảnh lớp (đồng nhất) cho mỗi hình ảnh đào tạo trong cả hai bộ dữ liệu. Tất cả các hình ảnh được tạo bằng mô hình nguồn (Reliberate) với chú thích giống như hình ảnh đào tạo, chỉ có mã thông báo phiên bản được thay thế bằng ‘phụ nữ’.
Hình ảnh lớp học được chú thích và tạo đúng cách giúp làm cho quá trình đào tạo hiệu quả hơn bằng cách làm nổi bật các khối phù hợp cho mô hình.
Cấu trúc thư mục
Tôi có 13 hình ảnh đào tạo trong tập dữ liệu SL và tôi muốn chúng được đào tạo cùng với tất cả 130 hình ảnh lớp trong suốt mỗi kỷ nguyên, vì vậy tôi sẽ lặp lại chúng 10 lần.
Settings
Source model: Reliberate Resolution: 512×512 Epochs: 18 LR Scheduler: Cosine Text Encoder Learning Rate: 5e-5 Unet Learning Rate: 1e-4 Prior loss weight: 1
I will be training for 18 epochs, which gives me 2,340 steps for SL dataset (18×130) and 2,520 steps for DB (18×140).
Kết quả
DL dataset
Cùng một hạt giống đã được sử dụng cho các thế hệ này. Không có nhiều điều rõ ràng ngoài thực tế là ít chi tiết hơn được học với Dim 8 và màu sắc sống động hơn một chút với Alpha 1.
Hãy nhìn dưới mui xe của quá trình đào tạo. Tôi đã tạo ra các mẫu vào cuối mỗi kỷ nguyên với cùng một lời nhắc (dfw woman, headshot, sunflower field) và cùng một hạt giống.
Bạn có thể tạo mẫu với cùng một hạt giống bằng cách thêm –d 1234 vào cuối lời nhắc mẫu. Tất nhiên, bất kỳ số nào khác thay vì 1234 sẽ làm được.
Dim 128, Alpha 128:
Dim 128, Alpha 1:
Dim 8, Alpha 8:
Dim 8, Alpha 1:
Ok! Điều này thú vị hơn.
Có vẻ như Network Rank (Dimension) là số lượng các tính năng được đào tạo, trong khi Network Alpha là số lượng trong số chúng được phép thay đổi mô hình nguồn.
Màu sắc dường như trở nên sống động hơn khi LoRA và mô hình nguồn không được căn chỉnh đúng, như thể cái bắt tay của chúng không ổn định. Nó xảy ra ở những bước đầu tiên của mọi thử nghiệm và không thực sự biến mất khi Alpha = 1.
Để đảm bảo Dim 8 thực sự bị giới hạn trong các tính năng được đào tạo, chúng ta hãy thử tăng cả hai tỷ lệ học tập.
Dim 8, Alpha 8, Text Encoder LR 1e-4, Unet LR 5e-4:
Tốt hơn nhiều so với tốc độ học tập ban đầu, nhưng vẫn còn hạn chế về các tính năng được đào tạo.
Điểm mấu chốt ở đây là chúng ta cần tăng tốc độ học tập khi chúng ta giới hạn Network Dimension. Công cụ của chúng tôi buồn tẻ và nhỏ với độ mờ thấp hơn, vì vậy chúng tôi cần phải làm việc nhanh hơn để đạt được điều gì đó.
Không có gì ngạc nhiên khi cài đặt mặc định của tập lệnh kohya là Dim 8, Alpha 1. Nó thúc đẩy quá trình đào tạo nhanh chóng, nhưng các yêu cầu về tập dữ liệu phải khá nghiêm ngặt trong trường hợp này.
Hãy xem xét thêm một vài bộ mẫu.
Dim 128, Alpha 128, Text Encoder LR 0, Unet LR 1e4:
Dim 128, Alpha 128, TE LR 5e5, Unet LR 0:
Đúng như dự đoán, lol.
Được rồi, có vẻ như chúng ta đang bị đình trệ ở cuối ~ 6 kỷ nguyên. Điều gì sẽ xảy ra nếu chúng ta thay đổi bộ lập lịch từ Cosine sang Cosine bằng cách khởi động lại?
Dim 128, Alpha 128, Cosine with 3 restarts (every 6 epochs):
Cũng tuyệt, nhưng không ảnh hưởng quá nhiều.
Dim 128, Alpha 128, Cosine with 18 restarts (every epoch):
Thực sự khá hữu ích! Tốt để biết.
Trước khi tôi đến tập dữ liệu SL, đây là một sai lầm thú vị để xem xét. Khi bắt đầu thử nghiệm, tôi vô tình đào tạo LoRA trên một mô hình nguồn khác (Paragon thay vì Reliberate) bằng cách sử dụng hình ảnh lớp được tạo bằng Reliberate.
Dim 128, Alpha 128, Paragon source model with Reliberate class images:
Màu sắc sống động hơn ở đây, một lần nữa, có thể là dấu hiệu của một cái bắt tay yếu hơn giữa LoRA và mô hình. Những bông hoa hướng dương đối xứng trong các kỷ nguyên cuối cùng (cũng được nhìn thấy ở Dim128 / Alpha128 ban đầu ở trên) trở nên lố bịch hơn nhiều ở đây.
Bộ mẫu này cũng gợi ý rằng việc đào tạo hiệu quả hơn với hình ảnh lớp gốc = được tạo bởi mô hình nguồn. Một vài ví dụ khác:
Dim 128, Alpha 1, Paragon source model with Reliberate class images:
Dim 8, Alpha 8, Paragon source model with Reliberate class images:
Dim 8, Alpha 1, Paragon source model with Reliberate class images:
Yeah.
SL dataset
Đây là nơi mọi thứ trở nên thú vị hơn!
Trong trường hợp bạn quên tập dữ liệu này trông như thế nào, đây là lời nhắc:
Let’s start with a slo woman, headshot, sunflower field over the course of 18 epochs with original core settings.
Dim 128, Alpha 128:
Xin chào? Tôi biết nó sẽ là thách thức, nhưng tôi vẫn mong đợi nhiều hơn thế này một chút vào cuối quá trình đào tạo. Mẫu kỷ nguyên 1 rất hứa hẹn, và sau đó chúng tôi đã không đi đến đâu bằng cách nào đó.
Vì lợi ích của thử nghiệm, tôi muốn giữ nguyên số bước. Thay vào đó, hãy thử thay đổi Dimension(Dim)
Dim 256, Alpha 256:
Bạn có thể thấy rằng nó đang cố gắng, có lẽ cần một đường cong học tập cường độ cao hơn?
Cảm thấy đây là thời điểm thích hợp cho phương thức học Poly
Dim 256, Alpha 256, Polynomial with LR Power of 0.1:
Bên phải! Đã khá quá mức ở cuối, nhưng hướng là tốt.
Họ nói rằng tập dữ liệu là vua của đào tạo và những mẫu này chắc chắn phản ánh điều đó. Sự kết hợp của biểu cảm khuôn mặt trong bộ dữ liệu SL gồm 13 hình ảnh có chú thích kém (chỉ loại trừ hình nền và điện thoại cầm tay) kết hợp với sự kết hợp giữa độ tương phản cao và ánh sáng phẳng dẫn đến một nhiệm vụ đào tạo gần như bất khả thi cho người mẫu.
Để kết thúc mọi thứ, hãy xem liệu Cosine with restarts có thể cứu chúng ta ở đây hay không.
Dim 256, Alpha 256, Cosine with 18 restarts:
Không, không hẳn. Tốt hơn mọi thứ khác mặc dù!
Tôi hy vọng bạn đã hiểu rõ hơn về việc cân bằng Tỷ lệ học tập và Bộ lập lịch với cài đặt Kích thước mạng và Alpha tùy thuộc vào tập dữ liệu và mục tiêu đào tạo của bạn. Vui lòng liên hệ trong các bình luận để thảo luận về những điểm chính và thực hành thử nghiệm.
Hiểu Sâu về traning loRA: phần 1 Learning Rate Schedulers, Network Dimension and Alpha
Mục tiêu ngày nay là để hiểu vai trò của các tham số Network Rank (Dimension) và Network Alpha trong việc rèn luyện nhân vật. Sẽ có khá nhiều cách thực hiện về lịch trình tỷ lệ học.
Các bạn nên tham khảo video của Admin group facebook: Stable Diffusion Việt Nam Official | Facebook về training cơ bản bằng google collab ở dưới trước khi tìm hiểu sâu về các thông số training loRA dưới đây:
Mục Lục
Thiết lập
Phương thức học (Lr-schedule)
Phương thức học thông số quan trọng trong đào tạo mô hình. Số lượng càng lớn, đào tạo càng nhanh và càng nhiều chi tiết bị bỏ lỡ trong quá trình này. Nó được giải thích trực quan ở đây.
Một phương thức học không đổi là một lựa chọn. Có một vài cái khác có sẵn trong GUI tại thời điểm viết:
Một quá trình đào tạo tối ưu liên quan đến một tỷ lệ học tập thay đổi. Bạn có thể muốn mô hình của mình nhận ra các tính năng chính của tập dữ liệu bằng cách học nhanh ngay từ đầu và sau đó giảm dần tốc độ học tập cho các chi tiết nhỏ hơn. Một quá trình đào tạo kiểu này sẽ trông như thế này trên biểu đồ:
Dưới đây là những gì xảy ra trong quá trình đào tạo khi bạn chọn Constant, Linear, Cosine hoặc Cosine with a restart
Các bước khởi động cho Hằng số và Tuyến tính được đặt bằng% và cho phép tăng dần tốc độ học tập trong các bước X% đầu tiên của khóa đào tạo.
Điều này có thể có lợi cho các bộ dữ liệu với rất nhiều chi tiết phức tạp có thể bị mất trong nước sốt nếu bạn bắt đầu quá nhanh.
Cosine không cần giải thích.
Cosine with a restart thực sự là Cosine with warm up có nghĩa là chỉ có ‘trọng lượng tốt’ được sử dụng làm điểm bắt đầu của mỗi lần khởi động lại (trái ngược với khởi động lại nguội trong đó một bộ số ngẫu nhiên mới được sử dụng).
Số lần khởi động lại có thể được đặt theo số chu kỳ LR tại tab Cấu hình nâng cao. Theo mặc định, nó bằng với Dim.
Đa thức Bộ lập lịch LR hoạt động như thế này:
Sức mạnh của nó có thể được đặt trong nguồn LR tại tab Cấu hình nâng cao.
Đường cong đa thức mạnh hơn so với bộ lập lịch Cosine, vì vậy nó có thể có lợi khi tập dữ liệu của bạn không có nhiều tính năng riêng biệt để học, nhưng bạn muốn việc đào tạo hiệu quả hơn so với bộ lập lịch liên tục.
Adafactor có lẽ là một Bộ lập lịch LR thích ứng (??), có thể ghép nối với trình tối ưu hóa Adafactor. Thông tin thêm về các trình tối ưu hóa thích ứng bên dưới.
Trình tối ưu hóa
Một từ nhanh về trình tối ưu hóa trước khi bài đăng này quá dài.
Tôi chưa xem xét các trình tối ưu hóa thích ứng. Quá trình đào tạo LoRA đã có quá nhiều biến số dễ bay hơi, điều này gây khó khăn cho việc xác định các khu vực đáng để gỡ lỗi. Thêm một hộp đen như trình tối ưu hóa thích ứng có thể sẽ làm cho mọi thứ thậm chí còn nhiều mây hơn. Tôi có thể sai, nhưng đó là nơi tôi đang ở vào lúc này.
Đối với những người không thích nghi, trình tối ưu hóa Lion (thực sự lấy cảm hứng từ sư tử và sự hợp tác của chúng!) trông hấp dẫn, nhưng tôi vẫn chưa tìm thấy điểm chung với nó cho đến nay.
Tôi sẽ sử dụng AdamW cho các bài kiểm tra của mình ngày hôm nay.
Tập dữ liệu
Hãy dạy Reliberate source model để nhận ra một người mà nó không hề hay biết.
Hóa ra nó không biết gì về nhân vật Sofia Ludens của Elina Löwensohn trong bộ phim Amateur năm 1994 của Hal Hartley, cũng như không biết gì về người mẫu kiêm diễn viên người Bỉ Delfine Bafort.
Tôi sẽ sử dụng hai bộ dữ liệu nhỏ (trong các bài kiểm tra riêng biệt) để cân bằng kết quả kiểm tra của mình.
Tập dữ liệu CSDL
Bộ dữ liệu này gần như hoàn hảo để rèn luyện khuôn mặt nếu bạn không muốn tạo ra một loạt các cảm xúc. Biểu cảm khuôn mặt ổn định, giúp dễ dàng nhận ra người đó, ánh sáng chắc chắn và có rất nhiều chi tiết khác nhau để chú thích:
dfw là một tổ hợp ký tự mã thông báo duy nhất mà tôi sẽ sử dụng để xác định đối tượng trong đào tạo.
Tập dữ liệu SL
SL khó khăn hơn nhiều. Ánh sáng trên hầu hết các hình ảnh đều phẳng (độ tương phản cao hơn sẽ tốt hơn để nhận dạng đối tượng). Có quá nhiều góc độ và nét mặt cho một tập dữ liệu nhỏ như vậy. Trên hết, tôi chỉ chú thích hình nền và chiếc điện thoại cầm tay, để người mẫu tìm hiểu toàn bộ nhân vật, bao gồm cả váy và vòng cổ.
Hình ảnh lớp học
Tôi đã tạo 10 hình ảnh lớp (đồng nhất) cho mỗi hình ảnh đào tạo trong cả hai bộ dữ liệu. Tất cả các hình ảnh được tạo bằng mô hình nguồn (Reliberate) với chú thích giống như hình ảnh đào tạo, chỉ có mã thông báo phiên bản được thay thế bằng ‘phụ nữ’.
Hình ảnh lớp học được chú thích và tạo đúng cách giúp làm cho quá trình đào tạo hiệu quả hơn bằng cách làm nổi bật các khối phù hợp cho mô hình.
Cấu trúc thư mục
Tôi có 13 hình ảnh đào tạo trong tập dữ liệu SL và tôi muốn chúng được đào tạo cùng với tất cả 130 hình ảnh lớp trong suốt mỗi kỷ nguyên, vì vậy tôi sẽ lặp lại chúng 10 lần.
Settings
Source model: Reliberate
Resolution: 512×512
Epochs: 18
LR Scheduler: Cosine
Text Encoder Learning Rate: 5e-5
Unet Learning Rate: 1e-4
Prior loss weight: 1
I will be training for 18 epochs, which gives me 2,340 steps for SL dataset (18×130) and 2,520 steps for DB (18×140).
Kết quả
DL dataset
Cùng một hạt giống đã được sử dụng cho các thế hệ này. Không có nhiều điều rõ ràng ngoài thực tế là ít chi tiết hơn được học với Dim 8 và màu sắc sống động hơn một chút với Alpha 1.
Hãy nhìn dưới mui xe của quá trình đào tạo. Tôi đã tạo ra các mẫu vào cuối mỗi kỷ nguyên với cùng một lời nhắc (dfw woman, headshot, sunflower field) và cùng một hạt giống.
Dim 128, Alpha 128:
Dim 128, Alpha 1:
Dim 8, Alpha 8:
Dim 8, Alpha 1:
Ok! Điều này thú vị hơn.
Có vẻ như Network Rank (Dimension) là số lượng các tính năng được đào tạo, trong khi Network Alpha là số lượng trong số chúng được phép thay đổi mô hình nguồn.
Màu sắc dường như trở nên sống động hơn khi LoRA và mô hình nguồn không được căn chỉnh đúng, như thể cái bắt tay của chúng không ổn định. Nó xảy ra ở những bước đầu tiên của mọi thử nghiệm và không thực sự biến mất khi Alpha = 1.
Để đảm bảo Dim 8 thực sự bị giới hạn trong các tính năng được đào tạo, chúng ta hãy thử tăng cả hai tỷ lệ học tập.
Dim 8, Alpha 8, Text Encoder LR 1e-4, Unet LR 5e-4:
Tốt hơn nhiều so với tốc độ học tập ban đầu, nhưng vẫn còn hạn chế về các tính năng được đào tạo.
Điểm mấu chốt ở đây là chúng ta cần tăng tốc độ học tập khi chúng ta giới hạn Network Dimension. Công cụ của chúng tôi buồn tẻ và nhỏ với độ mờ thấp hơn, vì vậy chúng tôi cần phải làm việc nhanh hơn để đạt được điều gì đó.
Không có gì ngạc nhiên khi cài đặt mặc định của tập lệnh kohya là Dim 8, Alpha 1. Nó thúc đẩy quá trình đào tạo nhanh chóng, nhưng các yêu cầu về tập dữ liệu phải khá nghiêm ngặt trong trường hợp này.
Hãy xem xét thêm một vài bộ mẫu.
Dim 128, Alpha 128, Text Encoder LR 0, Unet LR 1e4:
Dim 128, Alpha 128, TE LR 5e5, Unet LR 0:
Đúng như dự đoán, lol.
Được rồi, có vẻ như chúng ta đang bị đình trệ ở cuối ~ 6 kỷ nguyên. Điều gì sẽ xảy ra nếu chúng ta thay đổi bộ lập lịch từ Cosine sang Cosine bằng cách khởi động lại?
Dim 128, Alpha 128, Cosine with 3 restarts (every 6 epochs):
Cũng tuyệt, nhưng không ảnh hưởng quá nhiều.
Dim 128, Alpha 128, Cosine with 18 restarts (every epoch):
Thực sự khá hữu ích! Tốt để biết.
Trước khi tôi đến tập dữ liệu SL, đây là một sai lầm thú vị để xem xét. Khi bắt đầu thử nghiệm, tôi vô tình đào tạo LoRA trên một mô hình nguồn khác (Paragon thay vì Reliberate) bằng cách sử dụng hình ảnh lớp được tạo bằng Reliberate.
Dim 128, Alpha 128, Paragon source model with Reliberate class images:
Màu sắc sống động hơn ở đây, một lần nữa, có thể là dấu hiệu của một cái bắt tay yếu hơn giữa LoRA và mô hình. Những bông hoa hướng dương đối xứng trong các kỷ nguyên cuối cùng (cũng được nhìn thấy ở Dim128 / Alpha128 ban đầu ở trên) trở nên lố bịch hơn nhiều ở đây.
Bộ mẫu này cũng gợi ý rằng việc đào tạo hiệu quả hơn với hình ảnh lớp gốc = được tạo bởi mô hình nguồn. Một vài ví dụ khác:
Dim 128, Alpha 1, Paragon source model with Reliberate class images:
Dim 8, Alpha 8, Paragon source model with Reliberate class images:
Dim 8, Alpha 1, Paragon source model with Reliberate class images:
Yeah.
SL dataset
Đây là nơi mọi thứ trở nên thú vị hơn!
Trong trường hợp bạn quên tập dữ liệu này trông như thế nào, đây là lời nhắc:
Let’s start with a slo woman, headshot, sunflower field over the course of 18 epochs with original core settings.
Dim 128, Alpha 128:
Xin chào? Tôi biết nó sẽ là thách thức, nhưng tôi vẫn mong đợi nhiều hơn thế này một chút vào cuối quá trình đào tạo. Mẫu kỷ nguyên 1 rất hứa hẹn, và sau đó chúng tôi đã không đi đến đâu bằng cách nào đó.
Vì lợi ích của thử nghiệm, tôi muốn giữ nguyên số bước. Thay vào đó, hãy thử thay đổi Dimension(Dim)
Dim 256, Alpha 256:
Bạn có thể thấy rằng nó đang cố gắng, có lẽ cần một đường cong học tập cường độ cao hơn?
Cảm thấy đây là thời điểm thích hợp cho phương thức học Poly
Dim 256, Alpha 256, Polynomial with LR Power of 0.1:
Bên phải! Đã khá quá mức ở cuối, nhưng hướng là tốt.
Họ nói rằng tập dữ liệu là vua của đào tạo và những mẫu này chắc chắn phản ánh điều đó. Sự kết hợp của biểu cảm khuôn mặt trong bộ dữ liệu SL gồm 13 hình ảnh có chú thích kém (chỉ loại trừ hình nền và điện thoại cầm tay) kết hợp với sự kết hợp giữa độ tương phản cao và ánh sáng phẳng dẫn đến một nhiệm vụ đào tạo gần như bất khả thi cho người mẫu.
Để kết thúc mọi thứ, hãy xem liệu Cosine with restarts có thể cứu chúng ta ở đây hay không.
Dim 256, Alpha 256, Cosine with 18 restarts:
Không, không hẳn. Tốt hơn mọi thứ khác mặc dù!
Tôi hy vọng bạn đã hiểu rõ hơn về việc cân bằng Tỷ lệ học tập và Bộ lập lịch với cài đặt Kích thước mạng và Alpha tùy thuộc vào tập dữ liệu và mục tiêu đào tạo của bạn. Vui lòng liên hệ trong các bình luận để thảo luận về những điểm chính và thực hành thử nghiệm.
Bài viết được dịch lại từ nguồn: Understanding LoRA Training, Part 1: Learning Rate Schedulers, Network Dimension and Alpha | by Dreams Are Real | Medium