Tháng trước, chức năng tạo hình ảnh của GPT-4o đã trở nên phổ biến, làm dấy lên nhiều cuộc thảo luận rộng rãi theo phong cách Ghibli, và cơn sốt AI tạo hình một lần nữa lan rộng trên Internet.
Đằng sau làn sóng này, không gian tiềm ẩn, với tư cách là động lực cốt lõi của các mô hình sáng tạo, đã khơi dậy trí tưởng tượng vô hạn trong việc sáng tạo hình ảnh và video.
Nhà nghiên cứu có tiếng Andrej Karpathy gần đây đã chuyển tiếp một bài đăng trên blog của nhà khoa học nghiên cứu Google DeepMind Sander Dielman, trong đó khám phá cách các mô hình tạo sinh (như mô hình tạo hình ảnh, âm thanh và video) có thể cải thiện hiệu quả và chất lượng tạo sinh bằng cách tận dụng không gian tiềm ẩn.
Liên kết blog: https://sander.ai/2025/04/15/latents.html
Kể từ khi gia nhập DeepMind vào năm 2015, Sander Dielman đã tham gia vào nhiều dự án bao gồm WaveNet, AlphaGo, Imagen 3 và Veo, bao gồm học độ sâu, mô hình tạo sinh và học biểu diễn.
Trong bài viết này, ông ví các biến tiềm ẩn với "bản chất của dữ liệu" - tạo ra hình ảnh, giọng nói, v.v. bằng cách nén thông tin phức tạp. Ông cũng cung cấp một so sánh chuyên sâu về các bộ mã hóa tự động biến thiên (VAE), mạng đối nghịch tạo sinh (GAN) và các mô hình khuếch tán, cho thấy cách các biến tiềm ẩn cho phép các mô hình này tạo ra nội dung thực tế.
Ví dụ, WaveNet, công nghệ mà Dielman giúp phát triển, đã đạt được khả năng tổng hợp giọng nói chất lượng cao bằng cách sử dụng các biến tiềm ẩn và đã được sử dụng rộng rãi trong nhiều sản phẩm của Google. Ông cũng sử dụng VQ-VAE làm ví dụ để minh họa cách không gian tiềm ẩn rời rạc có thể cải thiện hiệu quả tạo hình ảnh.
Bài viết này kết hợp độ sâu lý thuyết và hiểu biết trực quan, phù hợp với những độc giả quan tâm đến các mô hình tạo sinh để nghiên cứu sâu hơn.
công thức
Việc đào tạo một mô hình tạo sinh trong không gian tiềm ẩn thường được chia thành hai giai đoạn:
1. Huấn luyện bộ mã hóa tự động bằng cách sử dụng tín hiệu đầu vào. Bộ mã hóa tự động là một mạng nơ-ron bao gồm hai mạng con: bộ mã hóa và bộ giải mã. Bộ mã hóa ánh xạ tín hiệu đầu vào thành biểu diễn tiềm ẩn tương ứng (mã hóa) và bộ giải mã ánh xạ biểu diễn tiềm ẩn trở lại miền đầu vào (giải mã).
2. Đào tạo mô hình tạo ra biểu diễn tiềm ẩn. Bước này bao gồm việc sử dụng bộ mã hóa giai đoạn đầu để rút các biểu diễn tiềm ẩn của dữ liệu đào tạo và sau đó đào tạo mô hình tạo trực tiếp trên các biểu diễn tiềm ẩn này. Các mô hình sinh sản chính thống hiện nay thường là mô hình hồi quy tự động hoặc mô hình khuếch tán.
Sau khi bộ mã hóa tự động được đào tạo ở giai đoạn đầu tiên, các tham số của nó sẽ không thay đổi ở giai đoạn thứ hai: độ dốc của giai đoạn thứ hai của quá trình học không được truyền ngược trở lại bộ mã hóa. Nói cách khác, ở giai đoạn thứ hai, các tham số mã hóa bị đóng băng.
Lưu ý rằng phần giải mã của bộ mã hóa tự động không hoạt động trong giai đoạn đào tạo thứ hai, nhưng cần thiết khi lấy mẫu từ mô hình tạo, vì điều này sẽ tạo ra đầu ra trong không gian tiềm ẩn. Bộ giải mã cho phép chúng ta ánh xạ vectơ tiềm ẩn được tạo ra trở lại không gian đầu vào ban đầu.
Dưới đây là sơ đồ minh họa phương pháp đào tạo hai giai đoạn này. Mạng có các tham số được học ở giai đoạn tương ứng được đánh dấu bằng ký hiệu "∇", vì điều này hầu như luôn được thực hiện bằng phương pháp học dựa trên độ dốc. Các lưới có thông số đóng băng được đánh dấu bằng biểu tượng bông tuyết.
Phương pháp đào tạo cho mô hình sinh tiềm ẩn: đào tạo hai giai đoạn.
Có một số hàm mất mát khác nhau liên quan đến hai giai đoạn đào tạo, được đánh dấu màu đỏ trong hình:
Để đảm bảo bộ mã hóa và giải mã có thể chuyển đổi biểu diễn đầu vào thành vectơ tiềm ẩn và ngược lại với độ trung thực cao, nhiều hàm mất mát được sử dụng để hạn chế mối quan hệ giữa quá trình tái tạo (đầu ra của bộ giải mã) và đầu vào. Những mất mát này thường bao gồm mất mát hồi quy đơn giản, mất mát nhận thức và mất mát đối nghịch.
Để hạn chế khả năng của các vectơ tiềm ẩn, các hàm mất mát bổ sung thường được áp dụng trực tiếp vào chúng trong quá trình đào tạo, mặc dù không phải lúc nào cũng vậy. Chúng tôi gọi đây là tổn thất nút thắt cổ chai vì biểu diễn tiềm ẩn tạo thành nút thắt cổ chai trong mạng bộ mã hóa tự động.
Ở giai đoạn thứ hai, mô hình tạo ra được đào tạo bằng cách sử dụng hàm mất mát riêng của nó, tách biệt với hàm mất mát được sử dụng ở giai đoạn đầu tiên. Đây thường là tổn thất log-likelihood âm (đối với các mô hình hồi quy tự động) hoặc tổn thất khuếch tán.
Nhìn sâu hơn vào các hàm mất mát dựa trên tái thiết, chúng ta có những điều sau:
Mất mát hồi quy: Đôi khi được đo bằng lỗi tuyệt đối trung bình (MAE) trong không gian đầu vào (ví dụ: không gian pixel), nhưng phổ biến hơn là lỗi bình phương trung bình (MSE).
Mất mát về nhận thức: Có nhiều dạng khác nhau, nhưng thường sử dụng một mạng nơ- đóng băng thần kinh được đào tạo trước khác để rút các đặc điểm nhận thức. Hàm mất mát này khuyến khích các tính năng này giữa quá trình tái tạo và đầu vào để khớp nhau, do đó bảo toàn tốt hơn nội dung có tần suất cao thường bị mất mát hồi quy bỏ qua. Đối với xử lý hình ảnh, LPIPS là sự lựa chọn phổ biến.
Mất mát đối nghịch: Sử dụng mạng phân biệt được đào tạo kết hợp với bộ mã hóa tự động, tương tự như phương pháp của mạng đối nghịch tạo sinh (GAN). Mạng phân biệt có nhiệm vụ phân biệt giữa tín hiệu đầu vào thực và tín hiệu được tái tạo, trong khi bộ mã hóa tự động cố gắng đánh lừa mạng phân biệt để nó mắc lỗi. Mục tiêu là cải thiện tính chân thực của tín hiệu đầu ra, ngay cả khi điều đó có nghĩa là phải lệch xa hơn so với tín hiệu đầu vào. Khi bắt đầu huấn luyện, khả năng mất mát đối nghịch thường bị vô hiệu hóa tạm thời để tránh tình trạng mất ổn định trong quá trình huấn luyện.
Dưới đây là sơ đồ chi tiết hơn cho thấy giai đoạn đào tạo đầu tiên và hiển thị rõ ràng các mạng khác thường đóng vai trò trong quá trình này.
Sau đây là phiên bản chi tiết hơn về giai đoạn đào tạo đầu tiên, hiển thị tất cả các mạng tham gia.
Không cần phải nói thì ai cũng biết rằng phương pháp chung này thường có nhiều biến thể trong các ứng dụng như âm thanh và video, nhưng tôi đã cố gắng tóm tắt những yếu tố chính phổ biến trong hầu hết các ứng dụng thực tế hiện đại.
Chúng tôi đã đến đây như thế nào
Ngày nay, hai mô hình mô hình tạo sinh chính, mô hình hồi quy tự động và mô hình khuếch tán, ban đầu được áp dụng cho các tín hiệu nhận thức kỹ thuật số "thô", cụ thể là pixel và dạng sóng. Ví dụ, PixelRNN và PixelCNN tạo ra hình ảnh theo từng pixel, trong khi WaveNet và SampleRNN tạo ra dạng sóng âm thanh theo từng mẫu. Về mặt mô hình khuếch tán, các công trình ban đầu giới thiệu và thiết lập mô hình này tạo ra hình ảnh thông qua các điểm ảnh, trong khi các nghiên cứu ban đầu như WaveGrad và DiffWave tạo ra âm thanh bằng cách tạo ra dạng sóng.
Tuy nhiên, mọi người sớm nhận ra rằng chiến lược này đặt ra những thách thức đáng kể mở rộng. Lý do chính có thể được tóm tắt như sau: hầu hết các tín hiệu nhận được đều bao gồm tiếng ồn không thể nhận thấy. Nói cách khác, trong tổng lượng thông tin trong một tín hiệu nhất định, chỉ có một phần nhỏ thực sự ảnh hưởng đến nhận thức của chúng ta. Do đó, điều rất quan trọng là đảm bảo rằng các mô hình tạo sinh của chúng ta có thể sử dụng hiệu quả năng lực của mình và tập trung vào việc mô hình hóa phần thông tin nhỏ này. Điều này cho phép chúng ta sử dụng các mô hình tạo ra nhỏ hơn, nhanh hơn và rẻ hơn mà không làm giảm chất lượng nhận thức.
Mô hình hồi quy tự động tiềm ẩn
Các mô hình hồi quy tự động hình ảnh đã có bước tiến vượt bậc với việc xuất bản bài báo mang tính bước ngoặt VQ-VAE. Bài báo này đề xuất một chiến lược thực tế để học các biểu diễn rời rạc bằng cách sử dụng mạng nơ-ron bằng cách chèn một lớp nút thắt lượng tử hóa vectơ vào bộ mã hóa tự động. Để tìm hiểu biểu diễn tiềm ẩn rời rạc của một hình ảnh, bộ mã hóa tích chập với nhiều giai đoạn lấy mẫu xuống sẽ tạo ra một lưới các vectơ không gian có độ phân giải thấp hơn 4 lần so với hình ảnh đầu vào (chiều cao và chiều rộng bằng 1/4, do đó ít vị trí không gian hơn 16 lần), sau đó được lượng tử hóa thông qua một lớp nút thắt.
Bây giờ, thay vì tạo hình ảnh theo từng pixel, chúng ta có thể sử dụng mô hình như PixelCNN để tạo từng vectơ tiềm ẩn một. Điều này làm giảm đáng kể số bước lấy mẫu hồi quy tự động cần thiết, nhưng quan trọng hơn, việc đo lường khả năng mất mát trong không gian tiềm ẩn thay vì không gian pixel giúp tránh lãng phí dung lượng mô hình vào nhiễu không thể nhận thấy. Về cơ bản, đây là một hàm mất mát khác tập trung nhiều hơn vào nội dung tín hiệu có liên quan đến nhận thức, vì nhiều nội dung tín hiệu không liên quan đến nhận thức không có trong vectơ tiềm ẩn (xem bài đăng trên blog của tôi về tính đại diện để biết thêm thông tin về vấn đề này). Bài báo cho thấy hình ảnh có kích thước 128×128 được tạo ra từ một mô hình được đào tạo trên ImageNet, độ phân giải chỉ có thể đạt được bằng GAN tại thời điểm đó.
Sự rời rạc đóng vai trò quan trọng trong thành công của nó vì các mô hình hồi quy tự động vào thời điểm đó hoạt động tốt hơn với các đầu vào rời rạc. Nhưng có lẽ quan trọng hơn, cấu trúc không gian của biểu diễn tiềm ẩn giúp việc điều chỉnh các mô hình dựa trên pixel hiện có trở nên rất dễ dàng. Trước đây, bộ mã hóa tự động biến thiên (VAE) thường nén toàn bộ hình ảnh thành một vectơ tiềm ẩn duy nhất, tạo ra biểu diễn không có bất kỳ cấu trúc tôpô nào. Cấu trúc lưới của các biểu diễn tiềm ẩn hiện đại phản ánh cấu trúc lưới của các biểu diễn đầu vào “gốc” và kiến trúc mạng của các mô hình sinh ra khai thác cấu trúc này để đạt hiệu quả (ví dụ: thông qua các lớp tích chập, tuần hoàn hoặc chú ý).
VQ-VAE 2 tiếp tục tăng độ phân giải lên 256×256 và cải thiện đáng kể chất lượng hình ảnh bằng cách mở rộng thang đo và sử dụng lưới tiềm ẩn đa cấp (được tổ chức theo cấu trúc phân cấp). Sau đó, VQGAN kết hợp cơ chế học đối nghịch của GAN với kiến trúc VQ-VAE. Điều này làm tăng hệ số giảm độ phân giải từ 4x lên 16x (ít hơn 256x vị trí không gian so với đầu vào pixel) trong khi vẫn tạo ra hình ảnh tái tạo sắc nét và chân thực. Sự mất mát đối nghịch đóng vai trò quan trọng trong trong đó, khuyến khích tạo ra các đầu ra bộ giải mã thực tế ngay cả khi chúng không thể theo sát tín hiệu đầu vào ban đầu.
VQGAN là trọng tâm trong tiến trình phát triển nhanh chóng của chúng tôi trong việc tạo mô hình tạo tín hiệu nhận thức trong năm năm qua. Tác động của nó không thể được cường điệu hóa — tôi thậm chí còn cho rằng đây có thể là lý do chính khiến GAN giành được “Giải thưởng Thử thách thời gian” tại hội nghị NeurIPS năm 2024. “Sự hỗ trợ” mà bài báo VQGAN cung cấp đã giúp GAN duy trì được sự liên quan ngay cả sau khi chúng gần như bị thay thế hoàn toàn bởi các mô hình khuếch tán cho nhiệm vụ cơ bản là tạo ra phương tiện truyền thông.
Điều đáng nói là nhiều phương pháp được đề cập ở phần trước đã được hình thành trong bài viết này. Ngày nay, các trình tạo lặp thường không tự hồi quy (Parti, mô hình Aurora gần đây của xAI và GPT-4o của OpenAI là những ngoại lệ đáng chú ý) và nút thắt lượng tử hóa đã được thay thế, nhưng mọi thứ khác vẫn còn đó. Đặc biệt, sự kết hợp giữa mất mát hồi quy đơn giản, mất mát nhận thức và mất mát đối nghịch vẫn tồn tại mặc dù có vẻ phức tạp. Trong lĩnh vực máy học đang phát triển nhanh chóng, tính bền bỉ như thế này cực kỳ hiếm — có lẽ chỉ có kiến trúc Transformer hầu như không thay đổi và trình tối ưu hóa Adam mới có thể sánh kịp!
(Mặc dù biểu diễn rời rạc rất quan trọng trong việc tạo ra các mô hình hồi quy tự động tiềm ẩn hữu ích trong các ứng dụng quy mô lớn, tôi muốn chỉ ra rằng các mô hình hồi quy tự động trong không gian liên tục gần đây cũng đã đạt được kết quả tốt.)
Khả năng lây lan tiềm năng
Khi các mô hình hồi quy tự động tiềm ẩn nổi lên vào cuối những năm 2010 và các mô hình khuếch tán đạt được bước đột phá vào đầu những năm 2020, việc kết hợp thế mạnh của hai phương pháp này trở thành bước tiếp theo tự nhiên. Giống như nhiều ý tưởng khác, chúng tôi đã thấy sê-ri các bài báo khám phá chủ đề này được công bố trên arXiv vào nửa cuối năm 2021. Bài báo nổi tiếng nhất trong đó là "Tổng hợp hình ảnh có độ phân giải cao với mô hình khuếch tán tiềm ẩn" của Rombach và cộng sự, những người đã sử dụng kết quả nghiên cứu VQGAN trước đó và thay thế Transformer hồi quy tự động bằng mô hình khuếch tán dựa trên UNet, tạo thành cơ sở của mô hình khuếch tán ổn định. Các công trình liên quan khác, mặc dù có quy mô nhỏ hơn hoặc nhắm vào dữ liệu không phải hình ảnh, cũng đã tiến hành các cuộc khám phá tương tự.
Phải mất một thời gian để phương pháp này trở nên phổ biến. Các mô hình xử lý hình ảnh thương mại ban đầu sử dụng cái gọi là chuỗi phân giải, trong đó mô hình khuếch tán cơ sở trực tiếp tạo ra hình ảnh có độ phân giải thấp trong không gian điểm ảnh và một hoặc nhiều mô hình khuếch tán lấy mẫu cao tạo ra đầu ra có độ phân giải cao dựa trên đầu vào có độ phân giải thấp. Các ví dụ điển hình bao gồm DALL-E 2 và Imagen 2. Sau khi mô hình khuếch tán ổn định ra đời, hầu hết trong số họ chuyển sang phương pháp dựa trên không gian tiềm ẩn (bao gồm DALL-E 3 và Imagen 3).
Một sự khác biệt chính giữa mô hình hồi quy tự động và mô hình khuếch tán là hàm mất mát được sử dụng để đào tạo. Các mô hình hồi quy tự động tương đối đơn giản để đào tạo, bao gồm việc tối đa hóa khả năng xảy ra (mặc dù đã thử phương pháp khác). Mô hình khuếch tán phức tạp hơn ở chỗ hàm mất mát là kỳ vọng trên tất cả các mức nhiễu và tỷ trọng tương đối của các mức nhiễu này ảnh hưởng đáng kể đến những gì mô hình học được. Điều này cung cấp cơ sở để giải thích sự mất mát khuếch tán điển hình như một hàm mất mát nhận thức tập trung nhiều hơn vào nội dung tín hiệu nổi bật hơn về mặt nhận thức.
Thoạt nhìn, điều này khiến phương pháp hai giai đoạn có vẻ thừa vì nó hoạt động theo cách tương tự như hàm mất mát khuếch tán, lọc bỏ nội dung tín hiệu không liên quan về mặt nhận thức và tránh lãng phí dung lượng mô hình. Nhưng trên thực tế, hai cơ chế này khá bổ sung cho nhau vì những lý do sau:
Có vẻ như có sự khác biệt cơ bản về cách thức nhận thức hoạt động ở quy mô nhỏ và quy mô lớn, đặc biệt là trong lĩnh vực thị giác. Ví dụ, kết cấu mô hình và các chi tiết có độ chi tiết cao cần được xử lý riêng biệt, trong khi phương pháp đối nghịch có thể phù hợp hơn. Tôi sẽ thảo luận chi tiết hơn về vấn đề này ở phần dưới.
Việc đào tạo các mô hình khuếch tán lớn và mạnh mẽ đòi hỏi nhiều tính toán và việc sử dụng không gian tiềm ẩn nhỏ gọn hơn sẽ tránh được việc xử lý các biểu diễn đầu vào cồng kềnh, giúp giảm yêu cầu về bộ nhớ và tăng tốc quá trình đào tạo và lấy mẫu.
Thực sự đã có một số công trình ban đầu thử nghiệm phương pháp toàn diện, kết hợp học các biểu diễn tiềm ẩn và các tiên nghiệm khuếch tán, nhưng phương pháp này không được ưa chuộng. Mặc dù việc tránh phụ thuộc trình tự cho quá trình đào tạo nhiều giai đoạn là điều mong muốn theo góc độ thực tế, nhưng những lợi thế về mặt nhận thức và tính toán khiến cho nỗ lực này trở nên xứng đáng.
Tại sao lại cần có hai giai đoạn?
Như đã đề cập trước đó, điều quan trọng là phải đảm bảo rằng các mô hình tạo tín hiệu nhận thức có thể sử dụng hiệu quả năng lực của chúng, vì điều này sẽ giúp chúng tiết kiệm chi phí hơn. Về cơ bản, đây chính là mục tiêu mà phương pháp hai giai đoạn của chúng tôi đạt được: bằng cách rút một biểu diễn nhỏ gọn hơn tập trung vào các phần có liên quan về mặt nhận thức của nội dung tín hiệu và mô hình hóa biểu diễn này thay vì biểu diễn ban đầu, chúng tôi có thể tạo ra các mô hình tạo sinh tương đối nhỏ nhưng hoạt động tốt hơn nhiều vượt qua kích thước của chúng.
Việc phát hiện ra rằng thông tin trong hầu hết các tín hiệu nhận thức thực chất không quan trọng về mặt nhận thức không phải là điều mới mẻ: đây cũng là ý tưởng chính đằng sau kỹ thuật nén mất dữ liệu, cho phép chúng ta lưu trữ và truyền các tín hiệu này với chi phí rẻ hơn. Các thuật toán nén như JPEG và MP3 khai thác tính dư thừa trong tín hiệu và thực tế là chúng ta nhạy cảm hơn với tần số thấp so với tần số cao, do đó biểu diễn tín hiệu nhận được với ít bit hơn. (Có những hiệu ứng nhận thức khác, chẳng hạn như che lấp thính giác, nhưng độ nhạy tần số không đồng nhất là quan trọng nhất.)
Vậy tại sao chúng ta không xây dựng các mô hình tạo sinh dựa trên các kỹ thuật nén có mất mát này? Đây không phải là một ý tưởng tồi và một số nghiên cứu đã sử dụng các thuật toán này hoặc một số thành phần của chúng cho mục đích này. Nhưng theo lẽ tự nhiên, chúng ta có xu hướng giải quyết vấn đề bằng nhiều phương pháp máy học hơn để xem liệu chúng ta có thể vượt qua các thuật toán "được thiết kế thủ công" này hay không.
Đây không chỉ là sự kiêu ngạo của các nhà nghiên cứu máy học: thực ra có một lý do rất chính đáng để sử dụng các biểu diễn tiềm ẩn đã học thay vì các biểu diễn nén có sẵn. Không giống như thiết lập nén, trong đó nhỏ hơn là tốt hơn và kích thước là yếu tố duy nhất quan trọng, mục tiêu của mô hình tạo sinh áp đặt thêm các ràng buộc: một số biểu diễn dễ mô hình hóa hơn những biểu diễn khác. Điều quan trọng là một số cấu trúc được bảo toàn trong các biểu diễn, chúng ta có thể khai thác điều này bằng cách cung cấp cho mô hình sinh ra một độ lệch quy nạp thích hợp. Yêu cầu này tạo ra sự đánh đổi giữa chất lượng tái tạo và khả năng mô hình hóa biểu diễn tiềm ẩn, mà chúng ta sẽ khám phá trong phần tiếp theo.
Một lý do quan trọng khác cho hiệu quả của biểu diễn tiềm ẩn là cách chúng khai thác thực tế là nhận thức của chúng ta hoạt động khác nhau ở các quy mô khác nhau. Trong lĩnh vực âm thanh, điều này rất rõ ràng: những thay đổi nhanh chóng về biên độ tạo ra nhận thức về cao độ, trong khi những thay đổi ở thang thời gian thô hơn (như nhịp trống) có thể được phân biệt riêng lẻ. Ít ai biết rằng hiện tượng này cũng đóng nhân vật quan trọng trong nhận thức thị giác: sự biến động cục bộ nhanh chóng về màu sắc và cường độ được coi là kết cấu. Tôi đã cố gắng giải thích điều này trên Twitter và tôi sẽ diễn giải lại ở đây:
Một cách để nghĩ về nó là kết cấu so với cấu trúc, hay những gì mọi người đôi khi gọi là vật chất so với vật thể.
Trong hình ảnh một chú chó trên cánh đồng, kết cấu cỏ (vật liệu) có độ entropy cao, nhưng chúng ta không giỏi trong việc nhận biết sự khác biệt giữa các trường hợp của kết cấu này, chúng ta chỉ nhận biết nó là "cỏ" không đếm được. Chúng ta không cần phải nhìn vào từng ngọn cỏ để chắc chắn rằng chúng ta đang nhìn vào một cánh đồng.
Những khác biệt nhỏ trong cách thực hiện kết cấu này thường không đáng chú ý trừ khi các hình ảnh được xếp chồng trực tiếp lên nhau. Thật thú vị khi thử nghiệm với bộ mã hóa tự động đối nghịch: khi so sánh hình ảnh gốc và hình ảnh được tái tạo cạnh nhau, chúng thường trông giống hệt nhau. Nhưng nếu bạn chồng chúng lên nhau và chuyển đổi qua lại, bạn thường có thể thấy sự khác biệt giữa các hình ảnh, đặc biệt là ở những vùng có nhiều kết cấu.
Tình hình lại khác đối với các vật thể (vật hữu hình), chẳng hạn như mắt chó, khi sự khác biệt ở mức độ tương tự được nhận thấy ngay lập tức. Một biểu diễn tiềm ẩn tốt sẽ trừu tượng hóa kết cấu nhưng cố gắng bảo toàn cấu trúc. Điều này cho phép thể hiện kết cấu cỏ trong quá trình tái tạo khác với bản gốc mà không ảnh hưởng đáng kể đến độ trung thực của quá trình tái tạo. Điều này cho phép bộ mã hóa tự động loại bỏ nhiều mẫu (tức là các biểu diễn khác của cùng một kết cấu) và biểu diễn ngắn gọn hơn sự hiện diện của kết cấu đó trong không gian tiềm ẩn của nó.
Đổi lại, điều này cũng sẽ giúp việc tạo mô hình sinh sản trong không gian tiềm ẩn trở nên dễ dàng hơn, vì giờ đây nó có thể mô hình hóa sự có mặt hoặc không có kết cấu mà không cần phải nắm bắt tất cả các biến thể phức tạp liên quan đến kết cấu đó.
Hình ảnh một chú chó trên cánh đồng. Nửa trên của hình ảnh có entropy thấp: các điểm ảnh tạo nên bầu trời có thể dễ dàng được dự đoán từ các điểm ảnh lân cận. Nửa dưới có giá trị entropy cao: kết cấu của cỏ khiến việc dự đoán các điểm ảnh gần đó trở nên khó khăn.
Do hiệu quả đáng kể mà phương pháp hai giai đoạn mang lại, chúng tôi có vẻ sẵn sàng chấp nhận sự phức tạp bổ sung mà nó mang lại—ít nhất là hiện tại. Sự gia tăng hiệu quả này không chỉ giúp việc đào tạo diễn ra nhanh hơn và rẻ hơn mà quan trọng hơn là còn giúp tăng tốc độ lấy mẫu đáng kể. Việc giảm chi phí đáng kể này rất được hoan nghênh đối với các mô hình tạo ra thực hiện tinh chỉnh lặp đi lặp lại, vì việc tạo một mẫu duy nhất đòi hỏi lần lần chuyển tiếp qua mô hình.
Sự đánh đổi giữa chất lượng tái thiết và khả năng mô hình hóa
Việc khám phá sâu hơn sự khác biệt giữa nén mất dữ liệu và học biểu diễn tiềm ẩn là rất đáng giá. Mặc dù máy học có thể được sử dụng cho cả hai mục đích, nhưng hầu hết các thuật toán nén có mất dữ liệu được sử dụng rộng rãi hiện nay đều không sử dụng máy học. Các thuật toán này thường dựa trên lý thuyết về tỷ lệ méo tiếng, lý thuyết này chính thức hóa và định lượng mối quan hệ giữa mức độ nén tín hiệu (tỷ lệ) và mức độ cho phép tín hiệu giải nén lệch so với tín hiệu gốc (méo tiếng).
Đối với việc học biểu diễn tiềm ẩn, chúng ta có thể mở rộng sự đánh đổi này bằng cách giới thiệu khái niệm khả năng mô hình hóa hoặc khả năng học, mô tả mức độ khó khăn mà một mô hình sinh ra có thể nắm bắt được sự phân bố biểu diễn này. Điều này dẫn đến sự đánh đổi giữa khả năng mô hình hóa tỷ lệ biến dạng ba chiều, có liên quan chặt chẽ đến sự đánh đổi giữa tính hữu ích của tỷ lệ biến dạng được Tschannen và cộng sự thảo luận. trong bối cảnh học tập biểu diễn. (Một mở rộng phổ biến khác của sự đánh đổi này trong bối cảnh học máy là sự đánh đổi nhận thức về tốc độ-biến dạng, phân biệt rõ ràng giữa độ trung thực của quá trình tái tạo và chất lượng nhận thức. Để tránh phức tạp quá mức, tôi sẽ không đưa ra sự phân biệt này ở đây mà thay vào đó, xem sự biến dạng là một đại lượng được đo trong không gian nhận thức, thay vì không gian đầu vào.)
Không rõ ràng ngay tại sao đây lại là sự đánh đổi — tại sao khả năng mô hình hóa lại xung đột với sự biến dạng? Để hiểu điều này, hãy xem xét cách hoạt động của thuật toán nén có mất dữ liệu: chúng khai thác cấu trúc tín hiệu đã biết để giảm sự dư thừa. Trong quá trình này, cấu trúc này thường bị loại bỏ khỏi biểu diễn nén vì thuật toán giải nén có thể tái tạo lại cấu trúc đó. Nhưng cấu trúc trong tín hiệu đầu vào cũng được khai thác rộng rãi trong các mô hình tạo sinh hiện đại, ví dụ dưới dạng độ lệch cảm ứng kiến trúc khai thác các đặc tính của tín hiệu như tính biến thiên như phép tịnh tiến hoặc các tính năng cụ thể của phổ tần số.
Nếu chúng ta có một thuật toán kỳ diệu có thể loại bỏ hiệu quả hầu hết mọi sự dư thừa khỏi tín hiệu đầu vào, chúng ta sẽ khiến các mô hình tạo ra tín hiệu rất khó nắm bắt được Đột biến phi cấu trúc còn lại trong tín hiệu nén. Điều này hoàn toàn ổn nếu mục tiêu của chúng ta chỉ là nén, nhưng không ổn nếu chúng ta đang thực hiện mô hình tạo sinh. Do đó, chúng ta phải tìm được sự cân bằng: một thuật toán học biểu diễn tiềm ẩn tốt sẽ phát hiện và loại bỏ một số phần dư thừa, nhưng đồng thời vẫn bảo toàn một số cấu trúc tín hiệu để vẫn còn thứ gì đó để mô hình sinh ra khai thác.
Một ví dụ tồi trong bối cảnh này là mã hóa entropy, thực chất là phương pháp nén không mất dữ liệu, nhưng cũng được sử dụng làm giai đoạn cuối cùng trong nhiều lược đồ nén mất dữ liệu (như mã hóa Huffman trong JPEG/PNG hoặc mã hóa số học trong H.265). Thuật toán mã hóa entropy làm giảm sự dư thừa bằng cách gán các biểu diễn ngắn hơn cho các mẫu thường xuyên xảy ra. Việc này không xóa bỏ bất kỳ thông tin nào, nhưng nó phá hủy cấu trúc. Do đó, những thay đổi nhỏ trong tín hiệu đầu vào có thể dẫn đến những thay đổi lớn hơn trong tín hiệu nén tương ứng, khiến việc mô hình hóa các chuỗi mã hóa entropy trở nên khó khăn hơn nhiều.
Ngược lại, biểu diễn tiềm ẩn có xu hướng bảo toàn lượng lớn cấu trúc tín hiệu. Hình sau đây cho thấy hình ảnh trực quan về biểu diễn tiềm ẩn của khuếch tán ổn định đối với một số hình ảnh (trích từ bài báo EQ-VAE). Có thể dễ dàng nhận dạng các loài động vật chỉ bằng cách quan sát trực quan các hình ảnh đại diện tiềm năng. Nhìn lên giống như những hình ảnh có độ phân giải thấp, nhiễu và màu sắc bị méo mó. Đây là lý do tại sao tôi thích nghĩ về biểu diễn tiềm ẩn của hình ảnh chỉ là "điểm ảnh nâng cao" thu thập một số thông tin bổ sung mà điểm ảnh thông thường không thu thập được, nhưng về cơ bản vẫn hoạt động giống như điểm ảnh.
Hình ảnh trực quan về biểu diễn tiềm ẩn của khuếch tán ổn định rút từ một số hình ảnh, lấy từ bài báo EQ-VAE. Ba thành phần chính đầu tiên của không gian tiềm ẩn tương ứng với các kênh màu. Qua kiểm tra trực quan các biểu diễn tiềm ẩn, các loài động vật trong hình ảnh vẫn có thể nhận dạng được, điều này cho thấy bộ mã hóa vẫn giữ nguyên được lượng lớn cấu trúc của tín hiệu gốc.
Có thể nói, những biểu diễn tiềm năng này ở cấp độ khá thấp. Bộ mã hóa tự động biến thiên truyền thống (VAE) nén toàn bộ hình ảnh thành một vectơ đặc trưng, thường tạo ra biểu diễn cấp cao có thể được thao tác ngữ nghĩa, trong khi các biểu diễn tiềm ẩn hiện đại cho mô hình hóa hình ảnh tạo ra thực sự gần với cấp độ pixel hơn. Chúng có dung lượng cao hơn và kế thừa cấu trúc lưới của đầu vào (mặc dù có độ phân giải thấp hơn). Mỗi vectơ tiềm ẩn trong lưới có thể tóm tắt một số đặc điểm hình ảnh cấp thấp, chẳng hạn như kết cấu, nhưng nó không nắm bắt được ngữ nghĩa của nội dung hình ảnh. Đây cũng là lý do tại sao hầu hết các bộ mã hóa tự động không sử dụng bất kỳ tín hiệu điều kiện bổ sung nào như mô tả văn bản, vì các tín hiệu này chủ yếu hạn chế cấu trúc cấp cao (mặc dù có một số ngoại lệ).
Khả năng kiểm soát
Hai tham số thiết kế chính kiểm soát dung lượng của không gian tiềm ẩn với cấu trúc lưới: hệ số lấy mẫu xuống và số kênh biểu diễn. Nếu biểu diễn tiềm ẩn là rời rạc, kích thước sổ mã cũng quan trọng vì nó áp đặt giới hạn cứng về số bit thông tin mà biểu diễn tiềm ẩn có thể chứa. (Bên cạnh đó, các chiến lược chính quy hóa cũng đóng vai trò quan trọng, nhưng chúng ta sẽ thảo luận về tác động của chúng ở phần tiếp theo.)
Ví dụ, bộ mã hóa có thể nhận hình ảnh 256×256 pixel làm đầu vào và tạo ra lưới vectơ tiềm ẩn liên tục 32×32 với 8 kênh. Điều này có thể đạt được bằng cách sử dụng một chồng các phép tích chập có bước nhảy hoặc một Visual Transformer (ViT) với kích thước bản vá là 8. Hệ số lấy mẫu giảm làm giảm chiều rộng và chiều cao, do đó, số vectơ tiềm ẩn ít hơn 64 lần so với pixel — nhưng mỗi vectơ tiềm ẩn có 8 thành phần, trong khi mỗi pixel chỉ có 3 (RGB).
Nhìn chung, số lượng thành phần tenxơ (tức là số dấu phẩy động) của biểu diễn tiềm ẩn nhỏ hơn tenxơ biểu diễn hình ảnh gốc. Tôi muốn gọi con số này là hệ số giảm kích thước tenxơ (TSR) để tránh nhầm lẫn với các hệ số giảm mẫu theo không gian hoặc thời gian.
Sơ đồ hiển thị các chiều đầu vào và chiều tiềm ẩn được mô tả trong văn bản.
Nếu chúng ta tăng hệ số lấy mẫu xuống của bộ mã hóa lên gấp 2 lần, kích thước của lưới tiềm ẩn sẽ trở thành 16×16 và sau đó chúng ta có thể tăng số kênh lên gấp 4 lần thành 32 kênh để duy trì cùng một TSR (Tổng dự phòng không gian). Đối với một TSR nhất định, thường có một số cấu hình khác nhau có hiệu suất tương đương nhau về mặt chất lượng tái tạo, đặc biệt trong trường hợp video mà chúng ta có thể kiểm soát riêng các yếu tố lấy mẫu xuống theo thời gian và không gian. Tuy nhiên, nếu chúng ta thay đổi TSR (bằng cách thay đổi hệ số lấy mẫu xuống mà không thay đổi số kênh hoặc ngược lại), điều này thường có tác động sâu sắc đến chất lượng tái tạo và khả năng mô hình hóa.
Xét về mặt toán học thuần túy, điều này thật đáng ngạc nhiên: nếu các biến tiềm ẩn có giá trị thực, thì kích thước của lưới và số kênh sẽ không thành vấn đề, vì khả năng thông tin của một số duy nhất đã là vô hạn (điều này được chứng minh khéo léo bằng công thức tự tham chiếu của Tupper). Nhưng tất nhiên, có những hạn chế thực tế giới hạn lượng thông tin mà một thành phần riêng lẻ của biểu diễn tiềm ẩn có thể mang theo:
Chúng ta sử dụng số dấu phẩy động để biểu diễn số thực và độ chính xác của số dấu phẩy động bị hạn chế;
Trong nhiều công thức, bộ mã hóa thêm một lượng nhiễu nhất định, làm hạn chế thêm độ chính xác hiệu quả;
Mạng nơ-ron không giỏi trong việc học các hàm phi tuyến tính cao của dữ liệu đầu vào.
Lý do đầu tiên rất rõ ràng: nếu một số được biểu diễn bằng 32 bit (độ chính xác đơn), thì nó chỉ có thể truyền tải tối đa 32 bit thông tin. Việc thêm nhiễu làm giảm thêm số lượng bit có thể sử dụng vì một số chữ số bậc thấp bị nhiễu che khuất.
Hạn chế cuối cùng nghiêm ngặt hơn nhưng hiện tại vẫn chưa được hiểu rõ: Mục đích của mạng nơ-ron không phải là để học các hàm phi tuyến tính sao? Điều này đúng, nhưng mạng lưới nơ-ron có xu hướng học các chức năng tương đối đơn giản. Thông thường đây là một lợi thế hơn là một bất lợi, vì nó làm tăng khả năng hàm đã học có thể tổng quát hóa thành dữ liệu chưa biết. Nhưng nếu chúng ta muốn đưa lượng lớn thông tin vào một vài con số, điều này có thể đòi hỏi mức độ phi tuyến tính cao. Mặc dù có phương pháp giúp mạng nơ-ron học các hàm phi tuyến tính phức tạp hơn (ví dụ: tính năng Fourier), nhưng trong trường hợp của chúng tôi, các ánh xạ phi tuyến tính cao thực sự có tác động tiêu cực đến khả năng mô hình hóa: chúng che giấu cấu trúc tín hiệu, do đó đây không phải là giải pháp tốt. Biểu diễn với nhiều thành phần hơn sẽ mang lại sự cân bằng tốt hơn.
Nguyên tắc tương tự cũng áp dụng cho các biểu diễn tiềm ẩn rời rạc: sự rời rạc đặt ra giới hạn trên cứng nhắc cho nội dung thông tin của biểu diễn, nhưng liệu khả năng này có thể được sử dụng hiệu quả hay không chủ yếu phụ thuộc vào khả năng biểu đạt của bộ mã hóa và mức độ hiệu quả của chiến lược lượng tử hóa trong thực tế (tức là liệu có đạt được mức sử dụng sổ mã cao hay không bằng cách sử dụng các từ mã khác nhau một cách đồng đều nhất có thể). Nút thắt cổ chai VQ ban đầu vẫn là nút thắt cổ chai VQ trong VQ-VAE, nhưng phương pháp gần đây cung cấp ước tính độ dốc tốt hơn thông qua "thủ thuật xoay" có vẻ hứa hẹn về mặt sử dụng sổ mã và hiệu suất đầu cuối. Một số lược đồ thay thế không sử dụng các sổ mã được học một cách rõ ràng cũng dần được chú ý, chẳng hạn như lượng tử hóa vô hướng hữu hạn (FSQ), lượng tử hóa không cần tra cứu (LFQ) và lượng tử hóa hình cầu nhị phân (BSQ).
Tóm lại, việc lựa chọn TSR (Tổng dự phòng không gian) phù hợp là rất quan trọng: biểu diễn tiềm ẩn lớn hơn dẫn đến chất lượng tái tạo tốt hơn (tốc độ cao hơn, độ méo thấp hơn) nhưng có thể có tác động tiêu cực đến khả năng mô hình hóa. Biểu diễn lớn hơn có nghĩa là có nhiều thông tin hơn để mô hình hóa, do đó đòi hỏi mô hình tạo ra phải có dung lượng cao hơn. Trong thực tế, sự đánh đổi này thường được điều chỉnh theo kinh nghiệm. Đây có thể là một quá trình tốn kém vì hiện tại không có chỉ báo đáng tin cậy và ít tốn kém về mặt tính toán cho khả năng mô hình hóa. Do đó, một mô hình tạo đủ lớn cần phải được đào tạo nhiều lần để có được kết quả có ý nghĩa.
Hansen-Estruch và cộng sự gần đây đã tiến hành một cuộc khám phá sâu rộng về khả năng không gian tiềm ẩn và các yếu tố ảnh hưởng khác nhau của nó (những phát hiện chính của họ được nêu rõ trong văn bản). Có xu hướng tăng hệ số lấy mẫu không gian và tăng số kênh tương ứng để duy trì TSR cho việc tạo hình ảnh và video ở độ phân giải cao hơn (ví dụ: 32× trong LTX-Video, 44× trong GAIA-2 và 64× trong DCAE).
Phân loại và định hình không gian tiềm năng
Cho đến nay, chúng ta đã thảo luận về khả năng của một biểu diễn tiềm năng, tức là có bao nhiêu bit thông tin nên được chứa trong trong đó. Điều quan trọng nữa là phải kiểm soát chính xác những bit thông tin nào trong tín hiệu đầu vào gốc sẽ được bảo toàn trong biểu diễn tiềm ẩn và cách thông tin này được trình bày. Tôi gọi việc trước đây là chải chuốt không gian tiềm ẩn và việc sau là định hình không gian tiềm ẩn — một sự phân biệt tinh tế nhưng quan trọng. Nhiều chiến lược chính quy hóa đã được thiết kế để định hình, tổ chức và kiểm soát khả năng biểu diễn tiềm ẩn. Tôi sẽ tập trung vào trường hợp liên tục, nhưng nhiều cân nhắc trong đó cũng áp dụng tương tự cho các biểu diễn tiềm ẩn rời rạc.
Biến tiềm ẩn được điều chỉnh theo VQGAN và KL
Rombach và cộng sự đề xuất hai chiến lược chính quy hóa cho không gian tiềm ẩn liên tục:
Theo khái niệm thiết kế VQGAN ban đầu, chúng tôi diễn giải lại bước lượng tử hóa như một phần của bộ giải mã (thay vì bộ mã hóa) để có được biểu diễn tiềm ẩn liên tục (tức là chính quy hóa VQ, VQ-reg);
Loại bỏ hoàn toàn hoạt động lượng tử hóa trong VQGAN và thay vào đó đưa vào một thuật ngữ hình phạt phân kỳ KL (tức là chính quy hóa KL, KL-reg) giống như bộ mã hóa tự động biến thiên tiêu chuẩn (VAE).
Ý tưởng thực hiện những thay đổi tối thiểu đối với VQGAN để phù hợp với Mô hình khuếch tán nhằm tạo ra các biến tiềm ẩn liên tục là một khéo léo: các cấu trúc như vậy hoạt động tốt trong các mô hình hồi quy tự động và bước lượng tử hóa trong quá trình đào tạo cũng hoạt động như một loại "van an toàn" để ngăn các biến tiềm ẩn mang quá nhiều thông tin.
Tuy nhiên, như chúng ta đã thảo luận trước đây, cơ chế này có thể không thực sự cần thiết trong hầu hết các trường hợp, vì khả năng biểu đạt của bộ mã hóa thường là nút thắt cổ chai của hiệu suất mô hình tạo ra.
Ngược lại, chính sách KL là một thành phần cốt lõi của kiến trúc VAE truyền thống: đây là một trong hai tổn thất tạo nên Giới hạn dưới của bằng chứng (ELBO). ELBO là giới hạn dưới của khả năng xảy ra dữ liệu được sử dụng để gián tiếp nhưng về mặt số học, tối đa hóa khả năng xảy ra của mẫu. Quy tắc này khuyến khích các biến tiềm ẩn tuân theo phân phối trước được thiết lập sẵn (thường là phân phối Gauss).
Nhưng điểm mấu chốt là ELBO chỉ là giới hạn dưới thực sự của khả năng xảy ra khi không có tham số tỷ lệ nào được đưa vào trước thuật ngữ KL. Tuy nhiên, trong các ứng dụng thực tế, vì mục đích đào tạo tính ổn định và chất lượng tái tạo, thuật ngữ chính quy hóa KL hầu như luôn được chia tỷ lệ đáng kể (thường theo nhiều cấp độ), điều này gần như cắt đứt mối liên hệ của nó với bối cảnh ban đầu của suy đoán biến phân.
Lý do cho sự điều chỉnh này cũng rất trực tiếp: thuật ngữ KL không được chia tỷ lệ có tác động hạn chế quá mức, điều này sẽ nén đáng kể dung lượng của không gian tiềm ẩn và ảnh hưởng nghiêm trọng đến chất lượng tái tạo hình ảnh. Đối với những cân nhắc về tính khả thi của kỹ thuật, thông lệ chung trong ngành là giảm đáng kể tỷ trọng của nó trong hàm tổn thất tổng thể.
(Nhân tiện: việc thêm tỷ trọng KL cũng là một chiến lược hiệu quả và phổ biến trong một số nhiệm vụ tập trung nhiều hơn vào khả năng diễn giải ngữ nghĩa hoặc chất lượng phân tách biến tiềm ẩn thay vì hiệu suất tái tạo, chẳng hạn như β-VAE).
Những gì sau đây rõ ràng là một quan điểm chủ quan, nhưng tôi cho rằng vẫn còn khá nhiều "sự bí ẩn" trong cuộc thảo luận hiện tại về tác động của các thuật ngữ KL. Ví dụ, thuật ngữ KL được cho rằng có thể hướng dẫn biến tiềm ẩn tuân theo phân phối chuẩn Gauss - tuy nhiên, theo các hệ số tỷ lệ được sử dụng trong các ứng dụng thực tế, hiệu ứng này yếu đến mức gần như có thể bỏ qua. Ngay cả trong VAE “thực”, phần sau tổng hợp hiếm khi có hình dạng Gauss chuẩn.
Do đó, theo tôi, chữ "V" (tức là "Biến thể") trong "VAE" ngày nay gần như đã mất đi ý nghĩa thực tế - sự tồn tại của nó chỉ còn là di sản lịch sử. Thay vào đó, chúng ta sụp đổ gọi loại mô hình này là "bộ mã hóa tự động chuẩn hóa KL", phù hợp hơn về mặt khái niệm với thực tiễn chính thống hiện nay.
Trong bối cảnh này, chức năng chính của thuật ngữ KL là ngăn chặn các giá trị ngoại lai trong phân phối các biến tiềm ẩn và hạn chế thang số của chúng ở một mức độ nhất định. Nói cách khác: mặc dù thuật ngữ KL thường được mô tả như một cơ chế hạn chế khả năng của biến tiềm ẩn, nhưng trên thực tế, nó giống một hạn chế nhẹ hơn về hình dạng của biến tiềm ẩn - và hạn chế này không mạnh như người ta tưởng.
Điều chỉnh tổn thất tái thiết
"Bộ ba phần" của các tổn thất tái tạo (mất mát hồi quy, mất mát nhận thức và mất mát đối nghịch) chắc chắn đóng vai trò quan trọng trong việc tối đa hóa chất lượng của tín hiệu được tái tạo.
Tuy nhiên, vẫn đáng để nghiên cứu thêm về cách các điều khoản mất mát này ảnh hưởng đến các biến tiềm ẩn, đặc biệt là vai trò của chúng trong việc "lọc" (tức là thông tin nào mà các biến tiềm ẩn học để mã hóa). Như đã thảo luận trong Phần 3 (Tại sao lại có hai giai đoạn?), trong phạm vi thị giác, một không gian tiềm ẩn tốt phải đạt được mức độ trừu tượng hóa kết cấu ở một mức độ nào đó. Những mất mát này đã giúp đạt được điều này như thế nào?
Một thí nghiệm tư duy mang tính hướng dẫn là giả định rằng chúng ta loại bỏ mất mát về mặt nhận thức và mất mát đối nghịch và chỉ giữ lại mất mát hồi quy, như được thực hiện trong các bộ mã hóa tự động biến thiên truyền thống (VAE). Thiết lập này thường dẫn đến kết quả tái tạo bị mờ. Tổn thất hồi quy được thiết kế không nhằm mục đích ưu tiên các loại nội dung tín hiệu cụ thể, do đó trong nhiệm vụ hình ảnh, chúng có xu hướng tập trung nhiều hơn vào thông tin tần số thấp chỉ vì thông tin này chiếm tỷ lệ lớn hơn trong hình ảnh.
Trong hình ảnh tự nhiên, năng lượng của các tần số không gian khác nhau thường tỉ lệ nghịch với bình phương tần số của chúng — tần số càng cao thì năng lượng càng thấp (xem bài đăng trên blog trước của tôi để biết phân tích đồ họa về hiện tượng này). Do các thành phần tần số cao chỉ chiếm một tỷ lệ rất nhỏ trong tổng năng lượng tín hiệu nên khi sử dụng mất mát hồi quy, mô hình có xu hướng dự đoán chính xác các thành phần tần số thấp hơn là các phần tần số cao.
Tuy nhiên, theo quan điểm nhận thức của con người, tầm quan trọng chủ quan của thông tin tần số cao cao hơn nhiều so với tỷ lệ của nó trong năng lượng tín hiệu, dẫn đến kết quả tái tạo "mờ" nổi tiếng.
Hình ảnh từ bài báo VQGAN. So sánh với DALL-E VAE được đào tạo với tổn thất hồi quy chỉ cho thấy tác động đáng kể của tổn thất về nhận thức và đối nghịch.
Vì kết cấu chủ yếu bao gồm các thành phần tần số cao này và tổn thất hồi quy gần như bỏ qua các thông tin tần số cao này nên không gian tiềm ẩn mà cuối cùng chúng ta thu được không những không thể trừu tượng hóa kết cấu mà còn xóa trực tiếp thông tin liên quan đến kết cấu. Theo quan điểm về chất lượng nhận thức, đây là một cấu trúc không gian tiềm ẩn kém. Điều này cũng minh họa trực tiếp tầm quan trọng của mất mát nhận thức và mất mát đối nghịch: chúng đảm bảo rằng thông tin kết cấu nhất định có thể được mã hóa trong các biến tiềm ẩn.
Vì tổn thất hồi quy có những đặc tính không mong muốn đã đề cập ở trên và thường đòi hỏi các điều khoản tổn thất khác để bù đắp cho nó, vậy chúng ta có thể từ bỏ nó hoàn toàn không? Thực tế cho thấy cách tiếp cận này không khả thi. Bởi vì quá trình tối ưu hóa mất mát nhận thức và mất mát đối nghịch phức tạp hơn và dễ rơi vào các giải pháp tối ưu cục bộ bệnh lý (xét cho cùng, những mất mát này thường được xây dựng dựa trên mạng nơ-ron được đào tạo trước). Trong quá trình đào tạo, mất mát hồi quy đóng nhân vật là "bộ điều chỉnh", liên tục cung cấp các ràng buộc và chỉ dẫn cho quá trình tối ưu hóa để ngăn mô hình rơi vào không gian tham số sai.
Có nhiều chiến lược cố gắng sử dụng các hình thức mất mát tái tạo khác nhau. Sau đây chỉ là một số ví dụ từ tài liệu cho thấy sự đa dạng theo hướng này:
Mô hình DCAE46 được đề cập ở trên có phương pháp tổng thể không khác nhiều so với công thức VQGAN ban đầu, ngoại trừ việc mất mát hồi quy L2 (lỗi bình phương trung bình, MSE) được thay thế bằng mất mát L1 (lỗi tuyệt đối trung bình, MAE). Nó vẫn giữ nguyên khả năng mất nhận thức LPIPS (Độ tương đồng của mảng hình ảnh nhận thức đã học) và bộ phân biệt PatchGAN49. Sự khác biệt của phương pháp này là nó sử dụng phương pháp huấn luyện nhiều giai đoạn và chỉ cho phép thua cuộc ở giai đoạn cuối.
Mô hình ViT-VQGAN50 kết hợp hai tổn thất hồi quy: tổn thất L2 và tổn thất logit-Laplace51, và sử dụng bộ phân biệt StyleGAN52 và tổn thất nhận thức LPIPS.
Mô hình LTX-Video44 giới thiệu "mất mát nhận biết video" dựa trên Biến đổi Wavelet rời rạc (DWT) và đề xuất chiến lược mất mát đối nghịch độc đáo của riêng nó được gọi là tái tạo-GAN.
Cũng giống như các món ăn cổ điển có khẩu vị khác nhau đối với mỗi người, mỗi nhà nghiên cứu đều có giải pháp riêng cho vấn đề "công thức" này!
Học tập biểu diễn so với Tái thiết
Nhiều lựa chọn thiết kế mà chúng ta đã khám phá trước đây không chỉ ảnh hưởng đến chất lượng tái thiết mà còn ảnh hưởng sâu sắc đến các đặc tính của không gian tiềm ẩn đã học. Trong đó, tổn thất tái tạo thực sự đảm nhiệm một nhiệm vụ kép: nó không chỉ đảm bảo chất lượng cao cho đầu ra của bộ giải mã mà còn đóng vai trò quan trọng trong việc hình thành không gian tiềm ẩn. Điều này đặt ra một câu hỏi: Liệu có thực sự hợp lý khi giết hai con chim bằng một hòn đá như chúng ta đang làm hiện nay không? Tôi cho rằng câu trả lời là không.
Một mặt, việc học một biểu diễn tốt và nhỏ gọn cho mô hình tạo sinh, và mặt khác, giải mã biểu diễn này trở lại không gian đầu vào ban đầu thực chất là hai nhiệm vụ hoàn toàn khác nhau. Các bộ mã hóa tự động hiện đại thường được kỳ vọng sẽ thực hiện cả hai nhiệm vụ cùng một lúc.
Mặc dù cách này khá hiệu quả theo quan điểm thực tế và chắc chắn sẽ đơn giản hóa quy trình (xét cho cùng, đào tạo bộ mã hóa tự động đã là giai đoạn đào tạo đầu tiên trong toàn bộ hệ thống và chúng ta muốn tránh phức tạp thêm càng nhiều càng tốt, mặc dù việc đào tạo bộ mã hóa tự động theo nhiều giai đoạn không phải là chưa từng có). Tuy nhiên, phương pháp này thực sự gây nhầm lẫn giữa hai nhiệm vụ và một số thiết kế phù hợp với nhiệm vụ này có thể không lý tưởng cho nhiệm vụ kia.
Vấn đề hợp nhất nhiệm vụ này đặc biệt nghiêm trọng khi bộ giải mã áp dụng kiến trúc hồi quy tự động, do đó chúng tôi đề xuất sử dụng bộ giải mã phụ trợ không hồi quy tự động độc lập để cung cấp tín hiệu học cho bộ mã hóa.
Bộ giải mã chính không ảnh hưởng gì đến biểu diễn tiềm ẩn vì độ dốc của nó không được truyền ngược trở lại bộ mã hóa trong quá trình đào tạo. Điều này cho phép tập trung vào việc tối ưu hóa chất lượng tái tạo, trong khi bộ giải mã phụ đảm nhiệm nhiệm vụ định hình không gian tiềm ẩn. Các thành phần của toàn bộ bộ mã hóa tự động vẫn có thể được đào tạo chung, do đó độ phức tạp khi đào tạo bổ sung là rất hạn chế. Mặc dù bộ giải mã phụ làm tăng chi phí đào tạo nhưng có thể loại bỏ nó sau khi quá trình đào tạo hoàn tất.
Trong cấu trúc bộ mã hóa tự động này với hai bộ giải mã: bộ giải mã chính chỉ được sử dụng để tái tạo và các gradient của nó không được truyền lại cho bộ mã hóa (thường chúng ta sử dụng đường chấm để chỉ ra điều này), trong khi bộ giải mã phụ tập trung vào việc xây dựng không gian tiềm ẩn. Nó có thể áp dụng nhiều kiến trúc khác nhau, tối ưu hóa nhiều hàm mất mát khác nhau hoặc cả hai.
Mặc dù ý tưởng sử dụng bộ giải mã hồi quy tự động để xử lý không gian pixel trong bài báo đó không còn phù hợp nữa (có thể là lỗi thời), tôi vẫn tin rằng chiến lược tách biệt việc học biểu diễn khỏi nhiệm vụ tái tạo này vẫn còn rất phù hợp cho đến ngày nay.
Bộ giải mã phụ, nếu tối ưu hóa mức mất mát khác nhau hoặc áp dụng kiến trúc khác với bộ giải mã chính (hoặc cả hai), có thể cung cấp tín hiệu đào tạo hiệu quả hơn cho việc học biểu diễn, dẫn đến kết quả mô hình hóa tạo ra tốt hơn.
Gần đây Zhu và cộng sự đã đưa ra kết luận tương tự. (xem Phần 2.1 của bài báo của họ), người đã sử dụng K-means để phân biệt các tính năng rút bởi DINOv2 và kết hợp nó với bộ giải mã được đào tạo riêng. Ý tưởng tái sử dụng các biểu diễn thu được thông qua quá trình học tự giám sát trong mô hình tạo sinh từ lâu đã phổ biến trong lĩnh vực mô hình âm thanh - có lẽ là do các nhà nghiên cứu trong lĩnh vực âm thanh đã quen với việc đào tạo bộ mã hóa giọng nói để chuyển đổi các biểu diễn trung gian được xác định trước (như phổ Mel) trở lại thành tín hiệu dạng sóng.
Cải thiện hiệu suất mô hình thông qua việc điều chỉnh
Việc định hình, tổ chức và giới hạn khả năng của các biến tiềm ẩn đều ảnh hưởng đến khả năng mô hình hóa của chúng:
Giới hạn dung lượng xác định lượng thông tin trong các biến tiềm ẩn. Công suất càng cao thì mô hình tạo ra càng phải mạnh mẽ hơn để nắm bắt đầy đủ mọi thông tin mà nó chứa đựng;
Việc định hình đóng vai trò quan trọng để đạt được mô hình hiệu quả. Cùng một thông tin có thể được biểu diễn theo nhiều cách khác nhau, một số cách dễ mô hình hóa hơn những cách khác. Việc mở rộng quy mô và chuẩn hóa rất quan trọng đối với mô hình hóa chính xác (đặc biệt đối với các mô hình khuếch tán), nhưng thống kê bậc cao và cấu trúc tương quan cũng quan trọng không kém;
Việc chải chuốt ảnh hưởng đến khả năng mô hình hóa vì một số loại thông tin dễ mô hình hóa hơn những loại khác. Nếu các biến tiềm ẩn mã hóa thông tin nhiễu không thể đoán trước trong tín hiệu đầu vào, khả năng dự đoán của chúng cũng sẽ giảm.
Dưới đây là một dòng tweet thú vị cho thấy điều này ảnh hưởng đến Stable Diffusion XL VAE như thế nào:
Nguồn hình ảnh: https://x.com/rgilman33/status/1911712029443862938
Ở đây tôi muốn kết nối nó với thông tin V do Xu và cộng sự đề xuất, mở rộng khái niệm thông tin tương hỗ để tính đến các ràng buộc về mặt tính toán. Nói cách khác, tính khả dụng của thông tin phụ thuộc vào mức độ khó tính toán của người quan sát khi phân biệt thông tin và chúng ta có thể cố gắng định lượng điều này. Nếu một phần thông tin yêu cầu mạng nơ-ron mạnh để rút thì lượng thông tin V trong đầu vào sẽ thấp hơn so với khi sử dụng đầu dò tuyến tính đơn giản - ngay cả khi lượng thông tin tuyệt đối theo bit là như nhau.
Rõ ràng, cần phải tối đa hóa lượng thông tin V trong biểu diễn tiềm ẩn để giảm thiểu nhu cầu tính toán cần thiết cho mô hình tạo ra nhằm hiểu được biểu diễn tiềm ẩn. Sự đánh đổi giữa tỷ lệ-biến dạng-tiện ích được mô tả bởi Tschannen và cộng sự. mà tôi đã đề cập trước đó cũng ủng hộ kết luận tương tự.
Như đã đề cập trước đó, hình phạt KL có thể không có tác dụng nhiều trong việc Gauss hóa hoặc làm mịn không gian tiềm ẩn như nhiều người cho rằng. Vậy, chúng ta có thể làm gì để mô hình hóa mô hình tiềm ẩn dễ dàng hơn?
Sử dụng các ưu tiên tạo sinh: cùng nhau đào tạo một mô hình tạo sinh tiềm ẩn (nhẹ) với bộ mã hóa tự động và làm cho mô hình hóa mô hình tiềm ẩn dễ dàng bằng cách truyền ngược lại tổn thất tạo sinh vào bộ mã hóa, như trong LARP hoặc CRT. Điều này đòi hỏi phải điều chỉnh cẩn thận tỷ trọng mất mát, vì mất mát khi tạo ra và mất mát khi tái thiết không tư






