Mô hình khuếch tán
Khám phá cách các mô hình khuếch tán cách mạng hóa AI tạo sinh bằng cách tạo ra hình ảnh, video và dữ liệu thực tế với chi tiết và độ ổn định tuyệt vời.
Mô hình khuếch tán là một lớp thuật toán AI sinh sản , học cách tạo ra các mẫu dữ liệu mới bằng cách đảo ngược quá trình cộng nhiễu dần dần. Lấy cảm hứng từ các nguyên lý của nhiệt động lực học không cân bằng, các mô hình này đã nổi lên như công nghệ tiên tiến nhất để tạo ra hình ảnh, âm thanh và video có độ trung thực cao. Không giống như các phương pháp trước đây cố gắng tạo ra đầu ra phức tạp chỉ trong một bước, mô hình khuếch tán tinh chỉnh dữ liệu tĩnh ngẫu nhiên theo từng bước lặp lại thành nội dung mạch lạc, cho phép kiểm soát chi tiết và cấu trúc ngữ nghĩa chưa từng có trong các tác vụ thị giác máy tính .
Cơ chế khuếch tán
Hoạt động của mô hình khuếch tán có thể được chia thành hai giai đoạn riêng biệt: quá trình thuận và quá trình ngược.
-
Tiến trình Chuyển tiếp (Khuếch tán): Giai đoạn này liên quan đến việc phá hủy cấu trúc dữ liệu một cách có hệ thống. Bắt đầu với một hình ảnh rõ nét từ dữ liệu huấn luyện , mô hình sẽ thêm một lượng nhỏ nhiễu Gauss theo một chuỗi các bước thời gian. Cuối cùng, dữ liệu sẽ suy giảm thành nhiễu ngẫu nhiên thuần túy, phi cấu trúc. Quá trình này thường cố định và tuân theo quy tắc chuỗi Markov .
-
Quá trình đảo ngược (Khử nhiễu): Nhiệm vụ học máy cốt lõi nằm ở giai đoạn này. Một mạng nơ-ron — thường là kiến trúc U-Net — được huấn luyện để dự đoán và trừ nhiễu được thêm vào ở mỗi bước. Bằng cách học cách đảo ngược sự suy giảm, mô hình có thể bắt đầu với nhiễu thuần túy và dần dần "khử nhiễu" nó để tạo ra một hình ảnh hoàn toàn mới, mạch lạc.
Nghiên cứu như bài báo cơ bản về Mô hình xác suất khuếch tán khử nhiễu (DDPM) đã thiết lập khuôn khổ toán học giúp cho quá trình tinh chỉnh lặp đi lặp lại này trở nên ổn định và hiệu quả.
Khuếch tán so với GAN
Trước khi các mô hình khuếch tán trở nên phổ biến, Mạng Đối kháng Sinh sinh (GAN) là phương pháp chủ đạo để tổng hợp hình ảnh. Mặc dù cả hai đều mạnh mẽ, nhưng chúng có những điểm khác biệt cơ bản:
-
Độ ổn định khi huấn luyện: Mô hình khuếch tán thường dễ huấn luyện hơn. GAN dựa trên trò chơi đối kháng giữa hai mạng (bộ tạo và bộ phân biệt), điều này thường dẫn đến sự sụp đổ hoặc mất ổn định chế độ. Khuếch tán sử dụng hàm mất mát ổn định hơn liên quan đến dự đoán nhiễu.
-
Độ đa dạng đầu ra: Các mô hình khuếch tán rất hiệu quả trong việc tạo ra các mẫu đa dạng và có độ chi tiết cao, trong khi GAN có thể gặp khó khăn trong việc bao phủ toàn bộ phân phối của tập dữ liệu.
-
Tốc độ suy luận: Có một sự đánh đổi khi GAN tạo ra hình ảnh chỉ trong một lần chạy, giúp chúng nhanh hơn. Các mô hình khuếch tán đòi hỏi nhiều bước để tinh chỉnh hình ảnh, dẫn đến độ trễ suy luận cao hơn. Tuy nhiên, các kỹ thuật mới hơn như khuếch tán tiềm ẩn (được sử dụng trong Khuếch tán ổn định ) thực hiện quy trình trong không gian tiềm ẩn nén để tăng đáng kể tốc độ trên GPU tiêu dùng.
Các Ứng dụng Thực tế
Tính linh hoạt của các mô hình khuếch tán mở rộng trên nhiều ngành công nghiệp khác nhau, cung cấp năng lượng cho các công cụ nâng cao khả năng sáng tạo và quy trình làm việc kỹ thuật.
-
Tạo dữ liệu tổng hợp: Việc thu thập dữ liệu thực tế được gắn nhãn có thể tốn kém hoặc nhạy cảm với quyền riêng tư. Các mô hình khuếch tán có thể tạo ra một lượng lớn dữ liệu tổng hợp thực tế để huấn luyện các mô hình phát hiện đối tượng mạnh mẽ. Ví dụ, một kỹ sư có thể tạo ra hàng nghìn hình ảnh tổng hợp về các khiếm khuyết công nghiệp hiếm gặp để huấn luyện YOLO11 nhằm đảm bảo chất lượng.
-
Tạo hình ảnh có độ trung thực cao: Các công cụ như DALL-E 3 , Midjourney và Adobe Firefly tận dụng khả năng khuếch tán để biến lời nhắc văn bản thành tác phẩm nghệ thuật và nội dung chuyên nghiệp.
-
Chụp ảnh y tế: Trong chăm sóc sức khỏe, các mô hình khuếch tán hỗ trợ độ phân giải siêu cao , tái tạo ảnh chụp MRI hoặc CT chất lượng cao từ các dữ liệu đầu vào có độ phân giải thấp hơn, hỗ trợ phân tích hình ảnh y tế chính xác.
-
Tổng hợp Video và Âm thanh: Khái niệm này mở rộng ra ngoài phạm vi hình ảnh tĩnh đến dữ liệu thời gian. Các mô hình như Sora của OpenAI và các công cụ từ Runway ML áp dụng các nguyên lý khuếch tán để tạo ra các chuỗi video mạch lạc và âm thanh chân thực.
Thực hiện Quy trình Tiến tới
Để hiểu cách các mô hình khuếch tán chuẩn bị dữ liệu cho quá trình huấn luyện, việc hình dung quá trình chuyển tiếp sẽ rất hữu ích. Đoạn mã PyTorch sau đây minh họa cách nhiễu Gauss được thêm vào một tensor , mô phỏng một bước suy thoái duy nhất.
import torch
def add_gaussian_noise(image_tensor, noise_level=0.1):
"""Simulates one step of the forward diffusion process by adding noise.
Args:
image_tensor (torch.Tensor): Input image tensor.
noise_level (float): Standard deviation of the noise.
"""
noise = torch.randn_like(image_tensor) * noise_level
noisy_image = image_tensor + noise
return noisy_image
# Create a dummy tensor representing a 640x640 image
clean_img = torch.zeros(1, 3, 640, 640)
noisy_output = add_gaussian_noise(clean_img, noise_level=0.2)
print(f"Output shape: {noisy_output.shape} | Noise added successfully.")
Bằng cách đảo ngược quá trình này, mô hình học cách khôi phục tín hiệu từ nhiễu, cho phép tạo ra hình ảnh phức tạp có thể được sử dụng để bổ sung cho các tập dữ liệu cho các tác vụ tiếp theo như phân đoạn hoặc phân loại hình ảnh .