1 puan yazan GN⁺ 2024-08-29 | 1 yorum | WhatsApp'ta paylaş
  • GameNGen, yalnızca sinir ağı modelleriyle klasik oyun DOOM'un ekran geçişlerini üretip, ayrı bir geleneksel motor olmadan gerçek zamanlı etkileşimi mümkün kılıyor
  • Tek bir TPU üzerinde 20fps'nin üzerinde çalışıyor ve uzun oynanış akışlarında da görüntü kalitesi ile tepki verebilirliği korumayı hedefliyor
  • Bir sonraki kare tahmininde PSNR 29.4 elde edildi; insan değerlendiriciler kısa kliplerde gerçek oyun ile simülasyonu yalnızca rastgele tahminden biraz daha iyi ayırt edebildi
  • Eğitim, bir RL ajanının oluşturduğu eylem-gözlem kayıtlarına dayanıyor; difüzyon modeli, geçmiş kareler ve eylem dizilerinden bir sonraki kareyi üretiyor
  • Çıkarım sırasında biriken otoregresif drift'i azaltmak için eğitimde bağlam karelerine Gauss gürültüsü ekleniyor ve bu, uzun süreli görsel kararlılıkta önemli rol oynuyor

Yalnızca sinir ağlarıyla çalışan DOOM simülasyonu

  • GameNGen, karmaşık ortamlarda uzun akışlar boyunca gerçek zamanlı etkileşimi mümkün kılan, sinir ağı modeli tabanlı bir oyun motorudur
  • Demo, insanların DOOM oynadığı gerçek zamanlı kaydı yalnızca GameNGen sinir ağı modeli ile simüle etmenin sonucu
  • Performans ve kalite, gerçek oynanıştan ayırt edilebilirliği düşürmeye odaklanıyor
    • Tek bir TPU üzerinde 20fps'nin üzerinde DOOM'u etkileşimli olarak simüle ediyor
    • Bir sonraki kare tahmininde PSNR 29.4 değerine ulaşıyor
    • Bu PSNR, kayıplı JPEG sıkıştırmasına benzer bir düzey
    • İnsan değerlendiriciler, kısa oyun klipleri ile simülasyon kliplerini yalnızca rastgele tahminden biraz daha iyi ayırt edebildi
  • İlgili materyaller Paper ve Arxiv üzerinden görülebilir

Eğitim verisi ve üretici modelin yapısı

  • Veri toplama, insan oynanışını büyük ölçekte toplamak yerine otomatik bir RL ajanı eğitilerek yapılıyor
    • Ajanın eğitim bölümlerinde eylemler ve gözlemler kaydediliyor
    • Kaydedilen eylem-gözlem kayıtları, üretici modelin eğitim verisi oluyor
  • Üretici model olarak küçük bir difüzyon modeli olan Stable Diffusion v1.4 yeniden kullanılıyor
    • Önceki eylem ve gözlem kare dizilerini koşul olarak kullanıp bir sonraki kareyi üretiyor
    • Otoregresif çıkarımda oluşan drift'i azaltmak için eğitim sırasında kodlanmış bağlam karelerine Gauss gürültüsü ekleniyor
    • Bu gürültü enjeksiyonu, modelin önceki karelerden örneklenen bilgiyi düzeltmesini sağlayarak uzun süreli görsel kararlılığı korumada kritik önem taşıyor
  • Stable Diffusion v1.4'ün önceden eğitilmiş otokodlayıcısı, 8x8 piksellik yamaları 4 gizil kanala sıkıştırıyor
    • Oyun karesi tahmininde küçük ayrıntılarda ve özellikle alttaki HUD çubuğunda belirgin artefaktlar oluşuyor
    • Görüntü kalitesini artırmak için gizil otokodlayıcının yalnızca decoder'ı, hedef kare pikselleri üzerindeki MSE kaybıyla eğitiliyor

1 yorum

 
GN⁺ 2024-08-29
Hacker News yorumları
  • Difüzyon modellerinde düşündüğümden daha fazla neden-sonuç ve sıralılık var gibi görünmesi şaşırtıcı
    Google’ın difüzyon modelinin çekirdeği olarak SD 1.4 kullanması da, dev bulut tekelleri için bile açık modellerin işe yaradığına dair iyi bir hatırlatma
    Özette etkileyici bulduğum noktalar şunlardı: 1) Bir ajanın Doom oynamasını sağlayarak fiilen sınırsız eğitim verisi elde etmeleri, 2) orijinal karelere Gauss gürültüsü ekleyip sonraki kareleri yeniden “düzeltmesini” ödüllendirmeleri; bunun da uzun vadede kararlı “rendering” için kilit olması
    Özellikle sonuncusu, modele hata düzeltmeyi ve kararlılığı öğretme sezgisi açısından ilginç
    Bu modeli bir tür “Doom tabanlı model” gibi görüp, fotogerçekçi ya da ışın izleme tarzında ince ayar yaparak daha iyi görünen rendering elde etmenin kolay olup olmayacağını da merak ediyorum

    • Demo videosuna yakından bakınca “neden-sonuç ve sıralılık” beklentisini biraz aşağı çekmek gerekiyor
      Oyuncu neredeyse hiç geri dönmüyor; karakter dönüp aynı şeyi tekrar gördüğünde ise aslında oldukça değişmiş oluyor. Gri duvarlı ve üçgen tabelalı oda özellikle göze çarpıyor
      Bu, difüzyon modellerinden beklenen davranışla uyumlu. Milyarlarca karelik oynanışla eğitildiği için önceki birkaç kareye dayanarak makul görünen “sonraki” kareyi iyi üretiyor, ancak bölüm yapısını hatırlamak gibi mantıksal oyun kısıtlarını derinlemesine anlamıyor
    • Birkaç yanlış anlamayı netleştirmek gerekirse, difüzyon modelinin kendisi durum tutmaz
      Ağırlıklara neden-sonuç gibi kavramlar bir ölçüde kodlanmış olabilir, ama model tek seferde yalnızca bir kare render eder. Zaten bu bir metinden-görüntüye modelidir, metinden-videoya modeli değil
      Metin yerine önceki durum ve kare, sonraki kare tahmininin girdisi olarak verilir
      Gürültü, SD modeline verilmeden önce önceki kareye eklenir; pekiştirmeli öğrenme ajanının bunu “düzeltmesi” söz konusu değildir
      Gürültü giderme hedefi makine öğrenmesinde yaygın olarak kullanılır ve sezgisel olarak tahmin modelini çevredeki kareler ya da kelimeler gibi bağlamdan yararlanmaya zorlar
      Burada, üretici difüzyon modelinin rastlantısallığından doğan küçük hataların birikerek otoregresif sapmaya yol açmasını önlemeye yardımcı olur. Figure 4’te oyuncu hareketsiz durduğunda bu tür bir sapma görülür
    • Bu bir oyundan ziyade, önceki birkaç kareye dayanarak sonraki kareyi tahmin eden oyun videosu belleğine daha yakın
      “Sonra ne olmuş olabileceğini hayal edebilmek” gibi bir şey
      Buna dünyanın en verimsiz video sıkıştırması demek istiyorum
      Asıl görmek istediğim şey gerçek öngörü gücü, yani hayal gücü. Özette pek görünmüyordu
      Model klasik harita setleriyle eğitilmiş; peki bilinmeyen bir haritadaki oynanıştan birkaç kare girilirse ne yapar? Sonra olacakları ne kadar iyi hayal edebilir?
    • Dev şirketlerin her projeye tüm kaynaklarını yığdığını düşünmek yaygın bir yanılgı
      Bu makaleyi dört ortak yazar yazmış. Muhtemelen epey kaynak almışlardır, ama yine de araştırma bölümüne ayrılmış kaynak havuzu içinde paylaşmak zorunda kalmış olmalılar
      Google’da bile Gemini birkaç sürümden oluşan tek bir şey
    • Google, eski LLM notundan sonra bunu en iyi bilenlerden olmalı. Kabaca “açık modellerle savaşmaya ya da rekabet etmeye çalışırken kaybediyoruz” diyordu: https://www.semianalysis.com/p/google-we-have-no-moat-and-ne...
  • Bunun çalışıyor olması bile inanılmaz derecede şaşırtıcı; üstüne bir de 20fps render yapabilmesi harika
    Önceki kareyi ve eylemi kodlayıp her adımda modele vermek gerektiği için, difüzyon modeliyle yinelemeli sinir ağının karışımı gibi görünüyor
    Soyut düzeyde modelin çok oynadığı bir oyunu rüyasında gördüğü, gerçek zamanlı girdinin de o rüyanın durumunu değiştirdiği hissi var
    İnsanların da biraz daha fazla belleği içine yerleştirilmiş bir “bir sonraki anı tahmin makinesi” olup olmadığı merak uyandırıyor

    • İnsanlarda böyle bir yetenek olması epey mantıklı
      Mantığı tersine çevirip bir sonraki kareyi, mevcut karenin sonucu olarak beklenen bir hipotez gibi görürsek, bu “hipotezi” gerçek duyularla karşılaştırmak; duyusal girdinin tamamını işlemektense farkları işlemeyi daha kolay kılar
      Richard Dawkins’in yakın tarihli bir podcast’te[1] söylediği gibi, genler iyi tahmin makineleridir; çünkü hayatta kalma tahmine bağlıdır. Görme için kullanılan kaynak miktarı düşünüldüğünde, görsel tahminler üretebilme yeteneği buna gayet uyar
      Peki afantazi bize ne anlatır?
      [1] https://podcasts.apple.com/dk/podcast/into-the-impossible-wi...
    • İnsanlar gerçekten de böyle varlıklar olabilir. En azından Lisa Feldman Barrett böyle görüyor
      Lex Fridman podcast’inin “Counterintuitive Ideas About How the Brain Works”[2] bölümünü dinlemeye değer. Beynin tepki vermekten ziyade sürekli tahminle çalışmasının en verimli yol olduğunu ve benzeri noktaları açıklıyor
      Bilim iletişimcisi olarak da harika; dinlemeye devam ettiriyor
      [1] https://en.wikipedia.org/wiki/Lisa_Feldman_Barrett
      [2] https://www.youtube.com/watch?v=NbdRIVCBqNI&t=1443s
    • Doğru. Öngörücü kodlamaya bakmak yeterli: https://en.wikipedia.org/wiki/Predictive_coding
    • Tam bir v5 TPU üzerinde çalışıyor: https://cloud.google.com/blog/products/ai-machine-learning/i...
      3090 gibi üst seviye tüketici GPU’larıyla nasıl karşılaştırıldığı net değil ama INT8 TFLOPS benzer görünüyor. TPU’nun belleği daha az (16GB’a karşı 24GB), diğer özellikleri ise pek bilmiyorum
      Yine de bir şeyler oturmuyor. SD, normalde 3090’da bile yüksek kaliteli tek bir sonuç üretmek için en az birkaç saniye sürer; burada ise neredeyse iki haneli katlar kadar daha hızlı. Bu işte TPU’nun GPU’yu ezdiği anlamına geliyor gibi görünüyor
      Düşük çözünürlüklü (320x240) görüntüler üretiyor gibi ama yine de fazlasıyla hızlı hissettiriyor
    • İnsanları “bir sonraki anı tahmin makinesi” olarak görmek fazla indirgemeci görünüyor
      Yapay zekadan yola çıkıp geriye doğru çıkarak tüm bilişi “bir sonraki bir şeyi tahmin eden” çerçevesine oturtmak gibi
      Sonuçta stokastik papağan tartışmasının tekrarı
  • Bu ileti dizisini gördükten sonra, bu makalenin gerçek zamanlı kullanıcı girdisini alıp çıktıya yansıtan bir sistemi anlattığının söylenemeyeceğini belirtmeye değer diye düşünüyorum
    Ancak özetin ifadesi, böyle bir şey oluyormuş gibi güçlü biçimde ima ediyor gibi geldi
    Ajanın DOOM oynadığı büyük ölçekli verilerle eğitiliyor ve kullanıcı değerlendirmesi için video örnekleri sunuyorlar; fakat kullanıcının simülasyona gerçek zamanlı girdi verip yaklaşık 20 FPS’te “DOOM oynaması” şeklinde değil
    Makalede “oyunu başlangıçta nasıl etkili biçimde oluşturacağımız, insan girdisini en iyi nasıl kullanacağımız gibi temel sorular hâlâ duruyor”, “nihai hedef, insan oyuncuların simülasyonla etkileşime girmesini sağlamak” gibi ifadeler ipucu niteliğinde
    En önemlisi, gerçek zamanlı kullanıcı oynanışını açıklayan bir bölüm yok

    • Model yayımlanmadığı için oynanış kalitesini doğrudan değerlendiremeyiz, ama yazarlardan biri “oynanabilir ve proje sayfasındaki video gerçek oynanış” demiş: https://x.com/shlomifruchter/status/1828850796840268009
      https://gamengen.github.io/ üst kısmındaki video da “bunlar insanların oyunu oynadığı gerçek zamanlı kayıtlar” diye başlıyor
      Bu iddialara bakılırsa projenin sonlarına doğru bir insanın önüne konabilecek oynanabilir bir sistem yapmışlar gibi görünüyor. Ancak arXiv’e ilk taslağın yüklendiği anda durum böyle olmayabilir
    • Başta ben de öyle düşünmüştüm, ama özete değil makaleye tekrar bakınca durum farklı
      “A, tuş girdileri ve fare hareketleri kümesidir…” ve “…eylemlere koşullandırmak için her eylem için A_emb gömmesini öğreniriz” deniyor
      Yani bu modelin difüzyon süreci kelimelerle değil, kullanıcı eylemlerinden gelen eylem gömmesi A ile koşullandırılıyor
      Ardından gürültü eklenmiş başlangıç karesini bir latent temsile kodlayıp gürültülü latent temsile ikinci koşul olarak ekliyor
      Sonuçta yalnızca Doom görüntüleriyle eğitilen, mevcut Doom karesi ve kullanıcı eylemine koşullandırılarak sonraki kareyi üreten bir difüzyon modeli
      Dolayısıyla kullanıcı gerçekten oynuyor sayılır
      Yine de bunun mümkün olması şaşırtıcı değil. Aslında oyunun sinir ağıyla yapılmış bir kaydı gibi, ama havalı bir teknik demo
    • Makalenin bu kısmı daha açık yazması gerektiği doğru, ancak 5.2.3 bölümündeki cümle nedeniyle oynanabilir olduğunu ve insanların oynadığını düşünüyorum
      “Modeli elle oynarken, bazı bölgeler ikisi için de çok kolay, bazıları ikisi için de çok zor, bazı bölgelerde ise ajan çok daha iyi oynuyor” deniyor
      Hayal gücüm yetersiz olabilir ama “modeli elle oynamak” ifadesini makul biçimde başka türlü yorumlamanın bir yolunu bulamıyorum
    • Anlattığın şey şu harika projeyi akla getiriyor:
      https://www.youtube.com/watch?v=udPY5rQVoW0
      “Playing a Neural Network's version of GTA V: GAN Theft Auto”
    • Bu yanlış. Bu, insanların oynayabildiği etkileşimli bir simülasyon
      “Figure 1: a human player is playing DOOM on GameNGen at 20 FPS.”
      Özet cümlesi muğlak olduğu için burada çok kafa karışıklığı olmuş, ama makale bu noktada gayet açık
      Teknik uzmanların çok olduğu bir forumda böyle yanlış bilginin yüksek oy alması epey hayal kırıklığı yaratıcı
  • Doom’u her şeyde çalıştırma arayışı sürüyor
    Teknik olarak konuşursak bu, mümkün olan en büyük anti-Doom, yani donanım gereksinimleri en yüksek Doom değil mi?
    Donanım özelliklerini doğrusal bir eksen olarak düşünürsek Doom’un artık iki uçta da yer alması komik

    • Bu kısmı okuduğumda, teknik olarak Doom’u hiç çalıştırmadığı için böyle diyeceğini sanmıştım
      Yani Doom’u özgün donanım-yazılım ortamı olmadan port edip çalıştırmak değil, Doom’un kendisi olmadan Doom çalıştırmak gibi
    • Donanım gereksinimleri en yüksek Doom ise, ışın atımıyla render hedefini keyfi biçimde çok yükseğe ayarlayarak da mümkün olmaz mı?
    • Bu No-Doom
    • Gerçek anlamda büyük anti-Doom, bu modellerin sonsuz iç içe geçtiği, modelin modeli tahmin ettiği ve en sonunda Doom’u tahmin ettiği bir yapı olurdu
      Anti-Doom’un bir sonraki aşaması, Doom çıktısı üreten modeli üreten bir model olurdu
    • Burada daha yakın benzetme “Minecraft içinde Minecraft çalıştırmak” gibi: https://news.ycombinator.com/item?id=32901461
  • Doom sistem gereksinimleri:
    4 MB RAM, 12 MB disk alanı
    Stable Diffusion v1, 860M UNet ve CLIP ViT-L/14 (540M) kullanıyor; checkpoint boyutu 4,27 GB, tam EMA 7,7 GB
    TPU-v5e üzerinde çalışıyor; çip başına maksimum işlem gücü bf16 için 197 TFLOPs, Int8 için 393 TFLOPs; HBM2 kapasitesi ve bant genişliği 16 GB ve 819 GBps, çipler arası bağlantı bant genişliği 1600 Gbps
    Hızı düşününce oldukça etkileyici, ama iyileştirme payı inanılmaz derecede büyük. Kapasite olarak yüzlerce kez ezberleyebilecek gibi görünse de oyunu tamamen ezberleyememiş gibi
    Bu yüzden optimizasyon yöntemleri için kesinlikle çok alan var. Ancak burada hedef ezberleme olduğundan, bu tekniklerin mevcut teknolojiler üzerinde nasıl bir etkisi olacağını bilmiyorum
    İlginç olan nokta şu: Yeterince çok “oynar”, bunu otomatikleştirir ve çok daha fazla depolama ile hesaplama kullanırsanız oyunu söküp çıkarabileceğiniz anlamına geliyor
    Doom'u tersine mühendislikle çözmesi için bir mühendis tutmaya kıyasla maliyet ve zaman farkını merak ediyorum. Ne kadar önbilgiye izin verileceği de belirsiz. Önceden eğitilmiş model ve ViZDoom ortamı düşünülünce, Doom kaynak kodunun T5'te olup olmadığını ve hangi ViT checkpoint'inin kullanıldığını da merak ediyorum
    Bu model checkpoint'ini mutlaka görmek isterim. İnsanlar parçalara ayırıp incelerse gerçekten ilginç şeyler bulacak gibi
    https://www.reddit.com/r/gaming/comments/a4yi5t/original_doo...
    https://huggingface.co/CompVis/stable-diffusion-v-1-4-origin...
    https://cloud.google.com/tpu/docs/v5e
    https://github.com/Farama-Foundation/ViZDoom
    https://zdoom.org/index

    • Eleştiri yerinde, ama bu araştırmanın bağlamında ana mesele değil
      Orijinal oyunla karşılaştırıldığında hesaplama maliyetinin saçma derecede yüksek olduğu, önceden hesaplama veya depolama gibi temel unsurların eksik olduğu da doğru
      Ama bunlar bu bulgunun çevresinde çözülebilecek, zamanla doğal olarak iyileşebilecek ya da darboğaz olarak daha az önemli hale gelebilecek şeyler olarak görülebilir
      Asıl atılım, bunu açıkça kodlamadan böyle bağlam farkındalığı olan kare dizilerini modelleyebilmesi. Hem saf oyun açısından hem de genel simülasyon açısından böyle
    • Oyunu “söküp çıkarmak” küçük bir kısmı
      Daha büyük anlamı, gerçek dünya videolarından oyun üretilebilmesi
      Kusursuz bir uçuş simülatörü gerekiyorsa, bir yıl boyunca tüm yolcu uçaklarının kokpitlerine GoPro takmak yeterli
  • Böyle yazılarda ölü yorumları okumak her zaman eğlenceli. Ne kadar anlamsız olduğunu belirtmeyi seviyorum
    Bazı insanların sırf yapmanın keyfi için bir şeyler yapmayı öğrenmesi gerekiyor
    Bu faydalı mı? Aslında pek değil. İlginç mi? Kesinlikle
    Her şeyin kâr için yapılması gerekmiyor. Dünyayı daha iyi bir yer yapmak için yapılması da gerekmiyor
    Bazen amaç öğrenmek, meydan okumak ve neyin mümkün olduğunu görmek olabilir
    Keyifle geçirilen zaman asla boşa harcanmış değildir. Ölüm döşeğinde daha çok eğlenmediğine pişman olacak insanlar da olacaktır

    • Bu başlıktaki şüphe ve eleştiriler AI abartısını hedef alıyor
      “Bu gerçekten inanılmaz” denince, yakın gelecekte tüm yazılımları AI modelleriyle değiştirip hayal edilebilecek herhangi bir video oyunu deneyimi yaratabileceğimizi düşündüğü ima ediliyor
      Gerçekçi bakarsak bu, bugüne kadar yapılmış Doom'ların en verimsiz ve en az güvenilir biçimi. Doom'u gerçek zamanlı render edip oynatabilen ilk x86 PC'lerden kelimenin tam anlamıyla milyonlarca kat daha fazla işlem kullanıyor
      Elbette eğlenceli bir hüner gösterisi
    • Gerçekten doğru. Hustle kültürü, 80'ler ve 90'lardaki eğlenceli maker kültürünün yerini alan yayılan bir hastalık gibi görünüyor
      Kaçınılmaz bir yanı da var. Yaşam maliyetleri sürekli artarken ve girişimciler rock yıldızı gibi romantize edilirken bu tür bir hustle zihniyetine yol açıyor
    • Şu anda bu deney anlamsız görünüyor
      Ama “internet radyosu” olasılığı üzerine yazıların çıktığı dönemleri hatırlıyorum. Eskiden olduğu gibi yayın dalgalarını havaya gönderip binlerce radyonun ayarlayıp dinlemesi yerine, bir sunucunun muazzam miktarda paketi muazzam uzunlukta bakır kablolar üzerinden binlerce endpoint'e göndermesi şeklindeydi
      Üstelik endpoint'lerin bağlantıyı sürdürmek için zavallı sunucuya ACK paketleri geri göndermesi bile işlem gücü, kablo ve enerji israfı gibi görünüyordu
      Ama şimdi o bakır kablolar üzerinden Netflix filmlerini art arda izliyoruz
      Oyunların kullanıcı girdisine dayalı bir sonraki görüntüyü hayal eden difüzyon modelleriyle değiştirileceğini söylemiyorum, ama bunun bir varyasyonu etkileşimli sanat üretimi ya da yeni bir eğlence biçimi olabilir
    • Bunun faydasız olduğunu düşünmüyorum. Tamamen yeni oyunlar üretmeye giden bir basamak
    • O eğlencenin karbon ayak izini merak ediyorum
  • Etkileyici olsa da katılmak zor. Difüzyon modeli bir oyun motoru değildir
    Oyun motoru, oyunu zaman ekseni boyunca ilerleten bileşendir. Bu yüzden otomobil motoruna benzer ve adı da buradan gelir
    Bir motorun iş yapması için bitmiş bir otomobile ya da gidilecek bir yola ihtiyacı yoktur
    Yukarıdaki şey, belirli bir yola bir araba koyduğunuzda olanları dinamik ve etkileşimli biçimde kopyalamaya daha yakın; bunun için çalışan bir araçla milyon kez test sürüşü yapmak gerekir
    Motor ise arazi dışında da çalışabilmelidir

    • Bu, genel olarak difüzyon modellerine değil, daha çok belirli biçimde eğitilmiş sonuç modeline yönelik bir eleştiri
      Şimdiki zamanla “işi yapmak için yolda çalışan bir arabaya ihtiyaç duyar” demektense, geçmiş zamanla “o işi yapması için eğitmek üzere buna ihtiyaç vardı” demek daha doğru
      Başka motorların nasıl çalıştığından alınan kavramları kullanan bir oyun motorunun neden oyun motoru olmaktan çıkacağı da açık değil
      Difüzyon modellerine genel olarak bakarsak, sıradan difüzyon modellerinin eğitim görüntülerinin birebir aynısını üretmekle kalmayıp ara değerleme yapabildiği ya da tekil kavramları uygulayarak yeni çıktılar oluşturabildiği gibi, bu yaklaşımın da eğitildiği “test pisti” dışında çalışamayacağını varsaymak için bir neden yok gibi görünüyor
    • İlginç bir nokta
      Bir anlamda gerçek oyun motoru verileriyle eğitilmiş simüle edilmiş bir oyun motoru
      Ama çalışan bir simülasyon oyun motoru “oyunu ilerletebiliyorsa”, bence başlı başına bir oyun motorudur. Bunun nasıl başarıldığı önemli değil
      Bir tarafta içeriği insanlar oluşturdu, diğer tarafta mevcut oyun içeriği taklit ediliyor; ama oyuncu bunu umursamaz
      Bu tür bir “üretken oyun motorunun” da arazi dışına çıkabileceği düşünülebilir. Görmediği yerlere gidildiğinde ne olacağını dışa vurumla tahmin etmesi gibi
      Hatta bu tür modellerin dışa vurum yeteneği geleneksel oyun motorlarından daha iyi bile olabilir. Tipik bir oyun motorunda yanlışlıkla bir duvardan geçerseniz ekran boşalır; bu model ise ilerledikçe uydurabilir
  • SD modelinde metin koşullandırması kaldırıldığı için yer almıyor, ama yakın gelecekte yalnızca metin prompt’larıyla eğlenceli yeni oyunlar yapılabileceğini hayal etmek mümkün
    DOOM’un nasıl göründüğünü ve nasıl çalıştığını öğrenmek için pekiştirmeli öğrenme kullanmak gerekti, ama bu mutlaka bir tavuk-yumurta sorunu olduğu anlamına gelmez
    LLM’lerin yalnızca mevcut metinlerle eğitilmiş olsa da yeni hikâyeler yazabilmesine benzer
    Bu yaklaşımın en büyük zorluklarından biri, olası durum sayısının fiilen sonsuz olduğu açık dünya oyunları olacaktır
    Makale de pekiştirmeli öğrenme ajanının DOOM’un her köşesini tamamen keşfetmesini sağlamada zorlandıklarını söylüyor
    Factorio veya Dwarf Fortress’ın yakın zamanda simüle edileceğini sanmıyorum. Muhtemelen

    • Yeterli hesaplama gücüyle sinir ağı ağırlıkları, DOOM kaynak kodunun çok sıkıştırılmış bir örtük temsiline yakınsayacaktır
      Belki kaynak kodun kendisinden bile küçük olabilir. Bu alandan biri düzeltebilir
      O noktada aslında kaynak kodu örtük uzayda ara değerleyerek oyunu “render” ediyor olacağız. Motoru, asset’leri, dokuları ve yazılım renderer’ı olan bütün bir örtük uzay bilgisayarı varmış gibi
      Yeterince güçlü bir bilgisayarla Factorio ile TF2 gibi oyunlar arasında örtük uzay ara değerlemesi bile hayal edilebilir. Ayrıca istenen oynanış yönlerine koşul koyarak bu örtük uzay ayarlanabilir
      Böyle bir gelecek, render işleminin son aşaması gibi pipeline’ın bazı kısımlarında çok hızlı geliyor. Örneğin DLSS zaten ticarileşti
      Bir gün herkes sinir ağı metaverse’üne cıvatalanıp sabitlendiğinde Nvidia gelirleri yeniden oyuna dönebilir
      DOOM’u seçmeleri gerçekten hoşuma gitti
    • Benzer şekilde, çok basit bir oyun motoru çalıştırıp yalnızca düşük çözünürlüklü wireframe benzeri çıktı üretmesini sağlayabilir ve bunu upscale edebilirsiniz
      Tüm çabayı oyun mekaniklerine verip görsel kaliteye harcamama yöntemi
      Bu yöntemin, başınızı çevirip tekrar baktığınızda kırmızı bir canavarın mavi bir müttefike dönüşmesi gibi görsel tutarsızlıkları azaltmada daha iyi olmasını beklerim
    • “Yalnızca metin prompt’uyla eğlenceli yeni bir oyun” yapılabileceğini düşünüyorsanız, gidip böyle bir prompt yazabilirsiniz
      Mario gibi nispeten basit bir platform oyunuyla başlayabilirsiniz
      300 sayfa kadar yazıp hâlâ yaklaşık yarısını açıklamış olduğunuzda, bunun neden biraz iyimser bir düşünce olduğunu anlarsınız
    • Aslında öyle değil. Bu, Doom’un ilk bölümünün yeniden üretimi. Yeni bir şey üretilmiyor
    • Yakın gelecekte video oyunları muazzam ölçüde değişecek
      Bir kişi bir modelle konuşarak bugünün AAA oyunları düzeyinde bir şey yaratabilir
      Steam’deki 2D side-scroller patlamasını düşünün; ama bunu sürükleyici fotogerçekçi 3D oyunlar, aşırı gerçeküstü fizik (su akışı, yayılan ateş, kasırgalar) ve tam dönüştürme/inşa imkânı olan oyunlar olarak hayal edin
      Modelin gerçek dünya videolarıyla önceden eğitildiği, oyunun ise görünüm, ortam ve hikâyeye ilişkin önsel dağılımı biraz ayarlayan bir “stil” olduğu bir düzen
  • Oyunu zaten yaptıktan sonra mı difüzyon modeli oyun motoru oluyor? Modeli eğitmek için oyuna ihtiyaç var. Tavuk-yumurta değil mi?

    • Birkaç fikir var
      Gerçek zamanlı olmayan bir oyun motoru sürümü yapıp sinir ağını gerçek zamanlı bir yaklaşım olarak kullanabilirsiniz
      Gerçek hayatta çekilmiş videolara HUD gibi şeyler ekleyip sinir ağını Doom’u değil gerçeği simüle edecek şekilde eğitebilirsiniz
      Bu makale 900 milyon kare kullandı; 30fps ise yaklaşık 1 yıllık video gibi görünüyor. Algoritma iyileştirmeleriyle eğitim gereksinimi azalabilir
      1 yıllık video da aslında o kadar büyük bir miktar değil. Örneğin 500 kişiyi toplayıp başlarına ve paintball silahlarına GoPro, ivmeölçer ve jiroskop takıp hafta sonu paintball oynatırsanız 1 yıllık video elde edebilirsiniz
    • Birden fazla oyunla eğitilirse, görüntü üretim modellerinin hiç var olmamış yeni görüntüler oluşturabilmesi gibi hiç var olmamış yeni oyunlar oluşturabilir
    • Sonraki adım, var olmayan oyunlar üretmek için metin yönlendirmesi eklemek olabilir
    • Üretilen görüntüler için de aynı şey söylenemez mi?
    • Gelecekte fiziği ve bilinen yasaları modele kodlayabilen bilimsel makine öğrenmesi teknikleri temel modeli oluşturabilir
      Onun üzerindeki diğer modeller de oyunu özelleştirmek için yalnızca ayrıntı unsurlarını fine-tune eder
  • Difüzyon modelleri oyun motoru olamaz. Çünkü bir oyun motorunun yeni oyunlar oluşturabilmesi ve mevcut oyunların kurallarını gerçek zamanlı olarak değiştirebilmesi gerekir
    Hatta ekranda görünmeyen kuralları bile değiştirebilmelidir
    Bu tür araçlar ilginç, ancak tüm yapay zeka abartılarında olduğu gibi bir feragat notuna ihtiyaç var
    Bu araç oyunu oluşturmadı; yalnızca insanların yaptığı bir oyunu örnekleyerek karelerin ve oynanış mekaniklerinin görünüşünü üretti

    • Ekranda asla görünmeyen bir kural değiştiyse, gerçekten değişmiş sayılır mı?
      “Sadece” üretti mi? Mekanik olarak basit olabileceğini anlıyorum, ama böylesine zengin bir koşullu dağılımı sıkıştırmış olması hiç de basit görünmüyor
    • Bunlar yalnızca tek bir oyunla eğitildi ve yalnızca kontrol girdilerini gömdü
      Birden fazla oyunla eğitilip her oyun hakkında çok daha fazla bilgi gömülürse, oyunu tanımlayan bir prompt belirleyip oynayabilme olasılığı doğabilir
    • Düşük poligonlu asset’lerle render edilen ya da bir şekilde bölümlere ayrılmış bir oyunu alıp, difüzyon modeliyle gerçekçi veya stilize sanat detayları eklenmesini görmek isterim
      Böylece tutarlılık sorununu çözerken pratik bir fayda da elde edilebilir
    • Başlık “Difüzyon modelleri, kullanıcı girdisi verildiğinde kareleri render etmek için kullanılabilir” olmalıydı
    • Sonuçta eğitimde kullanılan videodan biraz farklı bir oynanış videosu üretmekten ibaret değil mi?