Difüzyon modellerinin, yüksek kaliteli veriler oluşturmak için üretken yapay zekayı nasıl kullandığını keşfedin. Gerçekçi sentetik verilerle Ultralytics eğitimini bugün geliştirmeyi öğrenin.
Difüzyon modelleri, kademeli gürültü ekleme sürecini tersine çevirerek yeni veri örnekleri oluşturmayı öğrenen bir tür üretken yapay zeka algoritmasıdır. Nesne algılama veya sınıflandırma gibi görevler için kullanılan ve verilerden etiketleri tahmin eden geleneksel ayırt edici modellerin aksine, difüzyon modelleri, gerçek dünya verilerinin istatistiksel özelliklerini yakından taklit eden yüksek kaliteli içerik (özellikle görüntüler, ses ve videolar) üretmeye odaklanır. Bu modeller, eğitim istikrarı ve çeşitli çıktılar üretme yetenekleri sayesinde, yüksek çözünürlüklü görüntü sentezi için en son teknolojiye sahip çözüm haline gelmiş ve Generative Adversarial Networks (GAN)gibi önceki liderleri geride bırakmıştır. .
Difüzyon modelinin temel mekanizması, dengesiz termodinamik üzerine kuruludur. Eğitim süreci iki ayrı aşamadan oluşur: ileri süreç (difüzyon) ve ters süreç (gürültü giderme).
Bu yinelemeli iyileştirme, ince ayrıntılar ve doku üzerinde olağanüstü bir kontrol sağlar ve bu, tek adımlı oluşturma yöntemlerine göre önemli bir avantajdır.
Difüzyon modelleri, akademik araştırmanın ötesine geçerek çeşitli endüstrilerde pratik, üretim düzeyinde araçlara dönüşmüştür.
Difüzyon modellerini diğer üretici mimarilerden ayırmak yararlıdır:
Difüzyon modelini sıfırdan eğitmek önemli miktarda hesaplama gücü gerektirirken, mühendisler önceden eğitilmiş modelleri kullanabilir veya bunları verimli dedektörlerle birlikte iş akışlarına entegre edebilir. Örneğin, bir difüzyon modelini kullanarak bir veri kümesi için arka plan varyasyonları oluşturabilir ve ardından Ultralytics kullanarak bu geliştirilmiş veriler üzerinde bir algılama modelini etiketleyip eğitebilirsiniz.
Aşağıda, kullanılarak kavramsal bir örnek verilmiştir. torch bu sistemlerin eğitiminin temelini oluşturan basit bir ileri difüzyon adımını (gürültü ekleme) simüle etmek için
kullanılır.
import torch
def add_noise(image_tensor, noise_level=0.1):
"""Simulates a single step of the forward diffusion process by adding Gaussian noise."""
# Generate Gaussian noise with the same shape as the input image
noise = torch.randn_like(image_tensor) * noise_level
# Add noise to the original image
noisy_image = image_tensor + noise
# Clamp values to ensure they remain valid image data (e.g., 0.0 to 1.0)
return torch.clamp(noisy_image, 0.0, 1.0)
# Create a dummy image tensor (3 channels, 64x64 pixels)
dummy_image = torch.rand(1, 3, 64, 64)
noisy_result = add_noise(dummy_image)
print(f"Original shape: {dummy_image.shape}, Noisy shape: {noisy_result.shape}")
Bu alan, hesaplama maliyetlerini azaltmak için piksel uzayından ziyade sıkıştırılmış gizli uzayda çalışan gizli difüzyon modelleri (LDM'ler) yönünde hızla gelişmektedir. Bu verimlilik, güçlü üretici modellerin tüketici donanımlarında çalıştırılmasını mümkün kılmaktadır. Araştırmalar devam ettikçe, üretici girdiler ile ayrıştırıcı görevler arasında daha sıkı bir entegrasyon olmasını bekliyoruz. Araştırmalar devam ettikçe, üretici girdiler ile ayırt edici görevler arasında daha sıkı bir entegrasyon bekliyoruz. Örneğin, difüzyonla üretilen senaryoların, otonom araçların güvenliğini doğrulamak veya nadir görülen patolojileri simüle ederek tıbbi görüntü analizini iyileştirmek için kullanılması gibi. Tıbbi görüntü analizini iyileştirmek için.