„დიფუზერები“ (Diffusers) საშუალებას გაძლევთ, VQ-დიფუზია (VQ-Diffusion) რამდენიმე სტრიქონი კოდით გაუშვათ. დააინსტალირეთ დამოკიდებულებები. ჩატვირთეთ „ფაიფლაინი“. თუ გსურთ FP16 წონების გამოყენება, გადაიტანეთ GPU-ზე. გაუშვით „ფაიფლაინი“! გამოსახულებები კოდირდება დისკრეტული „ტოკენების“ ანუ ჩაშენების ვექტორების ნაკრებად, VQ-VAE ენკოდერის გამოყენებით. ამისათვის, გამოსახულებები იყოფა „ფრაგმენტებად“ (patches), და შემდეგ თითოეული ფრაგმენტი იცვლება უახლოესი ჩანაწერით კოდების წიგნიდან (codebook), ფიქსირებული ზომის ლექსიკონით. ეს ამცირებს შეყვანის პიქსელების სივრცის განზომილებას. VQ-დიფუზია იყენებს VQGAN ვარიანტს „Taming Transformers“-დან. ეს ბლოგ-პოსტი კარგი რესურსია VQ-VAE-ების უკეთ გასაგებად. VQ-დიფუზია იყენებს წინასწარ გაწვრთნილ VQ-VAE-ს, რომელიც გაყინული იყო დიფუზიის გაწვრთნის პროცესში. პირდაპირი დიფუზიის პროცესში, თითოეული ლატენტური ტოკენი შეიძლება დარჩეს უცვლელი, ხელახლა იყოს შერჩეული სხვა ლატენტურ ვექტორად (თითოეული თანაბარი ალბათობით), ან იყოს ნიღბიანი (masked). მას შემდეგ, რაც ლატენტური ტოკენი დაიფარება ნიღბით, ის ნიღბიანი დარჩება. ალფა_ტ (`\alpha_t`), ბეტა_ტ (`\beta_t`) და გამა_ტ (`\gamma_t`) არის ჰიპერპარამეტრები, რომლებიც აკონტროლებენ პირდაპირ დიფუზიის პროცესს ნაბიჯი `t-1`-დან ნაბიჯი `t`-მდე. გამა_ტ (`\gamma_t`) არის ალბათობა, რომ არა-ნიღბიანი ტოკენი ნიღბიანი გახდება. ალფა_ტ + ბეტა_ტ (`\alpha_t + \beta_t`) არის ალბათობა, რომ არა-ნიღბიანი ტოკენი უცვლელი დარჩება. ტოკენს შეუძლია გადავიდეს ნებისმიერ ინდივიდუალურ არა-ნიღბიან ლატენტურ ვექტორში ბეტა_ტ (`\beta_t`) ალბათობით. სხვა სიტყვებით, `\alpha_t + K \beta_t + \gamma_t = 1`, სადაც `K` არის არა-ნიღბიანი ლატენტური ვექტორების რაოდენობა. დეტალებისთვის იხილეთ ნაშრომის 4.1 სექცია. ენკოდერ-დეკოდერ ტრანსფორმერი აპროქსიმირებს გაუხმაურებელ ლატენტების (`x_0`) კლასებს, „პრომპტზე“ (`y`) დაყრდნობით. ენკოდერი არის CLIP ტექსტის ენკოდერი გაყინული წონებით. დეკოდერ ტრანსფორმერი უზრუნველყოფს არა-ნიღბიან გლობალურ ყურადღებას ყველა ლატენტურ პიქსელზე და გამოაქვს კატეგორიული განაწილების ლოგარითმული ალბათობები ვექტორული ჩაშენების (vector embeddings) მიმართ. დეკოდერ ტრანსფორმერი იწინასწარმეტყველებს გაუხმაურებელი ლატენტების მთელ განაწილებას ერთი პირდაპირი გავლისას, უზრუნველყოფს გლობალურ თვითყურადღებას `x_t`-ზე. პრობლემის პირობითი მიმდევრობა-მიმდევრობად დისკრეტულ მნიშვნელობებზე ჩარჩოში მოქცევა გარკვეულ ინტუიციას იძლევა, თუ რატომ არის ენკოდერ-დეკოდერ ტრანსფორმერი კარგი არჩევანი. AR მოდელების სექცია უზრუნველყოფს დამატებით კონტექსტს VQ-დიფუზიის არქიტექტურის შესახებ, AR ტრანსფორმერზე დაფუძნებულ მოდელებთან შედარებით. „Taming Transformers“ კარგად მსჯელობს ნედლი პიქსელების დისკრეტულ ტოკენებად გადაქცევაზე შეკუმშულ ლატენტურ სივრცეში, რათა ტრანსფორმერები გამოთვლითად მიზანშეწონილი გახდეს გამოსახულების მონაცემებისთვის. თანამედროვე დიფუზიური მოდელები ძირითადად უწყვეტია. პირდაპირ პროცესში, უწყვეტი დიფუზიური მოდელები იტერაციულად ამატებენ გაუსის ხმაურს. შებრუნებული პროცესი აპროქსიმირებულია ფორმულით `p_{\theta}(x_{t-1} | x_t) = N(x_{t-1}; \mu_{\theta}(x_t, t), \Sigma_{\theta}(x_t, t))`. DDPM-ის უფრო მარტივ შემთხვევაში, კოვარიანტობის მატრიცა ფიქსირებულია, U-Net გაწვრთნილია `x_t`-ში ხმაურის პროგნოზირებისთვის და `x_{t-1}` მიიღება ხმაურისგან. აპროქსიმირებული შებრუნებული პროცესი სტრუქტურულად მსგავსია დისკრეტული შებრუნებული პროცესისა. თუმცა, დისკრეტულ შემთხვევაში, არ არსებობს მკაფიო ანალოგი `x_t`-ში ხმაურის პროგნოზირებისთვის, და `x_0`-ის განაწილების პირდაპირ პროგნოზირება უფრო მკაფიო მიზანია. დისკრეტული დიფუზიური მოდელების შესახებ ლიტერატურა უფრო ნაკლებია, ვიდრე უწყვეტი დიფუზიური მოდელების შესახებ. „Deep Unsupervised Learning using Nonequilibrium Thermodynamics“ წარმოადგენს დიფუზიურ მოდელს ბინომური განაწილების მიმართ. „Argmax Flows and Multinomial Diffusion“ აფართოებს დისკრეტულ დიფუზიას მრავალწევრიან განაწილებამდე და ავარჯიშებს ტრანსფორმერს ენის მოდელირების ამოცანისთვის გაუხმაურებელი განაწილების პროგნოზირებისთვის. „Structured Denoising Diffusion Models in Discrete State-Spaces“ აზოგადებს მრავალწევრიან დიფუზიას ალტერნატიული ხმაურის პროცესებით — ერთგვაროვანი (uniform), შთამნთქმელი (absorbing), დისკრეტიზებული გაუსიანი (discretized Gaussian) და ტოკენების ჩაშენების მანძილი (token embedding distance). ალტერნატიული ხმაურის პროცესები ასევე შესაძლებელია უწყვეტ დიფუზიურ მოდელებში, მაგრამ, როგორც ნაშრომშია აღნიშნული, მხოლოდ ადიტიურ გაუსის ხმაურს მიექცა მნიშვნელოვანი ყურადღება. ალბათ უფრო საინტერესოა VQ-დიფუზიის შედარება AR მოდელებთან, რადგან ისინი უფრო ხშირად იყენებენ ტრანსფორმერებს დისკრეტული განაწილებების პროგნოზირებისთვის. მიუხედავად იმისა, რომ ტრანსფორმერებმა წარმატება აჩვენეს AR მოდელირებაში, ისინი მაინც განიცდიან დასკვნის (inference) სიჩქარის ხაზოვან შემცირებას გამოსახულების გაზრდილი რეზოლუციისთვის, შეცდომების დაგროვებას და მიმართულებით მიკერძოებას. VQ-დიფუზია აუმჯობესებს ყველა ამ სამ პრობლემურ წერტილს. AR გამოსახულების გენერაციული მოდელები ხასიათდება გამოსახულების ალბათობის ფაქტორიზაციით ისე, რომ თითოეული პიქსელი პირობითად არის დამოკიდებული წინა პიქსელებზე რასტრული სკანირების თანმიმდევრობით (მარცხნიდან მარჯვნივ, ზემოდან ქვემოთ), ანუ `p(x) = \prod_i p(x_i | x_{i-1}, x_{i-2}, ... x_{2}, x_{1})`. შედეგად, მოდელების გაწვრთნა შესაძლებელია ლოგარითმული ალბათობის პირდაპირი მაქსიმიზაციით. გარდა ამისა, AR მოდელები, რომლებიც მუშაობენ რეალურ პიქსელურ (არა-ლატენტურ) მნიშვნელობებზე, პროგნოზირებენ არხის მნიშვნელობებს დისკრეტული მრავალწევრიანი განაწილებიდან