1 puan yazan GN⁺ 2023-11-29 | 1 yorum | WhatsApp'ta paylaş
  • MeshGPT, üçgen meshleri token dizileri olarak üreterek insan yapımı modellerdekine benzer keskin kenarlara ve sade üçgenlemeye sahip meshler üretmeyi hedefler
  • Yoğun iso-surfacing sonuçlarının aksine, öğrenilmiş geometrik sözlükten örnekleme yaparak daha compact mesh yapısını doğrudan üretir
  • Grafik konvolüsyon ve vektör niceleme tabanlı encoder-decoder, önce yerel geometri ve topolojiyi içeren bir gömme sözlüğü öğrenir
  • Yalnızca decoder kullanan transformer, önceki gömmelere dayanarak bir sonraki indeksi tahmin eder; eğitimden sonra ise sözlükten dizi örnekleyerek yeni meshler üretir
  • Farklı kategorilerde shape coverage %9 artış ve FID skorunda 30 puan iyileşme göstermiştir; ayrıca kısmi mesh tamamlama ve sahne için 3D asset üretiminde de kullanılabilir

MeshGPT'nin mesh üretim yöntemi

  • MeshGPT, üçgen meshleri üçgen dizileri olarak ele alır; öğrenilmiş geometrik sözlükten tokenlar üretir ve bunları üçgen yüzlere decode eder
  • Ortaya çıkan çıktı clean, coherent, compact meshleri hedefler ve sharp edges ile yüksek doğruluk temel özelliklerdir
  • Mevcut baseline'larla karşılaştırıldığında, keskin geometrik detayları korurken daha sade meshler üretir
    • baseline'lar bazı durumlarda detayları kaçırabilir, aşırı üçgenlenmiş meshler oluşturabilir veya gereğinden fazla basit şekiller üretebilir
  • Farklı kategorilerde yapılan nicel karşılaştırmalarda, en güncel mesh üretim yöntemlerinden daha iyi sonuçlar gösterir
    • shape coverage %9 artış
    • FID skoru 30 puan iyileşme

Eğitim pipeline'ı ve kullanım alanları

  • Önce büyük ölçekli bir shape collection üzerinde üçgen meshler için geometrik gömme sözlüğü öğrenilir
    • encoder-decoder ağı kullanılır
    • darboğaz bölümünde vektör niceleme bulunur
    • grafik konvolüsyon ile gömmelerin yerel mesh geometrisi ve topolojisi bilgisini taşıması sağlanır
  • Öğrenilen sözlük dizilerden oluşur ve decoder bunları yeniden üçgenlere dönüştürebilir
  • Transformer, öğrenilmiş sözlüğün token dizisi tahmini görevini üstlenir
    • önceki gömmeleri girdi olarak alıp bir sonraki gömme indeksini tahmin eder
    • eğitim tamamlandıktan sonra sözlükten doğrudan dizi örnekleyerek mesh üretir
  • Kısmi bir mesh verildiğinde birden fazla olası shape completion sonucu çıkarılabilir
    • kullanıcı partial input mesh'i düzenlerken completion örnekleri de gösterilebilir
  • Sahne için 3D asset üretiminde de kullanılabilir; MeshGPT ile üretilen asset'lerle bir odayı doldurma örneği bulunur

Materyaller ve ilgili çalışmalar

1 yorum

 
GN⁺ 2023-11-29
Hacker News yorumları
  • Bence gerçek anlamda devrimsel bir fikir böyle görünür. Makalede gerçekten çok fazla ayrıntı var ve transformer'ların ölçeklenebilir olduğunu zaten biliyoruz.
    Birçok şirketin, genel amaçlı 3D varlık üretim hattı eğitmek için bu fikri kullanacağını düşünüyorum. “Önce grafik evrişimlerini kullanarak gizil nicemlenmiş gömmelerden oluşan bir sözlük öğrenmek ve bu gömmelerin yerel mesh geometrisi ile topoloji bilgisini öğrenmesini sağlamak. Bu gömmeleri sıralamak ve decoder'ın bunları üçgenlere geri dönüştürerek mesh'i etkili biçimde yeniden kurmasını sağlamak” fikri, geriye dönüp bakınca çok güzel ve bariz görünüyor.
    Ayrıca “otoregresif üretim için mesh M'yi temsil etmeye yönelik pratik bir yaklaşım olarak, üretilecek token'ları üçgenlerden oluşan bir dizi olarak tanımlarız” kısmı da gerçekten harika.

    • Harika ama günümüz 3D yeniden yapılandırma alanının standartlarına göre de oldukça yaygın bir akış. Bu makaleyi özellikle yenilikçi ya da istisnai diye nitelendirmezdim.
      Bu alanda beni asıl cezbeden şey, tek bir görüntüden 3D mesh üreten ve milyonlarca çeşitli 3D modelle eğitilmiş büyük bir 3D yeniden yapılandırma modeli olan https://yiconghong.me/LRM/ tarafı.
    • Burada dikkat çeken bir başka nokta da eğitimin en fazla 4 adet A100 ile toplam 7 gün sürmesi. Gerçekten de en ileri uçtaki çalışmaların hepsi veri merkezi ölçeğinde kümeler gerektirmiyor.
    • Nicemlenmiş gömme nedir, açıklayabilir misin?
    • “Transformer'ların ölçeklenebilir olduğunu biliyoruz” deniyor ama diğer modellerin ölçeklenmediğine dair güçlü kanıtlar mı var, yoksa transformer'lara daha fazla zaman harcamış olmamız mı söz konusu, merak ediyorum.
      Evrişimli ResNet de görüntü ve dilde ölçekleniyor gibi görünüyor: (cv) https://arxiv.org/abs/2301.00808, (cv) https://arxiv.org/abs/2110.00476, (nlp) https://github.com/HazyResearch/safari
      Çok katmanlı algılayıcılar da ölçekleniyor gibi: (cv) https://arxiv.org/abs/2105.01601, (cv) https://arxiv.org/abs/2105.03404
      Elbette attention'ı bırakmak için güçlü bir neden de yok, ama milyar parametre ölçeğinde çok katmanlı algılayıcı ya da evrişimli modelleri bu probleme uygulayan neredeyse kimse olmadığını düşünüyorum. Attention, transformer'lar ve bunların ölçeklenmesi için her yıl binlerce makale çıkacak kadar muazzam bir emek harcandı; diğer mimarilerde böyle bir seviye görmek zor.
      The ResNet Strikes Back makalesini iyi yapan şeylerden biri, abartı rüzgârına kapılmadan gelişmelerin birbirine eklemlendiğini hatırlatması. İlk ResNet döneminden bu yana eğitim teknikleri hakkında çok şey öğrendik; bunları ResNet'e uygulayınca performans çok daha iyi hale geliyor ve fark ciddi ölçüde kapanıyor. En azından benim çalıştığım görüntü alanında durum böyle; makale yayımlamadan ayakta kalınamayan ortam ve moda odaklı değerlendirmeler yüzünden araştırma tek bir yöne yığılmaya çok yatkın.
    • Bunun daha önce DNA ve RNA dizilerine uygulanan benzer tekniklerden nasıl farklı olduğunu merak ediyorum.
  • Bir makine öğrenimi mühendisi olup biraz Blender ve hobi amaçlı oyun geliştirme yapan biri olarak oldukça etkileyici buldum, ama sınırlı mobilya örneklerine bakınca henüz pratik seviyede değil.
    Deneyimli bir modelleyici böyle bir mesh'i 5 dakikadan kısa sürede yapabilir ve üretimin hâlâ poligonlarla başlatılması gerekiyor.
    Bir sonraki adımın, seed üretimini bir LLM'in kontrol etmesi ve yapının otoregresif kısmına görüntü modellerinin eklenmesi olacağını düşünüyorum. O zaman gerçekten mobil oyun varlıkları görebiliriz.

    • “Deneyimli bir modelleyici böyle bir mesh'i 5 dakikada yapabilir” tarzı AI iş akışı eleştirilerinin pek faydalı olduğunu düşünmüyorum. Çoğu kişi deneyimli modelleyici değil, böyle birini tanımıyor ve işe alacak parası da yok.
      Birçok durumda uzmandan daha uzun sürse ve kalite daha kötü olsa bile, gerçekçi alternatif hiçbir şey olmaması ise bu tür araçlar daha iyidir.
    • Güzel. O zaman ihtiyaç olduğunda isteğe bağlı çalışan ve 5 dakikalık dilimler halinde ücretlendiren modelleyicileri önerebilir misin?
      Model başına sadece 1-2 dolar ödeyip oyunum için özelleştirilmiş şekilde hemen kullanabilsem gerçekten harika olurdu.
    • Bu, deneyimli modelleyiciler için anlatılan bir şey değil. Stable Diffusion'ın yalnızca profesyonel ressamlar için olmaması gibi.
      Asıl mesele uzman olmayanlara araç vermek ve aynı zamanda deneyimli modelleyicileri gelecekteki AAA oyunların ihtiyaç duyacağı 10 bin sandalye varyasyonu gibi işlerden kurtarıp daha ilginç işlere odaklanmalarını sağlamak. Onlar benzersiz karakterler ya da eğitim verisinde bulunmayan, gerçek hayal gücü ve uzmanlık gerektiren yeni fütüristik modeller yapabilir.
    • Buradaki mesh topolojisiyle bu, neredeyse her profesyonel işte varlık olarak reddedilir. Deneyimli bir modelleyici 5 dakika içinde tekstüre ve deformasyona çok daha uygun, çok daha yüksek kaliteli bir model yapabilir; hızlı modelleme yapan biri benzerini 1 dakika içinde bile çıkarabilir.
      Blender Geometry Nodes gibi prosedürel sistemler de zaten bu tür modellerin sonsuz varyasyonlarını üretebiliyor. Yine de gelişme hızı şaşırtıcı derecede yüksek.
    • Deneyimli bir geliştiricinin LLM ile iş akışını bootstrap etmesi gibi, deneyimli modelleyiciler de yakında bu tür araçları günlük iş akışlarının bir parçası olarak kullanacak. Hafif kullanıcılar da normalde yapamayacakları şeyleri yapabilir, ama ilgili bilgi alanının uzmanı kullandığında asıl parlamasını yaşıyor.
      Belirli bir kullanım senaryosunda ne kadar deneyimliyseniz, makine öğrenimi modelinden o kadar fazla fayda elde edebileceğinize inanıyorum.
      Ne yazık ki tam da bu kişiler, gerçekten işe yarar seviyeye gelene kadar denemeden benimsemeye en çok direnç gösterenler oluyor. Sorunun bir kısmı muhtemelen bunu sihirli değnek gibi beklemeleri. Oysa aslında yeni bir PhotoShop, Blender, Microsoft Word, PowerPoint gibi bir araçtan ibaret.
      Çoğu kişi bu uygulamaları açıp kısa süre anlamsızca tıklar, sonra ayrılır ve bir daha dönmez. “AI” için de aynı şey geçerli.
  • Seçtiğim meslek olan 3D/film prodüksiyonu bugünlerde kendini bir savaş siperinde gibi hissettiriyor. Hem heyecan verici hem de korkutucu.

    • Bunu otomatik iskele kurma olarak da görebiliriz. Genel modelleme ve CAD araçları, daha hızlı başlangıç yapılabilmesi için bu tür özellikleri içerebilir.
      Bir diğer büyük avantaj da birleştirilebilirlik. Model bir bardak ve bir masa üretebiliyorsa, masanın üzerindeki bardağı üretmeyi de biliyor demektir.
      Projeye uygun karmaşık dişlileri ve makine parçalarını göz açıp kapayıncaya kadar oluşturup, istediğiniz konum ve dönüşle tam olarak yerleştirebildiğinizi düşünün. GitHub Copilot’ın çalışma biçimine çok benziyor.
    • Bu açıdan LLM’lerin 3D animasyonda programlamaya kıyasla çok daha ileri gitmiş gibi göründüğünü sanmıyorum. Tek tek bakınca iyi görünen parçalar çıkarabiliyorlar, ama bulmacayı insanın birleştirmesi gerekiyor. Ve o bulmacayı birleştirmek çoğu zaman parçaların çoğunu yeniden yazmak ya da yeniden yapmak anlamına geliyor.
      Şimdilik güvendeyiz, ama yeni teknolojiden yararlanmayı öğrenmek gerekiyor.
    • Teklif prodüktörü rolünü biliyorsanız, onların yaşadığı zorlukları da hayal edebilirsiniz. Bir tarafta film yapımcıları “artık bunu da yapay zeka yapıyormuş” diyor, diğer tarafta teklif prodüktörleri ile VFX/animasyon stüdyosu müşterileri her şey yeniden keşfediliyormuş gibi telaşlanıyor.
    • 3D CGI, yapay zeka olmadan da son 30 yılda zaten inanılmaz bir hızla gelişti. Bugünün araçları; heykelleme, simülasyon, otomatik rigging vb. açısından niteliksel olarak farklı.
    • Kendi alanınızda bu teknolojinin kullanım senaryolarını nasıl görüyorsunuz? Kalitenin yüksek görünüp görünmediğini merak ediyorum.
  • Girdi ne? “chair” gibi bir metin sorgusunu mesh’e mi dönüştürüyor?
    Görünüşe göre basit bir ek özellik değil, mesh tamamlama temel giriş-çıkış biçimi gibi.

    • Evet, anlaması zor.
      Girdinin kendisi 3D mesh gibi görünüyor. Bu yüzden model “şekil tamamlama” yapıyor gibi. Örneğin yalnızca birkaç bacağı görüp bir sandalye üretmesi gibi. Ya da girdi şekli daha eksiksiz olduğunda “varyasyon” üretiyor olabilir.
      Yine de başlangıç noktası olarak iyi görünüyor. Kalite düşük olsa da metinden mesh üreten başka bir modelin çıktısını girdi olarak verip, bu modelle daha net ve tutarlı bir sonuç elde etmek mümkün olabilir.
    • Sadece dil kullanan bir LLM’e dil ile prompt verdiğimiz gibi, bu LLM’e de tamamlaması için 3D mesh prompt olarak veriliyor.
    • Ben de bunu merak etmiştim. Diyagrama bakınca girdinin başka bir sandalye mesh’i olduğu anlaşılıyor, bu yüzden biraz daha az ilginç geldi.
  • 90’lardan beri pek ilerleme kaydedilmemiş geriye kalan zor problemlerin hepsi, bir şekilde Transformer ile çözülme sırasını bekliyormuş gibi hissettiriyor. Gerçekten muazzam bir dönem.

  • Bir sonraki atılım, bu tür modellerin önünde VR ile 3D sahne oluşturma UX’i olacak. Eğitim verisi olan ortamlarda fiilen kalıcı ve keyfi 3D ortamlar üretmek mümkün hale gelecek.
    Doku üretimi için difüzyon modelleri kullanılabilir.
    Mark haklıydı ve gerçekten çok erken davrandı.

    • Mark?
      Ha, o Mark mı? haha, anladım.
      Bence payı Lecun gibi birine vermek daha doğru olmaz mı? Mark’ın metaverse’e her şeyi yatırmasının nedeni, derin öğrenmenin patlayacağını bir şekilde öngörmesi kesinlikle değildi. İlk modelleri eğiten insanlar bile bunun ne kadar iyi çalışacağından emin değildi.
  • Bu “sadece” mesh otomatik tamamlama olsa bile 3D sanatçılar için inanılmaz derecede faydalı. Şu anda karakterleri heykelleme biçimi ile animasyonlama biçimi arasında bir kopukluk var. Genellikle modeli retopology’den geçirmek gibi çok zaman alan bir adım gerekiyor.
    Kaba bir mesh alıp temiz topoloji çıkaran Transformer tabanlı retopology büyük zaman kazandırırdı.
    Başka bir uygulama da Gaussian splatting veya difüzyon modellerinin çıktısını MeshGPT’ye vermek. Metinden doğrudan temiz topolojiye sahip, kullanılabilir asset’ler elde edilebilir.

    • 3D sanatçılar için olmaktan çok, bunu hayatında hiç elle mesh yapmamış insanların %99’u kullanacak. 3D sanatçı tutma ihtiyacını ortadan kaldırmak isteyenler; örneğin bir tasarımcıya para ödemek istemeyen ya da ödeyemeyen programcılar, CAD dışında bir şey öğrenmemiş mimarlar, Fiverr işleri gibi.
      Burada, otomasyonun kendisini otomatikleştirme yönüne doğru yavaş yavaş gidildiği pek hissedilmiyor gibi. Ve bununla geçimini sağlayabilecek programcılar, bugün geçimini sağlayabilenlerin çok küçük bir kısmı olacak.
    • Bu tür yöntemlerin dağılım içi/dışı verilere çok duyarlı olduğunu anlamak gerekiyor. Kullanıcı verisini öylece takarsanız muhtemelen düzgün çalışmayacaktır.
    • Üzgünüm ama karakterler için temiz topoloji üretmek çok uzun süre mümkün olmayacak gibi.
  • Bu alanı seviyorum. Makalede güzel bir web sitesi, örnekler ve videolar var.
    Yoğun bir özet, giriş ve sonuç odaklı makale tarzından çok daha ferahlatıcı.

  • Gerçekten harika görünüyor. Bağımsız oyun geliştiricilerin büyük asset havuzları oluşturmasına inanılmaz yardımcı olacak gibi.

    • Bu teknoloji yüzünden bağımsız oyun geliştirmenin öldüğünü düşünüyorum.
      Onun yerine büyük şirketler “kendi oyununu yap” oyunları yapacak.
      Günümüzde bağımsız oyunlar bile zaten oldukça türevsel hissettiriyor. Orta vadede büyük şirketlerin bu teknolojiyi kullanarak bağımsız oyunları öldüreceğini düşünüyorum.
  • Vay, gerçekten iyileşiyor. Tuhaf kenarlar yüzünden hâlâ gidilecek yol var, ama bu noktada algoritmik ya da karmaşık bir problemden ziyade iteratif iyileştirme gibi hissettiriyor.
    Tüm mesh’leri, çok sayıda küçük mesh değiştiricisini sürücülere bağlamış bir prosedürel üretim kütüphanesinden geçirmek zorunda kalmazsam pipeline’ım gerçekten hızlanacak. Bunun yerine tüm mesh’leri bir klasöre koyup ağı eğitir, sonra aynı stilde başka şeyler isterim. Daha yaratıcı bir şekilde müdahale etmek istemediğim sürece retopology ya da başka el işlerine gerek olmadığını görebiliyorum.
    Elbette o seviyeye tamamen ulaşana kadar prosedürel üretim hâlâ daha iyi, ama bu kadar hızlı tamamlanıyor olması gerçekten heyecan verici. Umarım gelecek yılki Unreal showcase civarında yeni Asset Generator özelliğinden bahsediyor oluruz.

    • Önerebileceğiniz bir prosedürel üretim kütüphanesi var mı?