1 पॉइंट द्वारा GN⁺ 2024-08-29 | 1 टिप्पणियां | WhatsApp पर शेयर करें

Diffusion Models Are Real-Time Game Engines

  • GameNGen: न्यूरल मॉडल से संचालित पहला गेम इंजन, जो जटिल environments के साथ real-time interaction को high quality में प्रदान करता है
  • DOOM simulation: एक single TPU पर classic game DOOM को 20 frames per second से अधिक की दर पर interactively simulate किया जा सकता है
  • PSNR: अगले frame prediction में 29.4 PSNR हासिल किया गया, जो lossy JPEG compression के समान है
  • मानव evaluators: मानव evaluators गेम clips और simulation clips में अंतर करने में random guessing से केवल थोड़ा बेहतर थे

पूरा gameplay video

एजेंट play के जरिए data collection

  • स्वचालित RL agent: बड़े पैमाने पर human gameplay data इकट्ठा नहीं किया जा सकता, इसलिए पहले चरण में एक स्वचालित RL agent को गेम खेलने के लिए train किया गया, और इन training episodes की actions और observations को रिकॉर्ड करके generative model के training data के रूप में इस्तेमाल किया गया

Generative diffusion model training

  • Stable Diffusion v1.4: actions और observations (frames) के पिछले sequence को condition के रूप में लेने वाले एक छोटे diffusion model का पुनः उपयोग किया गया
  • Gaussian noise जोड़ना: training के दौरान encoded frames में Gaussian noise जोड़कर context frames को corrupt किया गया, ताकि network पिछले frames से sampled जानकारी को modify कर सके। यह लंबे समय तक visual stability बनाए रखने के लिए महत्वपूर्ण है

Latent decoder fine-tuning

  • Stable Diffusion v1.4 का pre-trained autoencoder: 8x8 pixel patches को 4 latent channels में compress करता है, जिससे game frames की prediction के समय उल्लेखनीय artifacts पैदा होते हैं। इसका असर खास तौर पर छोटे details और नीचे की HUD bar पर पड़ता है
  • Decoder training: image quality सुधारने के लिए latent autoencoder के सिर्फ decoder को train किया गया, जिसमें target frame pixels के लिए MSE loss की गणना की गई

GN⁺ का सार

  • GameNGen एक neural model का उपयोग करके real-time में जटिल game environments के साथ interact कर सकने वाला पहला game engine है
  • DOOM simulation के जरिए यह high-quality frame prediction देता है, और यह इतना परिष्कृत है कि मानव evaluators के लिए वास्तविक game और simulation में अंतर करना कठिन है
  • Stable Diffusion v1.4 जैसे मौजूदा models का पुनः उपयोग करके efficiency बढ़ाई गई, और Gaussian noise जोड़ने जैसी techniques से visual stability बनाए रखी गई
  • Latent decoder fine-tuning के जरिए image quality बेहतर की गई, जिससे game frames के details सुरक्षित रहे

1 टिप्पणियां

 
GN⁺ 2024-08-29
Hacker News की राय
  • Google के SD 1.4 का उपयोग करने वाला diffusion model उम्मीद से ज़्यादा cause, effect और sequence समेटे हुए है

    • अनंत training data पाने के लिए एक agent से Doom खिलवाया गया
    • source frame में Gaussian noise जोड़ा गया और agent को क्रमिक frames को 'ठीक' करने पर reward दिया गया
    • मॉडल को error correction और stability बनाए रखना सिखाना महत्वपूर्ण है
    • यह जानने की जिज्ञासा है कि क्या इस मॉडल को 'photorealistic' या ray tracing style में fine-tune किया जा सकता है
  • यह paper ऐसे सिस्टम का वर्णन नहीं करता जो real-time user input लेकर output को समायोजित करे

    • इसे Doom खेलने वाले agent के बड़े dataset पर train किया गया
    • user input simulation में real time में परिलक्षित नहीं होता
    • paper में real-time user gameplay का विवरण छोड़ दिया गया है
  • यह हैरान करने वाला है कि यह मॉडल 20fps पर render कर सकता है

    • यह diffusion model और RNN के intersection जैसा दिखता है
    • यह उस अनुभव जैसा है जैसे मॉडल उस गेम का सपना देख रहा हो जिसे उसने बहुत खेला है
    • इंसान भी अगले पल की भविष्यवाणी करने वाली मशीनें हो सकते हैं
  • Doom को हर चीज़ पर चलाने की कोशिश जारी है

    • यह मॉडल सबसे ऊँची hardware requirements वाला Doom है
    • hardware specs के दोनों छोर पर Doom मौजूद है
  • इसे निरर्थक बताने वाली टिप्पणियाँ पढ़ना मज़ेदार है

    • हर चीज़ का मुनाफ़े के लिए बनाया जाना ज़रूरी नहीं है
    • सीखने के अनुभव, चुनौती और जिज्ञासा के लिए कुछ बनाना भी महत्वपूर्ण है
    • आनंद महसूस करने में बिताया गया समय कभी व्यर्थ नहीं होता
  • Doom system requirements और Stable Diffusion v1 की तुलना

    • Doom: 4MB RAM, 12MB disk space
    • Stable Diffusion v1: 860M UNet और CLIP ViT-L/14, checkpoint size 4.27GB, TPU-v5e पर चलता है
    • मॉडल के पास गेम को सैकड़ों बार याद रखने की क्षमता होने के बावजूद optimization की काफी गुंजाइश है
    • अगर किसी गेम को पर्याप्त रूप से automate कर दिया जाए, तो उसकी नकल की जा सकती है
  • game engine की भूमिका दुनिया को render करना है

    • "इस दरवाज़े के लिए नीली key चाहिए" जैसा संदेश user को नीली key नहीं देता
    • game engine नए game बना सकता है और मौजूदा game के rules को real time में बदल सकता है
    • diffusion model कोई game engine नहीं है
  • हालाँकि text conditioning नहीं दी गई थी, लेकिन सिर्फ text prompt से नया game बनाना संभव हो सकता है

    • RL का उपयोग करके Doom कैसा दिखता है और कैसे काम करता है, यह सीखा गया
    • infinite states वाले open world game को simulate करना कठिन होगा