Nếu bạn từng thắc mắc vì sao các mô hình sinh ảnh có thể vẽ ra một bức tranh chi tiết từ một mớ nhiễu ngẫu nhiên, câu trả lời nằm ở một cơ chế toán học rất gọn gàng: Denoising diffusion. Ý tưởng cốt lõi đơn giản đến bất ngờ: cứ phá hủy dữ liệu từ từ bằng nhiễu Gauss theo một lịch trình cố định, rồi huấn luyện một mạng nơ-ron học cách đảo ngược từng bước phá hủy đó. Không có phép màu nào cả, chỉ là xác suất và một chuỗi Markov được thiết kế khéo léo.
Quá trình khuếch tán xuôi
Hãy tưởng tượng một bức ảnh gốc x0. Ở bước thời gian t, ta lấy ảnh của bước trước, thu nhỏ biên độ một chút rồi cộng thêm một lượng nhiễu Gauss nhỏ theo phân phối q(x_t | x_{t-1}). Lặp lại quá trình này qua vài trăm đến vài nghìn bước, ảnh gốc dần biến thành nhiễu trắng thuần túy, không còn dấu vết cấu trúc nào. Nhờ tính chất cộng dồn của phân phối Gauss, ta không cần lặp từng bước khi huấn luyện, có thể nhảy thẳng từ x0 đến x_t bất kỳ bằng một công thức khép kín, giúp việc lấy mẫu ngẫu nhiên trong huấn luyện nhanh hơn rất nhiều.
Lịch trình phương sai: tuyến tính và cosine
Một dãy hệ số beta_t, gọi là lịch trình phương sai, kiểm soát mức nhiễu thêm vào mỗi bước. Lịch trình tuyến tính, như trong bài báo DDPM gốc, tăng beta_t đều đặn từ một giá trị rất nhỏ đến một giá trị lớn hơn qua hàng nghìn bước. Vấn đề là cách này phá hủy thông tin quá nhanh ở những bước đầu, khiến phần lớn quá trình chỉ xử lý nhiễu gần như thuần túy, lãng phí năng lực mô hình. Lịch trình cosine, được đề xuất sau đó, giữ tỷ lệ tín hiệu còn lại giảm mượt hơn theo một đường cong cosine, giúp mô hình học được nhiều chi tiết hữu ích hơn ở cả hai đầu của chuỗi thời gian.
Mạng dự đoán nhiễu
Thay vì bắt mạng nơ-ron đoán trực tiếp ảnh sạch, các tác giả DDPM nhận ra một mẹo tham số hóa cực kỳ hiệu quả: huấn luyện mạng epsilon_theta để đoán chính xác lượng nhiễu đã được cộng vào ở bước t, dựa trên ảnh nhiễu x_t và chỉ số thời gian t. Về kiến trúc, đây thường là một mạng U-Net với các khối tích chập residual và cơ chế attention, nhận thêm một embedding thời gian tương tự positional encoding trong AI transformer. Học đoán nhiễu, thay vì đoán dữ liệu, hóa ra ổn định và dễ tối ưu hơn rất nhiều trong thực nghiệm.
Quá trình đảo ngược: từ nhiễu về dữ liệu
Nếu quá trình xuôi phá hủy dữ liệu, quá trình ngược p_theta(x_{t-1} | x_t) phải tái tạo lại nó từng bước một. Vì ta không biết phân phối thật của bước ngược, DDPM giả định nó cũng là một phân phối Gauss với trung bình và phương sai được tính từ đầu ra của mạng dự đoán nhiễu. Cứ thế, bắt đầu từ một mẫu nhiễu ngẫu nhiên thuần túy x_T, mô hình lặp lại phép trừ nhiễu hàng trăm lần, mỗi lần một chút, cho đến khi thu được một mẫu dữ liệu hoàn chỉnh, chi tiết và hợp lý ở x0.
Mục tiêu huấn luyện ELBO
Về mặt lý thuyết, DDPM tối ưu một cận dưới của log xác suất dữ liệu, gọi là ELBO, giống tinh thần của variational autoencoder. Nhưng công thức đầy đủ của ELBO rất cồng kềnh với tổng nhiều số hạng KL divergence. Điều bất ngờ là khi rút gọn toán học, phần lớn các hệ số phức tạp biến mất, để lại một hàm mất mát cực kỳ đơn giản: sai số bình phương trung bình giữa nhiễu thật và nhiễu do mạng dự đoán. Chính sự đơn giản này, một mục tiêu huấn luyện gần như hồi quy thông thường, là lý do diffusion model có thể huấn luyện ổn định trên quy mô lớn, điều mà giới nghiên cứu công nghệ vẫn tiếp tục khai thác trong các mô hình mới nhất.



