Xlera8

Makine Öğrenimi için Difüzyon Modellerine Giriş

Bu yazı orijinalinde MontajAI ve yazarın izniyle TOPBOTS'ta yeniden yayınlandı.

Difüzyon Modelleri, son birkaç yılda önemli ölçüde popülerlik kazanan üretken modellerdir ve bunun iyi bir nedeni vardır. 2020'lerde yayınlanan bir avuç ufuk açıcı makale tek başına dünyaya, GAN'ları yenmek gibi Difüzyon modellerinin neler yapabileceğini göstermiştir.[6] görüntü sentezi üzerine Son zamanlarda, uygulayıcılar, kullanılan Difüzyon Modellerini görmüş olacaklardır. DALL-E2, OpenAI'nin görüntü oluşturma modeli geçen ay piyasaya sürüldü.

DALL-E 2 tarafından oluşturulan çeşitli görüntüler (kaynak).

Difüzyon Modellerinin son zamanlardaki başarı dalgası göz önüne alındığında, birçok Makine Öğrenimi uygulayıcısı kesinlikle kendi iç işleyişleriyle ilgilenmektedir. Bu yazımızda inceleyeceğiz Difüzyon Modelleri için teorik temellerve ardından bir PyTorch'ta Difüzyon Modeli. Hadi dalalım!

Bu kapsamlı eğitim içeriği sizin için yararlıysa, AI posta listemize abone olun yeni materyal çıkardığımızda uyarılmak. 

Difüzyon Modelleri – Giriş

Difüzyon Modelleri üretken modeller, yani üzerinde eğitildikleri verilere benzer veriler üretmek için kullanılırlar. Temel olarak, Difüzyon Modelleri şu şekilde çalışır: eğitim verilerini yok etmek Gauss gürültüsünün art arda eklenmesiyle ve sonra iyileşmeyi öğrenmek tarafından veri geri bu gürültü süreci. Eğitimden sonra, basitçe veri üretmek için Difüzyon Modelini kullanabiliriz. öğrenilen gürültü giderme sürecinden rastgele örneklenmiş gürültünün geçirilmesi.

Difüzyon Modelleri, gürültüden görüntüler oluşturmak için kullanılabilir ( kaynak)

Daha spesifik olarak, bir Difüzyon Modeli, sabit bir Markov zinciri kullanarak gizli uzaya eşlenen bir gizli değişken modelidir. Bu zincir, yaklaşık posterior q(x) değerini elde etmek için verilere kademeli olarak gürültü ekler.1:Ç|x0), nerede x1, ..., xT x ile aynı boyutluluğa sahip gizli değişkenlerdir0. Aşağıdaki şekilde, görüntü verileri için tezahür eden böyle bir Markov zinciri görüyoruz.

Sonuç olarak, görüntü asimptotik olarak saf Gauss gürültüsüne dönüştürülür. bu gol bir difüzyon modelinin eğitimi, ters süreç – yani eğitim pθ(xt-1|xt). Bu zincir boyunca geriye doğru giderek yeni veriler üretebiliriz.

Difüzyon Modellerinin Faydaları

Yukarıda bahsedildiği gibi, Difüzyon Modellerine yönelik araştırmalar son yıllarda patlama yaşadı. Denge dışı termodinamikten esinlenilmiştir[1], Difüzyon Modelleri şu anda üretmektedir Son teknoloji görüntü kalitesi, örnekleri aşağıda görülebilir:

En son görüntü kalitesinin ötesinde, Difüzyon Modelleri, aşağıdakiler de dahil olmak üzere bir dizi başka avantajla birlikte gelir: düşmanca eğitim gerektirmeyen. Düşmanca eğitimin zorlukları iyi belgelenmiştir; ve karşılaştırılabilir performans ve eğitim verimliliğine sahip rakip olmayan alternatiflerin bulunduğu durumlarda, bunları kullanmak genellikle en iyisidir. Eğitim verimliliği konusunda, Difüzyon Modellerinin ek faydaları da vardır. ölçeklenebilirlik ve paralelleştirilebilirlik.

Difüzyon Modelleri neredeyse yoktan var eden sonuçlar veriyor gibi görünse de, bu sonuçların temelini oluşturan birçok dikkatli ve ilginç matematiksel seçim ve ayrıntı vardır ve literatürde en iyi uygulamalar hala gelişmektedir. Difüzyon Modellerini destekleyen matematiksel teoriye şimdi daha ayrıntılı bir göz atalım.

Difüzyon Modelleri – Derin Bir Dalış

Yukarıda belirtildiği gibi, bir Difüzyon Modeli aşağıdakilerden oluşur: ileri süreç (Ya da difüzyon süreci), bir verinin (genellikle bir görüntü) aşamalı olarak gürültüye tabi tutulduğu ve ters işlem (Ya da ters difüzyon süreci), burada gürültü hedef dağılımdan bir örneğe dönüştürülür.

İleri süreçteki örnekleme zinciri geçişleri, gürültü seviyesi yeterince düşük olduğunda koşullu Gauss'lara ayarlanabilir. Bu gerçeği Markov varsayımıyla birleştirmek, ileri sürecin basit bir parametreleştirilmesine yol açar:

Matematiksel Not

Verileri bozmaktan bahsediyorduk. ekleme Gauss gürültüsü, ancak ilk başta bu eklemeyi nerede yaptığımız belirsiz olabilir. Yukarıdaki denkleme göre, zincirdeki her adımda, ortalaması zincirdeki önceki değer (yani görüntü) olan bir Gauss dağılımından örnek alıyoruz.

Bu iki ifade eşdeğerdir. Yani

Nedenini anlamak için, şunu öne sürerek gösterimin hafif bir kötüye kullanmasını kullanacağız.

Son çıkarımın, rastgele değişkenlerin toplamı ile dağılımlarının evrişimi arasındaki matematiksel denklikten kaynaklandığı durumlarda - bkz. bu Wikipedia sayfası daha fazla bilgi için.

Başka bir deyişle, bir Gauss dağılımının ortalaması aracılığıyla bir öncekine göre koşullandırılmış bir zaman adımının dağılımını iddia etmenin, belirli bir zaman adımının dağılımının Gauss gürültüsünün eklenmesiyle bir öncekinin dağılımı olduğunu iddia etmeye eşdeğer olduğunu gösterdik. Varyans çizelgesinin sunduğu skalerleri çıkardık ve bunu basitlik için tek boyut için gösterdik, ancak benzer bir ispat çok değişkenli Gausslar için de geçerlidir.

nerede β1,…,βT iyi davranıldığı takdirde, (öğrenilmiş veya sabit) bir varyans çizelgesidir. onu garantiler xT yeterince büyük T için neredeyse izotropik bir Gausstur.

Markov varsayımı göz önüne alındığında, gizli değişkenlerin ortak dağılımı, Gauss koşullu zincir geçişlerinin ürünüdür. kaynak).

Daha önce de belirtildiği gibi, difüzyon modellerinin “sihri” ters işlem. Eğitim sırasında model, yeni veriler üretmek için bu yayılma sürecini tersine çevirmeyi öğrenir. Saf Gauss gürültüsü ile başlayarak p(x)T):=N(xT,0,I) model ortak dağılımı öğrenir pθ(x0:Ç) olarak

Gauss geçişlerinin zamana bağlı parametreleri burada öğrenilir. Özellikle Markov formülasyonunun, belirli bir ters difüzyon geçiş dağılımının yalnızca önceki zaman adımına (veya nasıl baktığınıza bağlı olarak sonraki zaman adımına bağlı olduğunu) ileri sürdüğüne dikkat edin:

Eğitim

Bir Difüzyon Modeli tarafından eğitilir eğitim verilerinin olasılığını en üst düzeye çıkaran ters Markov geçişlerini bulma. Uygulamada, eğitim eşdeğer olarak, negatif log olasılığı üzerindeki varyasyonel üst sınırın en aza indirilmesinden oluşur.

Notasyon Detayı

L'ye dikkat edinvb teknik olarak bir üst en aza indirmeye çalıştığımız sınır (ELBO'nun negatifi), ancak buna L olarak atıfta bulunuyoruzvb Literatür ile tutarlılık için.

L'yi yeniden yazmaya çalışıyoruzvb açısından Kullback-Leibler (KL) Sapmaları. KL Divergence, bir olasılık dağılımının ne kadar olduğunu gösteren asimetrik istatistiksel bir mesafe ölçüsüdür. P bir referans dağılımından farklıdır Q. L formüle etmekle ilgileniyoruzvb KL sapmaları açısından, çünkü Markov zincirimizdeki geçiş dağılımları Gauss'tur ve Gausslar arasındaki KL ayrışması kapalı bir forma sahiptir.

KL Diverjansı nedir?

Sürekli dağılımlar için KL diverjansının matematiksel formu şu şekildedir:

Çift çubuklar, işlevin argümanlarına göre simetrik olmadığını gösterir.

Aşağıda, değişen bir dağılımın KL sapmasını görebilirsiniz. P (mavi) bir referans dağılımından Q (kırmızı). Yeşil eğri, yukarıdaki KL diverjansı tanımındaki integral içindeki fonksiyonu gösterir ve eğrinin altındaki toplam alan, KL diverjansının değerini temsil eder. P itibaren Q herhangi bir anda sayısal olarak da görüntülenen bir değer.

Döküm lvlb KL Farklılıkları Açısından

Daha önce de belirtildiği gibi, mümkün [1] L'yi yeniden yazmak içinvb KL farklılıkları açısından neredeyse tamamen:

nerede

Derivasyon Detayları

Varyasyon sınırı eşittir

Markov varsayımımıza göre dağılımları tanımlarıyla değiştirirsek,

İfadeyi günlüklerin toplamına dönüştürmek için günlük kurallarını kullanırız ve ardından ilk terimi çıkarırız.

Bayes Teoremi ve Markov varsayımımızı kullanarak, bu ifade şu hale gelir:

Daha sonra günlük kurallarını kullanarak orta terimi böleriz

İkinci terimi izole ederek, görüyoruz

Bunu L için denklemimize geri takıyoruzvb, sahibiz

Günlük kurallarını kullanarak yeniden düzenleriz

d8

Daha sonra, herhangi iki dağıtım için KL sapması için aşağıdaki denkliği not ediyoruz:

Son olarak, bu denkliği bir önceki ifadeye uygulayarak şu sonuca varıyoruz:

x üzerinde ileri işlemi arka şartlandırma0 L'det-1 yol açan izlenebilir bir biçimde sonuçlanır tüm KL farklılıkları Gauss'lar arasındaki karşılaştırmalardır. Bu, sapmaların Monte Carlo tahminlerinden ziyade kapalı form ifadeleriyle tam olarak hesaplanabileceği anlamına gelir.[3].

Model Seçenekleri

Amaç fonksiyonumuzun matematiksel temeli oluşturulduktan sonra, şimdi Difüzyon Modelimizin nasıl uygulanacağına dair birkaç seçim yapmamız gerekiyor. İleriye dönük işlem için gerekli olan tek seçenek, değerleri ileri işlem sırasında genellikle artan varyans çizelgesini tanımlamaktır.

Tersine işlem için, daha çok Gauss dağılım parametreleştirme/model mimarisini/mimarilerini seçiyoruz. not edin yüksek derecede esneklik Difüzyon Modellerinin sağladığı – bir tek mimarimizin gereksinimi, girdi ve çıktısının aynı boyuta sahip olmasıdır.

Bu seçimlerin ayrıntılarını aşağıda daha ayrıntılı olarak inceleyeceğiz.

İleri İşlem ve LT

Yukarıda belirtildiği gibi, ileriye dönük süreçle ilgili olarak varyans çizelgesini tanımlamamız gerekir. Özellikle, biz onları zamana bağlı sabitler, öğrenilebileceği gerçeğini göz ardı ederek. Örneğin[3], β'dan doğrusal bir program1= 10-4 β'yaT=0.2 kullanılabilir, ya da belki bir geometrik dizi.

Seçilen belirli değerlerden bağımsız olarak, varyans çizelgesinin sabit olması gerçeği L ile sonuçlanır.T eğitim söz konusu olduğunda onu görmezden gelmemize izin veren öğrenilebilir parametreler grubumuza göre sabit hale gelir.

Ters İşlem ve L1:T-1

Şimdi ters işlemi tanımlamak için gereken seçenekleri tartışıyoruz. Yukarıdan hatırlayın, ters Markov geçişlerini bir Gauss olarak tanımladık:

Şimdi μ'nin fonksiyonel formlarını tanımlamalıyız.θ veya Σθ. Parametrelendirmenin daha karmaşık yolları olsa da Σθ[5], biz basitçe ayarladık

Yani, çok değişkenli Gauss'un, zamanla değişebilen bir varyans değeri olan aynı varyansa sahip bağımsız Gauss'ların bir ürünü olduğunu varsayıyoruz. Biz bu varyansları ileriye dönük süreç varyans çizelgemize eşdeğer olacak şekilde ayarlayın.

Σ'nin bu yeni formülasyonu göz önüne alındığındaθ, sahibiz

dönüştürmemize izin veren

için

farktaki ilk terim, x'in doğrusal bir birleşimidirt ve x0 bu varyans çizelgesine bağlıdır βt. Bu işlevin tam biçimi amaçlarımızla ilgili değildir, ancak ['de bulunabilir.3].

Yukarıdaki oranın önemi şudur: μ'nin en basit parametreleştirmesiθ basitçe difüzyon arka ortalamasını tahmin eder. Önemli olan, yazarların [3] aslında eğitimin μ olduğunu bulduθ tahmin etmek gürültü Herhangi bir zaman adımında bileşen daha iyi sonuçlar verir. Özellikle, izin ver

nerede

Bu, aşağıdaki alternatif kayıp fonksiyonuna yol açar, hangi yazarların [3] daha istikrarlı bir eğitime ve daha iyi sonuçlara yol açtığını buldu:

[3] ayrıca, bu Difüzyon Modelleri formülasyonunun Langevin dinamiklerine dayalı skor eşleştirme üretici modellerle olan bağlantılarını da not eder. Gerçekten de, öyle görünüyor ki, Difüzyon Modelleri ve Puana Dayalı modeller aynı madalyonun iki yüzü olabilir, aynı fenomenin iki eşdeğer formülasyonunu ortaya çıkaran dalga tabanlı kuantum mekaniğinin ve matris tabanlı kuantum mekaniğinin bağımsız ve eşzamanlı gelişimine benzer.[2].

Ağ mimarisi

Basitleştirilmiş kayıp fonksiyonumuz bir model yetiştirmeye çalışırken ϵθ, bu modelin mimarisini henüz tanımlamadık. unutmayın bir tek Model için gereksinim, girdi ve çıktı boyutlarının aynı olmasıdır.

Bu kısıtlama göz önüne alındığında, görüntü Difüzyon Modellerinin yaygın olarak U-Net benzeri mimarilerle uygulanması şaşırtıcı değildir.

Ters İşlem Dekoderi ve L0

Ters süreç boyunca yol, sürekli koşullu Gauss dağılımları altında birçok dönüşümden oluşur. Ters işlemin sonunda, bir tane üretmeye çalıştığımızı hatırlayın. görüntü, tamsayı piksel değerlerinden oluşur. Bu nedenle, elde etmenin bir yolunu bulmalıyız. ayrık (günlük) olasılıklar tüm piksellerdeki her olası piksel değeri için.

Bunun yapılma şekli, ters difüzyon zincirindeki son geçişi bir bağımsız ayrık kod çözücü. Belirli bir görüntünün olasılığını belirlemek için x0 verilen x1, önce veri boyutları arasında bağımsızlık uygularız:

D, verilerin boyutsallığı ve üst simgedir i bir koordinatın çıkarılmasını gösterir. Şimdi amaç, belirli bir piksel için her bir tamsayı değerinin ne kadar olası olduğunu belirlemektir. verilmiş t=1 anında hafif gürültülü görüntüdeki karşılık gelen piksel için olası değerler arasındaki dağılım:

burada t=1 için piksel dağılımları, diyagonal kovaryans matrisi, dağılımı, verilerin her boyutu için bir tane olmak üzere, tek değişkenli Gauss'ların bir ürününe ayırmamıza izin veren aşağıdaki çok değişkenli Gauss'tan türetilmiştir:

Görüntülerin 0,1,…,255'te (standart RGB görüntülerinde olduğu gibi) doğrusal olarak [-1,1]'e ölçeklenmiş tam sayılardan oluştuğunu varsayıyoruz. Daha sonra gerçek çizgiyi, belirli bir ölçeklendirilmiş piksel değeri için küçük “kovalara” böleriz. x, bu aralık için paket [x−1/255, x+1/255]'dir. Bir piksel değerinin olasılığı x, x cinsinden karşılık gelen pikselin tek değişkenli Gauss dağılımı verildiğinde1Olduğu merkezli kova içindeki bu tek değişkenli Gauss dağılımının altındaki alan x.

Aşağıda, ortalama-0 Gauss için olasılıklarıyla birlikte bu bölmelerin her biri için alanı görebilirsiniz; bu, bu bağlamda, ortalama piksel değeri 255/2 (yarı parlaklık) olan bir dağılıma karşılık gelir. Kırmızı eğri, belirli bir pikselin dağılımını temsil eder. t = 1 görüntü ve alanlar, karşılık gelen piksel değerinin olasılığını verir. t = 0 görüntü.

Teknik not

İlk ve son paketler, toplam olasılığı korumak için -inf ve +inf'ye kadar uzanır.

Verilen t = 0 her piksel için piksel değeri, p değeriθ(x0|x1) sadece onların ürünüdür. Bu süreç kısaca aşağıdaki denklemle özetlenmiştir:

nerede

ve

p için verilen bu denklemθ(x0|x1), L'nin son terimini hesaplayabiliriz.vb KL Divergence olarak formüle edilmeyen:

Nihai Hedef

Son bölümde belirtildiği gibi, yazarlar [3], belirli bir zaman diliminde bir görüntünün gürültü bileşenini tahmin etmenin en iyi sonuçları verdiğini buldu. Sonuçta, aşağıdaki amacı kullanırlar:

Bu nedenle Difüzyon Modelimiz için eğitim ve örnekleme algoritmaları aşağıdaki şekilde kısa ve öz bir şekilde yakalanabilir:

Difüzyon Modeli Teorisi Özeti

Bu bölümde Difüzyon Modelleri teorisine detaylı bir dalış yaptık. Matematiksel ayrıntılara takılmak kolay olabilir, bu nedenle, kendimizi kuş bakışı perspektiften yönlendirmek için aşağıdaki bu bölümdeki en önemli noktaları not ediyoruz:

  1. Difüzyon Modelimiz şu şekilde parametrelenmiştir: Markov zinciri, yani gizli değişkenlerimiz x1, ..., xT yalnızca önceki (veya sonraki) zaman adımına bağlıdır.
  2. The geçiş dağılımları Markov zincirindeki Gauss, ileri işlemin bir varyans çizelgesi gerektirdiği ve ters işlem parametrelerinin öğrenildiği durumlarda.
  3. Difüzyon süreci, x'inT is izotropik bir Gauss olarak asimptotik olarak dağıtılır yeterince büyük T için
  4. Bizim durumumuzda, varyans programı düzeltildi, ama aynı zamanda öğrenilebilir. Sabit programlar için, geometrik bir ilerlemeyi takip etmek, doğrusal bir ilerlemeden daha iyi sonuçlar verebilir. Her iki durumda da varyanslar genellikle seride zamanla artmaktadır (yani βij benim için
  5. Difüzyon Modelleri son derece esnek ve izin vermek herhangi Girdi ve çıktı boyutları aynı olan mimari kullanılacaktır. Birçok uygulama kullanır U-Net benzeri mimariler.
  6. The eğitim hedefi eğitim verilerinin olasılığını maksimize etmektir. Bu, model parametrelerinin ayarlanması olarak kendini gösterir. verilerin negatif log olasılığının varyasyonel üst sınırını en aza indirin.
  7. Amaç fonksiyonundaki hemen hemen tüm terimler şu şekilde yazılabilir: KL Farklılıkları Markov varsayımımızın bir sonucu olarak. Bu değerler hesaplanabilir hale gelmek Gauss kullandığımızı düşünürsek, bu nedenle Monte Carlo yaklaşımını gerçekleştirme gereğini atlıyoruz.
  8. Sonuçta, bir basitleştirilmiş eğitim hedefi Belirli bir gizli değişkenin gürültü bileşenini tahmin eden bir işlevi eğitmek, en iyi ve en kararlı sonuçları verir.
  9. ayrık kod çözücü Ters difüzyon işleminin son adımı olarak piksel değerleri boyunca log olasılıklarını elde etmek için kullanılır.

Difüzyon Modellerinin bu üst düzey genel bakışı aklımızdayken, PyTorch'ta Difüzyon Modellerinin nasıl kullanılacağını görelim.

PyTorch'ta Difüzyon Modelleri

Difüzyon Modelleri, Makine Öğrenimi'ndeki diğer eski mimariler/yaklaşımlar ile aynı derecede demokratikleştirilmemiş olsa da, hala kullanıma hazır uygulamalar vardır. PyTorch'ta bir Difüzyon Modeli kullanmanın en kolay yolu, denoising-diffusion-pytorch Bu makalede tartışılana benzer bir görüntü yayma modeli uygulayan paket. Paketi kurmak için terminale aşağıdaki komutu yazmanız yeterlidir:

pip install denoising_diffusion_pytorch

Minimal Örnek

Bir modeli eğitmek ve görüntüler oluşturmak için önce gerekli paketleri içe aktarıyoruz:

import torch
from denoising_diffusion_pytorch import Unet, GaussianDiffusion

Ardından, ağ mimarimizi tanımlarız, bu durumda bir U-Net. bu dim parametresi, ilk alt örneklemeden önceki özellik eşlemelerinin sayısını ve dim_mults parametresi, bu değer ve ardışık alt örneklemeler için çarpanlar sağlar:

model = Unet(
 dim = 64,
 dim_mults = (1, 2, 4, 8)
)

Artık ağ mimarimiz tanımlandığına göre, Difüzyon Modelinin kendisini tanımlamamız gerekiyor. Az önce tanımladığımız U-Net modelini, oluşturulacak görüntülerin boyutu, yayılma sürecindeki zaman adımlarının sayısı ve L1 ve L2 normları arasında bir seçim gibi birkaç parametreyle birlikte geçiyoruz.

diffusion = GaussianDiffusion(
 model,
 image_size = 128,
 timesteps = 1000, # number of steps
 loss_type = 'l1' # L1 or L2
)

Difüzyon Modeli tanımlandığına göre artık eğitim zamanı. Eğitim için rastgele veriler üretiriz ve ardından Difüzyon Modelini her zamanki gibi eğitiriz:

training_images = torch.randn(8, 3, 128, 128)
loss = diffusion(training_images)
loss.backward()

Model eğitildikten sonra, sonunda aşağıdakileri kullanarak görüntüleri üretebiliriz. sample() yöntem diffusion nesne. Burada, eğitim verilerimizin rastgele olduğu göz önüne alındığında yalnızca gürültü olan 4 görüntü oluşturuyoruz:

sampled_images = diffusion.sample(batch_size = 4)

Özel Veriler Eğitimi

The denoising-diffusion-pytorch paketi ayrıca belirli bir veri kümesinde bir difüzyon modeli eğitmenize olanak tanır. Basitçe değiştirin 'path/to/your/images' içindeki veri kümesi dizin yolu ile dize Trainer() aşağıdaki nesne ve değişiklik image_size uygun değere. Bundan sonra, modeli eğitmek için kodu çalıştırmanız ve daha önce olduğu gibi örneklemeniz yeterlidir. PyTorch'un kullanılabilmesi için CUDA etkinleştirilmiş olarak derlenmesi gerektiğini unutmayın. Trainer sınıf:

from denoising_diffusion_pytorch import Unet, GaussianDiffusion, Trainer
model = Unet(
 dim = 64,
 dim_mults = (1, 2, 4, 8)
).cuda()
diffusion = GaussianDiffusion(
 model,
 image_size = 128,
 timesteps = 1000, # number of steps
 loss_type = 'l1' # L1 or L2
).cuda()
trainer = Trainer(
 diffusion,
 'path/to/your/images',
 train_batch_size = 32,
 train_lr = 2e-5,
 train_num_steps = 700000, # total training steps
 gradient_accumulate_every = 2, # gradient accumulation steps
 ema_decay = 0.995, # exponential moving average decay
 amp = True # turn on mixed precision
)
trainer.train()

Aşağıda, çok değişkenli Gauss gürültüsünden MNIST rakamlarına, ters difüzyona benzer aşamalı gürültü gidermeyi görebilirsiniz:

Final Kelimeler

Difüzyon Modelleri, veri üretme sorununa kavramsal olarak basit ve zarif bir yaklaşımdır. En son teknoloji sonuçları, rakipsiz eğitimle birleştiğinde onları büyük zirvelere taşıdı ve yeni oluşan statüleri göz önüne alındığında, önümüzdeki yıllarda daha fazla gelişme beklenebilir. Özellikle, Difüzyon Modellerinin, aşağıdakiler gibi son teknoloji modellerin performansı için gerekli olduğu bulunmuştur. DALL-E2.

Referanslar

[1] Dengesiz Termodinamiği Kullanan Derin Denetimsiz Öğrenme

[2] Veri Dağılımının Gradyanlarını Tahmin Ederek Üretken Modelleme

[3] Denoising Difüzyon Olasılık Modelleri

[4] Puana Dayalı Üretken Modellerin Eğitimi için İyileştirilmiş Teknikler

[5] İyileştirilmiş Gürültü Giderme Yayılımı Olasılık Modelleri

[6] Difüzyon Modelleri Görüntü Sentezinde GAN'ları Yendi

[7] GLIDE: Metin Kılavuzlu Difüzyon Modelleriyle Fotogerçekçi Görüntü Oluşturma ve Düzenlemeye Doğru

[8] CLIP Latentleri ile Hiyerarşik Metin-Koşullu Görüntü Oluşturma

Bu makaleyi beğendiniz mi? Daha fazla AI araştırma güncellemesi için kaydolun.

Bunun gibi daha özet makaleler yayınladığımızda size haber vereceğiz.

Bizimle sohbet

Merhaba! Size nasıl yardım edebilirim?