Ultralytics YOLO27: Bekleme listesine katıl.
YOLO'yu lisansla
Ultralytics Sözlüğüne dön

Flow Matching

Akış eşleştirme, bir ağı gürültüyü veriye taşıyan hızı tahmin edecek şekilde eğitir; Stable Diffusion 3, FLUX.1 ve Movie Gen'in arkasındaki amaç budur.

Akış eşleştirme, üretken modelleri öğrenilmiş bir hız alanını izleyerek rastgele gürültüyü veriye dönüştürecek şekilde eğiten bir yöntemdir. Bir sinir ağı, herhangi bir nokta ve 0 ile 1 arasındaki herhangi bir zaman için noktanın hangi yönde ve ne hızda hareket etmesi gerektiğini öğrenir. Örnek üretmek için Gauss gürültüsünden başlanır ve bu hız, zaman 1'e ulaşana kadar sıradan bir diferansiyel denklem (ODE) çözücüsüyle tümleştirilir. Meta AI ve Weizmann Bilim Enstitüsü'nden Yaron Lipman ve çalışma arkadaşları yöntemi ICLR 2023'te Üretken Modelleme için Akış Eşleştirme başlıklı çalışmayla tanıttı. Aynı dönemde yayımlanan iki çalışma, neredeyse aynı hedefe düzeltilmiş akış ve stokastik interpolant adlarını verdi. Akış eşleştirme, eğitim sırasında ODE'yi simüle etmeden sürekli normalleştirme akışlarını eğitir, difüzyon modellerini özel bir durum olarak kapsar ve Stable Diffusion 3, FLUX.1, Meta'nın Movie Gen'i ile yakın tarihli birçok konuşma ve robotik modelinin eğitim hedefidir.

Akış Eşleştirme Nasıl Çalışır?#

Eğitim sırasında hiçbir şey üretilmez. Her adımda bir veri örneği x1, standart Gauss dağılımından bir gürültü örneği x0 ve 0 ile 1 arasında bir zaman t seçilir; ardından bu iki nokta arasındaki doğru üzerinde bir nokta belirlenir: xt = (1 - t) * x0 + t * x1. Bu doğru üzerindeki bir nokta sabit x1 - x0 hızıyla hareket eder. Bu nedenle ağ v(xt, t), x1 - x0 değerini tahmin etmek üzere standart ortalama kare hatasıyla eğitilir. Her gürültü-veri çifti yalnızca tek bir yol tanımlar ancak herhangi bir noktadan birçok yol geçer; o noktadaki gürültüden veriye akışın hızı bunların ortalamasıdır. Makale, basit çift başına hedefler üzerinde regresyon yapmanın bu hesaplanamaz ortalama üzerinde regresyon yapmakla aynı gradyanları verdiğini kanıtlar. Böylece eğitim, ODE simülasyonu gerektirmeyen standart bir regresyon kayıp işlevine dayanır.

Üretim, dx/dt = v(x, t) değerini t = 0 noktasından t = 1 noktasına, genellikle Euler veya daha yüksek mertebeli çözücü adımlarıyla tümleştirir. Bu PyTorch kodu, 2B noktalardan oluşan iki küme üzerinde küçük bir hız ağı eğitir ve ardından 1, 2 ve 8 Euler adımıyla örnekler üretir:

import torch
from torch import nn

torch.manual_seed(0)
# Velocity network v(x, t) for 2D points; the data are two clusters at (2, 2) and (-2, -2)
net = nn.Sequential(nn.Linear(3, 128), nn.SiLU(), nn.Linear(128, 128), nn.SiLU(), nn.Linear(128, 2))
optimizer = torch.optim.Adam(net.parameters(), lr=1e-3)
centers = torch.tensor([[2.0, 2.0], [-2.0, -2.0]])

for step in range(2000):
    x1 = centers[torch.randint(0, 2, (256,))] + 0.2 * torch.randn(256, 2)  # data samples
    x0 = torch.randn(256, 2)  # noise samples
    t = torch.rand(256, 1)
    xt = (1 - t) * x0 + t * x1  # point on the straight path from noise to data
    loss = ((net(torch.cat([xt, t], dim=1)) - (x1 - x0)) ** 2).mean()  # regress the path's velocity
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()

# Generate: start from noise and follow the learned velocity field with Euler steps
for steps in (1, 2, 8):
    x = torch.randn(1000, 2)
    with torch.no_grad():
        for i in range(steps):
            x = x + net(torch.cat([x, torch.full((1000, 1), i / steps)], dim=1)) / steps
    near = (torch.cdist(x, centers).min(dim=1).values < 0.6).float().mean()
    print(f"{steps}-step sampling: {near:.0%} of samples land near a cluster")

Kod önce 1-step sampling: 0% of samples land near a cluster değerini, ardından 2 adım için %47'yi ve 8 adım için %94'ü yazdırır. t = 0 noktasında her gürültü noktasının beklenen hedefi aynıdır: verilerin ortalaması. Bu nedenle tek bir adım tüm örnekleri iki kümenin arasındaki boş alana gönderir. Her eğitim yolu düzdür ancak birbirine yakın başlayan yollar farklı kümelerde sonlanır; bu yolların ortalamasını alan öğrenilmiş akış yine de eğridir. Bu nedenle az adımlı üreticiler, akışı düzleştirmek için modelin kendi gürültü-örnek çiftleri üzerinde yeniden eğitim yapan yeniden akış veya tutarlılık modellerine damıtma gibi tekniklerden yararlanır.

  • Difüzyon modelleri: Difüzyon eğitimi, veriyi bir gürültü çizelgesine göre bozar ve ağa eklenen gürültüyü tahmin etmeyi öğretir; ardından örnekler bu süreç tersine çevrilerek üretilir. Akış eşleştirme makalesi, hedef işlevinin difüzyon modellerinin kullandığı yollar dâhil tüm Gauss olasılık yollarını kabul ettiğini gösterdi ve bu modelleri eğitmenin daha kararlı bir yolunu sunduğunu ortaya koydu. Düz yol ise ayrı ve daha basit bir tercihtir. Her iki model ailesi de difüzyon dönüştürücüsü (DiT) gibi mimarileri, sınıflandırıcısız yönlendirmeyi ve ODE örnekleyicilerini paylaşır.
  • Düzeltilmiş akış: Aynı doğrusal enterpolasyonu ve hız kaybını kullanır; dolayısıyla doğrusal yol için iki ad büyük ölçüde eş anlamlıdır. Düzeltilmiş akış makalesi, yörüngeleri daha da düzleştirmek için yeniden akış prosedürünü ekler.
  • Normalleştirme akışları: Ayrık normalleştirme akışları, tersinir katmanları üst üste dizer ve tam olabilirlikle eğitilir. Sinirsel ODE türü olan sürekli normalleştirme akışları dönüşümü bir ODE ile tanımlar ancak maksimum olabilirlikle eğitilir; bu da her eğitim adımında ODE'nin çözülmesini gerektirir. Akış eşleştirme aynı tür ODE modelini bu çözümü yapmadan regresyonla eğitir.
  • Optik akış: Adı benzer olsa da ilgisizdir. Optik akış, video kareleri arasındaki piksellerin görünür hareketidir; akış eşleştirme ise örnekleri olası veriler uzayında hareket ettirir.

Akış Eşleştirme Nerelerde Kullanılır#

  • Görüntü üretimi: Stability AI, Stable Diffusion 3'ü bir düzeltilmiş akış dönüştürücüsü ile eğitti ve eğitim zaman adımlarını orta gürültü düzeylerini öne çıkaran logit-normal dağılımdan örnekledi. Black Forest Labs'in FLUX.1 modeli ise 12 milyar parametreli bir düzeltilmiş akış dönüştürücüsüdür. Bu metinden görüntü üreten modellerin oluşturduğu görüntüler, YOLO26 algılama modellerini eğitmek için kullanılan veri kümelerine nadir nesneler, hava koşulları ve bakış açıları ekleyen sentetik veriler olarak kullanılır.
  • Video üretimi: Meta'nın Movie Gen'i, akış eşleştirmeyle eğitilmiş 30 milyar parametreli bir dönüştürücüdür; saniyede 16 kare hızında 16 saniyeye kadar 1080p video üretir.
  • Konuşma: Meta'nın Voicebox'ı 50.000 saatten fazla konuşma üzerinde otoregresif olmayan bir akış eşleştirme modeli eğitti. Sıfır örnekli metinden konuşmaya dönüşümde VALL-E'nin %5,9'luk oranına karşı %1,9 sözcük hata oranına ulaştı ve 20 kata kadar daha hızlı çalıştı. F5-TTS daha sonra akış eşleştirmeyi difüzyon dönüştürücüsüyle birleştirdi.
  • Robot kontrolü: Physical Intelligence'ın π0 modeli, 3 milyar parametreli bir görsel-dil modeline 300 milyon parametreli bir akış eşleştirme "eylem uzmanı" ekler. Model, 10 tümleştirme adımıyla gelecekteki 50 eylemlik parçalar üretir ve robotları 50 Hz'ye kadar kontrol eder.

Çözümleri keşfet

Sporda bilgisayarlı görü

Sporda bilgisayarlı görü

Ultralytics YOLO'nun oyuncu ve top takibi, performans analitiği, antrenörlük içgörüleri ve sporcu rehabilitasyonuyla spor alanında görsel yapay zekâyı nasıl güçlendirdiğini keşfet.
Daha fazla bilgi edin
Hava görüntüleri için bilgisayarlı görü

Hava görüntüleri için bilgisayarlı görü

İHA ve hava görüntülerini Ultralytics YOLO ile tarım, su ürünleri yetiştiriciliği, koruma çalışmaları ve jeo-uzamsal analiz için gerçek zamanlı içgörülere dönüştür.
Daha fazla bilgi edin
Havacılıkta bilgisayarlı görü

Havacılıkta bilgisayarlı görü

Uçak denetimi, pistteki yabancı madde tespiti, havaalanı yer operasyonları ve kompozit malzeme kusurlarının tespiti için Ultralytics YOLO ile havacılık ve uzay sektöründe bilgisayarlı görü uygula.
Daha fazla bilgi edin
Güvenlikte bilgisayarlı görü

Güvenlikte bilgisayarlı görü

Ultralytics YOLO modelleriyle her sahayı koru. Görsel yapay zekâ; çevre izleme, tehdit tespiti, plaka tanıma ve iş yeri güvenliğini destekler.
Daha fazla bilgi edin
Robotikte bilgisayarlı görü

Robotikte bilgisayarlı görü

Ultralytics YOLO modelleriyle daha akıllı makinelere güç ver. Robotikte görsel yapay zekâ; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü destekler.
Daha fazla bilgi edin
Lojistikte bilgisayarlı görü

Lojistikte bilgisayarlı görü

Ultralytics YOLO modelleriyle lojistiği kolaylaştır. Görüntü yapay zekâsı; paket denetimini, ayrıştırmayı, araç takibini ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Perakendede bilgisayarlı görü

Perakendede bilgisayarlı görü

Ultralytics YOLO modelleriyle perakendeyi yeniden tasarla. Görüntü yapay zekâsı; envanter takibini, raf izlemeyi, kuyruk yönetimini ve daha kapsamlı müşteri analizlerini mümkün kılar.
Daha fazla bilgi edin
Sağlık hizmetlerinde bilgisayarlı görü

Sağlık hizmetlerinde bilgisayarlı görü

Ultralytics YOLO modelleriyle sağlık çözümleri geliştir. Sağlık hizmetlerinde görüntü yapay zekâsı; daha hızlı tıbbi görüntüleme, daha akıllı tanı ve hasta takibini mümkün kılar.
Daha fazla bilgi edin
Üretimde bilgisayarlı görü

Üretimde bilgisayarlı görü

Ultralytics YOLO modelleriyle üretimi optimize et. Görsel yapay zekâ; kalite kontrolünü, kusur tespitini, kişisel koruyucu donanım uyumunu ve montaj hattı otomasyonunu destekler.
Daha fazla bilgi edin
Otomotivde bilgisayarlı görü

Otomotivde bilgisayarlı görü

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görüden yararlan. Görsel yapay zekâ; daha akıllı yollar için yol güvenliğini, sürüş desteğini ve araç otomasyonunu ileri taşır.
Daha fazla bilgi edin
Tarımda bilgisayarlı görü

Tarımda bilgisayarlı görü

Ultralytics YOLO modelleriyle akıllı tarıma görüntü yapay zekâsı kazandır. Daha yüksek ve akıllı verim için mahsul izleme, hayvan takibi ve hassas tarımı destekle.
Daha fazla bilgi edin

Geleceğin yapay zekasını birlikte inşa edelim!

Makine öğreniminin geleceğine yolculuğuna başla