Normalizing Flows
Khám phá normalizing flows, cách các mạng thần kinh khả nghịch (invertible neural networks) cho phép tính toán likelihood chính xác, và các ứng dụng của chúng trong generative AI, phát hiện bất thường (anomaly detection), hình ảnh y tế, và mô hình hóa độ bất định.
Normalizing flows là các mô hình generative AI học cách ánh xạ khả nghịch giữa một phân phối xác suất đơn giản (thường là nhiễu Gaussian) và một phân phối dữ liệu phức tạp. Không giống như nhiều mô hình generative khác, chúng có thể tạo mẫu và tính toán chính xác likelihood của dữ liệu một cách hiệu quả. Điều này khiến chúng trở nên hữu ích cho việc ước tính mật độ, mô hình hóa độ không đảm bảo và học latent spaces có cấu trúc, như đã được giải thích trong bài đánh giá về normalizing flows nền tảng. (arxiv.org)
Link to this sectionCách hoạt động của Normalizing Flows#
Một flow áp dụng một chuỗi các phép biến đổi neural-network có thể đảo ngược:
- Lấy mẫu một điểm từ một phân phối cơ sở đơn giản.
- Biến đổi nó thông qua một số lớp khả nghịch.
- Theo dõi cách mỗi lớp mở rộng hoặc thu hẹp mật độ xác suất bằng cách sử dụng Jacobian determinant của nó.
- Đảo ngược các phép biến đổi khi tính toán xác suất của dữ liệu quan sát được.
Bài hướng dẫn về normalizing flow của Pyro cung cấp các ví dụ thực tế về lấy mẫu và đánh giá mật độ. Mặc dù tên gọi nghe có vẻ tương tự, normalizing flows không giống với feature normalization hoặc batch normalization. Ở đây, “normalizing” có nghĩa là biến đổi một phân phối phức tạp thành một phân phối tiêu chuẩn.
Các thiết kế truyền thống yêu cầu các lớp khả nghịch có cấu trúc cẩn thận. Nghiên cứu Free-form Flows gần đây đã nới lỏng hạn chế này, trong khi một bài phân tích tính phổ quát về flow dựa trên coupling năm 2024 giải thích lý do tại sao các lớp affine coupling vẫn giữ được hiệu quả. (proceedings.mlr.press)
Link to this sectionCác ứng dụng trong thực tế#
- Industrial Anomaly Detection: Một flow có thể mô hình hóa các embedding từ các sản phẩm không lỗi và gắn cờ các mẫu bất thường trong quá trình kiểm tra trực quan. Tuy nhiên, likelihood đơn thuần không phải lúc nào cũng là chỉ số out-of-distribution đáng tin cậy, như đã được thể hiện trong nghiên cứu NeurIPS về lỗi likelihood của flow. Hãy xác thực kết quả bằng các số liệu đặc thù cho từng tác vụ và dữ liệu bất thường mang tính đại diện. (proceedings.neurips.cc)
- Medical Imaging: Mô hình flow siêu âm xuyên sọ năm 2024 sử dụng normalizing flows để tái tạo nhanh hơn và ước tính độ không đảm bảo. Các kỹ thuật tương tự có thể hỗ trợ medical image analysis nơi các dự đoán cần phạm vi tin cậy. (proceedings.mlr.press)
- Dữ liệu tổng hợp và hiệu chuẩn (Synthetic Data and Calibration): Các flow có thể tạo ra synthetic data có cấu trúc hoặc mô hình hóa các lỗi dự đoán. Công trình năm 2024 về normalizing flows cho conformal regression minh chứng cho các khoảng tin cậy thích ứng tốt hơn. Dữ liệu thị giác được tạo ra có thể được gán nhãn, huấn luyện và triển khai thông qua Ultralytics Platform. (proceedings.mlr.press)
Link to this sectionNormalizing Flows so với các phương pháp liên quan#
Flow matching thường huấn luyện một trường vận tốc liên tục với mục tiêu hồi quy, như đã được trình bày chi tiết trong hướng dẫn về Flow Matching của Meta. Ngược lại, normalizing flows truyền thống nhấn mạnh vào các phép biến đổi khả nghịch và tối ưu hóa likelihood trực tiếp. Rectified flow tìm kiếm các đường vận chuyển thẳng hơn, trong khi diffusion models tạo dữ liệu thông qua khử nhiễu lặp đi lặp lại. Normalizing flows cũng khác biệt với Generative Flow Networks, vốn học các chính sách để xây dựng các đối tượng rời rạc, và GANs, vốn thường không cung cấp likelihood chính xác. (ai.meta.com)
Link to this sectionNhững phát triển gần đây và các phương pháp tối ưu#
Các kiến trúc dựa trên Transformer đã làm mới mối quan tâm đối với các flow. Nghiên cứu TarFlow năm 2025 báo cáo về việc tạo ảnh cạnh tranh với các phương pháp diffusion, trong khi Jet hiện đại hóa coupling flows với Vision Transformers. Vào năm 2026, huấn luyện flow dựa trên hồi quy đã kết nối normalizing flows với các mục tiêu theo kiểu flow-matching, và SESaMo đã kết hợp các đối xứng vật lý chính xác. (proceedings.mlr.press)
Đối với các ứng dụng thị giác, một cách tiếp cận thực tế là mô hình hóa các embedding cấp cao thay vì pixel thô:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
embeddings = model.embed("https://ultralytics.com/images/bus.jpg")
print(embeddings[0].shape)Các embedding của Ultralytics YOLO26 này có thể trở thành đầu vào cho một flow được huấn luyện riêng biệt để ước tính mật độ hoặc chấm điểm bất thường. Hãy sử dụng data preprocessing cẩn thận và đánh giá likelihood cùng với hiệu suất hạ nguồn thay vì coi nó là một thước đo chất lượng hoàn chỉnh.






