Buckets:

hf-doc-build/doc / diffusers /main /tr /using-diffusers /controlling_generation.md
mishig's picture
|
download
raw
13.2 kB

Kontrollü üretim

Difüzyon modelleri tarafından üretilen çıktıların kontrol edilmesi, topluluk tarafından uzun süredir hedeflenen ve şu anda aktif bir araştırma konusu olan bir alandır. Birçok popüler difüzyon modelinde, hem görsel hem de metin istemleri gibi girdilerdeki ince değişiklikler, çıktıları köklü biçimde değiştirebilir. İdeal bir dünyada, anlamların (semantiklerin) nasıl korunduğunu ve değiştirildiğini kontrol edebilmeyi isteriz.

Anlamı koruma örneklerinin çoğu, girdideki bir değişikliği çıktıdaki bir değişikliğe doğru bir şekilde eşleyebilmeye indirgenir. Yani, bir istemdeki özneye bir sıfat eklemek, tüm görüntüyü korur ve yalnızca değiştirilen özneyi değiştirir. Veya belirli bir öznenin görüntü varyasyonu, öznenin duruşunu korur.

Ayrıca, üretilen görsellerin semantik koruma dışında etkilemek istediğimiz nitelikleri vardır. Yani genel olarak, çıktılarımızın iyi kalitede, belirli bir stile uygun veya gerçekçi olmasını isteriz.

Difüzyon modellerinin üretimini kontrol etmek için diffusers'ın desteklediği bazı teknikleri belgeleyeceğiz. Bunların çoğu son derece güncel araştırmalara dayanır ve oldukça nüanslı olabilir. Bir şeyin açıklığa kavuşturulması gerekiyorsa ya da bir öneriniz varsa, forum'da bir tartışma başlatmaktan veya bir GitHub issue açmaktan çekinmeyin.

Üretim sürecinin nasıl kontrol edilebileceğine dair yüksek düzeyde bir açıklama ve teknik detaylara dair kısa bir özet sunuyoruz. Teknik detaylar hakkında daha derinlemesine açıklamalar için, pipeline'lerden bağlantısı verilen orijinal makaleler her zaman en iyi kaynaklardır.

Kullanım durumuna bağlı olarak, buna uygun bir teknik seçilmelidir. Birçok durumda bu teknikler birleştirilebilir. Örneğin, Textual Inversion ile üretilen çıktılara daha fazla anlamsal yönlendirme sağlamak için Textual Inversion, SEGA ile birleştirilebilir.

Aksi belirtilmedikçe, bunlar mevcut modellerle çalışan ve kendi ağırlıklarını gerektirmeyen tekniklerdir.

  1. InstructPix2Pix
  2. Katıl ve Coşkuyla Karşıla
  3. Anlamsal Yönlendirme
  4. Kendine Dikkat Yönlendirmesi
  5. Depth2Image
  6. MultiDiffusion Panorama
  7. DreamBooth
  8. Metinsel Tersine Çevirme
  9. ControlNet
  10. Komut Ağırlıklandırma
  11. Özel Difüzyon
  12. DiffEdit
  13. T2I-Adapter
  14. FABRIC

Kolaylık olması için, hangi yöntemlerin yalnızca çıkarım (inference) için, hangilerinin ise ince ayar/eğitim gerektirdiğini gösteren bir tablo sunuyoruz.

Yöntem Sadece çıkarım Eğitim / ince ayar gerektirir Yorumlar
InstructPix2Pix ✅ ❌ Belirli düzenleme talimatlarında daha iyi performans için ayrıca ince ayar yapılabilir.
Katıl ve Coşkuyla Karşıla ✅ ❌
Anlamsal Yönlendirme ✅ ❌
Kendine Dikkat Yönlendirmesi ✅ ❌
Depth2Image ✅ ❌
MultiDiffusion Panorama ✅ ❌
DreamBooth ❌ ✅
Metinsel Tersine Çevirme ❌ ✅
ControlNet ✅ ❌ Bir ControlNet, özel bir koşullandırmaya (conditioning) göre eğitilebilir/ince ayarlanabilir.
Komut Ağırlıklandırma ✅ ❌
Özel Difüzyon ❌ ✅
DiffEdit ✅ ❌
T2I-Adapter ✅ ❌
Fabric ✅ ❌

InstructPix2Pix

Makale

InstructPix2Pix is fine-tuned from Stable Diffusion to support editing input images. It takes as inputs an image and a prompt describing an edit, and it outputs the edited image. InstructPix2Pix has been explicitly trained to work well with InstructGPT-like prompts.

Katıl ve Coşkuyla Karşıla

Makale

Attend and Excite, istemdeki öznelerin nihai görüntüde sadık bir şekilde temsil edilmesini sağlar.

Girdi olarak, prompttaki ve görüntüde bulunması gereken konulara karşılık gelen bir dizi token indeksi verilir. Gürültüden arındırma sırasında, her token indeksinin görüntünün en az bir yaması için minimum bir dikkat eşiğine sahip olması garanti edilir. Ara latentler, en çok ihmal edilen konu tokenının dikkatini güçlendirmek için gürültüden arındırma süreci boyunca yinelemeli olarak optimize edilir; bu işlem, tüm konu tokenları için dikkat eşiği aşılanana kadar devam eder.

Pix2Pix Zero gibi, Attend and Excite de hattında bir mini optimizasyon döngüsü içerir (önceden eğitilmiş ağırlıklara dokunmadan) ve standart StableDiffusionPipeline'dan daha fazla bellek gerektirebilir.

Anlamsal Yönlendirme (SEGA)

Makale

SEGA, bir görüntüden bir veya daha fazla kavramın uygulanmasına veya kaldırılmasına olanak tanır. Kavramın gücü de kontrol edilebilir. Örneğin, gülümseme kavramı, bir portredeki gülümsemeyi kademeli olarak artırmak veya azaltmak için kullanılabilir.

Sınıflandırıcı serbest yönlendirmenin (classifier free guidance) boş istek girdileri aracılığıyla yönlendirme sağlamasına benzer şekilde, SEGA kavramsal istekler üzerinde yönlendirme sağlar. Bu kavramsal isteklerden birden fazlası aynı anda uygulanabilir. Her kavramsal istek, yönlendirme pozitif veya negatif olarak uygulanmasına bağlı olarak kavramını ekleyebilir veya kaldırabilir.

Pix2Pix Zero veya Attend and Excite'nin aksine, SEGA, açık bir gradyan tabanlı optimizasyon yerine doğrudan difüzyon süreciyle etkileşime girer.

Öz-dikkat Yönlendirmesi (SAG)

Makale

Self-attention Guidance, görüntülerin genel kalitesini iyileştirir.

SAG, yüksek frekanslı detaylara koşullanmamış tahminlerden tamamen koşullanmış görüntülere rehberlik sağlar. Yüksek frekanslı detaylar, UNet öz-dikkat haritalarından çıkarılır.

Depth2Image

Proje

Depth2Image, metin yönlendirmeli görüntü çeşitlendirmesinde anlambilinin daha iyi korunması için Stable Diffusion'dan ince ayarlanmıştır.

Orijinal görüntünün monoküler derinlik tahminine koşullanır.

MultiDiffusion Panorama

Makale

MultiDiffusion Panorama, önceden eğitilmiş bir difüzyon modeli üzerinde yeni bir üretim süreci tanımlar. Bu süreç, yüksek kaliteli ve çeşitli görseller üretmek için kolayca uygulanabilen birden fazla difüzyon üretim yöntemini bir araya getirir. Sonuçlar, istenen en-boy oranı (ör. panorama) ve sıkı segmentasyon maskelerinden sınırlayıcı kutulara kadar uzanan mekânsal yönlendirme sinyalleri gibi kullanıcı tarafından sağlanan kontrollerle uyumludur. MultiDiffusion Panorama, keyfi en-boy oranlarında (ör. panoramalar) yüksek kaliteli görseller üretmenizi sağlar.

Kendi modellerinizi ince ayar yapma

Önceden eğitilmiş modellerin yanı sıra, Diffusers, kullanıcıların sağladığı veriler üzerinde modelleri ince ayar yapmak için eğitim betikleri sunar.

DreamBooth

Proje

DreamBooth, modele yeni bir konu öğretmek için ince ayar yapar. Örneğin, bir kişinin birkaç fotoğrafı, o kişinin farklı stillerdeki görsellerini üretmek için kullanılabilir.

Metinsel Tersine Çevirme

Makale

Textual Inversion, modele yeni bir kavram öğretmek için ince ayar yapar. Örneğin, bir sanat eserinin stilini gösteren birkaç görsel, o stilde görseller üretmek için kullanılabilir.

ControlNet

Makale

ControlNet, ek bir koşul ekleyen yardımcı bir ağdır. Kenar algılama, karalamalar, derinlik haritaları ve anlamsal segmentasyonlar gibi farklı koşullandırmalar üzerinde eğitilmiş 8 kanonik önceden eğitilmiş ControlNet bulunmaktadır.

İstem Ağırlıklandırma

Komut ağırlıklandırma, metin girdisinin belirli kısımlarına daha fazla dikkat ağırlığı veren basit bir tekniktir.

Özel Difüzyon

Makale

Custom Diffusion, önceden eğitilmiş metinden görüntüye difüzyon modelinin çapraz dikkat haritalarını ince ayarlar. Ayrıca Textual Inversion'ın ek olarak uygulanmasına olanak tanır. Tasarımı gereği çoklu kavram eğitimini destekler. DreamBooth ve Textual Inversion gibi, Custom Diffusion da önceden eğitilmiş bir metinden görüntüye difüzyon modeline yeni kavramları öğretmek ve ilgi duyulan kavram(lar)ı içeren çıktılar üretmek için kullanılır.

DiffEdit

Makale

DiffEdit, girdi görsellerini olabildiğince koruyarak girdi görsellerinin ve girdi istemlerinin anlamsal düzenlemesine olanak tanır.

T2I-Adapter

Makale

T2I-Adapter, ek bir koşul ekleyen yardımcı bir ağdır. Kenar algılama, eskiz, derinlik haritaları ve anlamsal segmentasyon gibi farklı koşullandırmalar üzerinde eğitilmiş 8 kanonik önceden eğitilmiş adaptör bulunmaktadır.

Fabric

Makale

Fabric, en yaygın kullanılan mimarilerde bulunan öz-dikkat katmanını kullanarak difüzyon sürecini bir geri bildirim görüntüsü kümesine koşullandıran, popüler difüzyon modellerinin geniş bir yelpazesine uygulanabilir, eğitim gerektirmeyen bir yaklaşımdır.

Xet Storage Details

Size:
13.2 kB
·
Xet hash:
83cde93ab0c405a2f0470496805b0c0fadf8063c839049d8fa2a40eec4e389b2

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.