1. Giới thiệu
Những mô hình text-to-image diffusion hiện tại gặp nhiều khó khăn trong việc tạo ra hình ảnh theo yêu cầu điều kiện/dense caption, nơi mà text prompt mô tả chi tiết vị trí của các đối tượng.
Đó là lý do một số nhà nghiên cứu đã phát triển các mô hình layout+text-to-image diffusion, nổi bật như SpaText, GLIGEN, ControlNet và DenseDiffusion. Tuy nhiên, hầu hết các mô hình này chỉ sử dụng một loại layout (như bounding boxes hoặc mask) trong mỗi lần suy diễn. Bạn có thể tham khảo thêm thông tin dưới đây.
Vậy có phương pháp hay mô hình nào không bị giới hạn bởi định dạng layout và trao đổi tự do hơn không? Câu trả lời chính là InstanceDiffusion – công nghệ tiên tiến được giới thiệu tại CVPR 2024.
2. Xác định vấn đề
Tác giả của InstanceDiffusion cải thiện khả năng sinh ảnh theo điều kiện bằng cách kết hợp thông tin từ cả hai nguồn: text và location. Mô hình được biểu diễn dưới dạng f(cg, {(c1, l1), ..., (cn, ln)}) với đầu vào là global text caption cg và các cặp điều kiện (caption ci, location li) cho n điều kiện cụ thể.
3. UniFusion
Để giải quyết vấn đề này, tác giả phát triển UniFusion giúp chiếu các thông tin khác nhau vào cùng một không gian và kết hợp chúng lại một cách hiệu quả. UniFusion cho phép kết hợp thông tin về location và caption với thông tin hình ảnh từ diffusion backbone.
Ngoài ra, UniFusion cũng tích hợp giữa hai lớp self-attention và cross-attention để tối ưu hóa quá trình.
a. Tham số hóa vị trí cho các điều kiện khác nhau
Tác giả chuyển đổi các định dạng condition với:
- Instance masks —> Tập hợp điểm trong mask.
- Nét viết (scribble) —> Tập hợp các điểm đều nhau.
- Bounding boxes —> Điểm trên cùng bên trái và dưới cùng bên phải.
b. Mã hóa điều kiện (Instance Tokenizer)
Tác giả sử dụng Fourier mapping để chuyển đổi các tọa độ điểm cho các vị trí và CLIP text encoder để mã hóa caption. Đối với mỗi định dạng điều kiện, tác giả áp dụng mạng MLP riêng, đảm bảo mọi thông tin đều được biểu diễn chính xác.
c. Instance-Masked Attention và kết hợp thông tin
Tác giả phát triển một phương pháp mới để tránh rò rỉ thông tin giữa các điều kiện bằng cách sử dụng masked attention, tương tự như cơ chế của transformer. Phương pháp này cho phép tăng cường độ chính xác của các điều kiện trong quá trình inference.
4. ScaleU
ScaleU tối ưu hóa skip connection của UNet cho phép điều chỉnh linh hoạt giữa các tính năng chính và các tính năng kết nối. Điều này giúp tối ưu hóa hiệu suất của mô hình trong quá trình sinh ảnh.
5. Multi-instance Sampler cho quá trình Inference
Để tối ưu hóa quá trình inference và tránh rò rỉ thông tin, tác giả đã giới thiệu chiến lược Multi-instance Sampler, cho phép xử lý riêng biệt cho từng điều kiện trong mỗi bước, từ đó cải thiện đáng kể chất lượng sản phẩm cuối cùng.
6. Chuẩn bị dữ liệu với Instance Captions
Tạo ra một dataset đa dạng cho tác vụ này là rất khó. Tác giả sử dụng nhiều phương pháp để tạo ra các caption và bounding boxes từ nhiều mô hình khác nhau, nhằm cung cấp thông tin chi tiết nhất về từng đối tượng.
7. Đánh giá mô hình
Họ đã sử dụng các phương pháp khác nhau để đo độ chính xác của sản phẩm sinh ra như so sánh giữa bounding boxes và masks, cùng với những chỉ số đánh giá mới cho các định dạng như scribble.
8. So sánh với các mô hình khác
Kết quả từ InstanceDiffusion được chứng minh là ưu việt hơn hẳn so với các mô hình khác trong cùng lĩnh vực, với hiệu suất nổi bật ở tất cả các định dạng.
9. Kết luận
Có nhiều kỹ thuật và thiết kế thú vị khác trong InstanceDiffusion, nhưng trong bài viết này, chúng ta đã điểm qua những điểm nổi bật nhất. Để biết thêm chi tiết, bạn có thể tham khảo bài báo gốc.
10. Tham khảo
- GliGen: https://gligen.github.io/
- SpaText: https://omriavrahami.com/spatext/
- DenseDiffusion: https://arxiv.org/pdf/2308.12964
- InstanceDiffusion: https://arxiv.org/pdf/2402.03290
🔗 Tìm hiểu thêm về Pixta Vietnam: http://bit.ly/3kdkzvW
source: viblo