Okuma 14.7 dkKategoriler: AI

NVIDIA TAO, AI modellerinin geliştirilmesini, dağıtımını basitleştirmek ve hızlandırmak için tasarlanmış bir araçtır. NVIDIA TAO, ön eğitimli modelleri kullanmanıza, kendi verilerinizle bu modelleri ince ayar yapmanıza ve yapay zeka uzmanlığına ihtiyaç duymadan modelleri belirli kullanım durumlarına optimize etmenize olanak tanır.

TAO, NVIDIA donanım ve yazılım ekosistemiyle sorunsuz bir şekilde entegre olur ve AI modellerinin verimli bir şekilde eğitilmesi, dağıtımı ve çıkarımı için gerekli araçları sunarak, yapay zeka uygulamalarının pazara sunulmasını hızlandırır.

Şekil 1. NVIDIA TAO Mimarisi

Şekil 1, TAO’nun PyTorch, TensorFlow ve ONNX’i desteklediğini göstermektedir. Eğitim, birden fazla platformda gerçekleştirilebilir ve ortaya çıkan modeller, GPU, CPU, MCU ve DLA gibi çeşitli çıkarım platformlarında kullanılabilir.

NVIDIA, kısa bir süre önce TAO 5.5’i piyasaya sürdü. Bu sürüm, her türlü AI modeli geliştirmeyi güçlendirecek son teknoloji temel modeller ve yeni özellikler sunmaktadır. Bu özellikler şunları içermektedir:

  • Çok modlu sensör füzyon modelleri: Geometrik ve anlamsal bilgileri koruyarak, birden fazla sensörden gelen verileri birleşik bir kuş bakışı bird’s-eye-view (BEV) temsiline entegre edebilirsiniz.
  • Metin istemleriyle otomatik etiketleme: Nesne algılama ve segmentasyon için metin istemleri kullanarak otomatik olarak etiket veri setleri oluşturabilirsiniz.
  • Açık kelime darağacı algılama: Önceden tanımlanmış etiketler yerine doğal dil açıklamalarını kullanarak herhangi bir kategoriden nesneleri tanımlayabilirsiniz.
  • Bilgi distilasyonu: Daha büyük ağların bilgisinden yararlanarak daha küçük, daha verimli ve daha doğru ağlar oluşturabilirsiniz.

Bu yazıda, TAO 5.5’in yeni özelliklerini daha detaylı bir şekilde ele alacağız.

Model  TensorRT Optimized Training Dataset Supported Backbone
GroundingDINO + Real data: 1.8M images,
Labels: 14.5M instances of object detection and groundingannotations with Auto-labeler
swin_tiny_224_1k
swin_base_224_22k
swin_base_384_22k
swin_large_224_22k
swin_large_384_22k
Mask-GroundingDINO + DINOv2-L
CLIP-B (pretrained with an NVIDIA proprietary dataset)
swin_tiny_224_1k
swin_base_224_22k
swin_base_384_22k
swin_large_224_22k
swin_large_384_22k
BEVFusion Yakında Synthetic data: ~5M images Image: Swin-Transformers and ResNet-50Lidar: Second
NVCLIP + Real data: 700M images  ViT-H-336
ViT-L-336
SEGIC + Real data: 110K images
Synthetic data: 50K images
DINOv2-L
CLIP-B (pretrained with an NVIDIA proprietary dataset)
FoundationPose + Synthetic data: 1M images

Tablo 1. TAO 5.5’teki yeni temel ve çok modlu modeller

NVIDIA TAO açık kaynaklı, temel ve özel modelleri entegre edebilmektedir. Tüm bu modeller uygun veri setleri üzerinde eğitilmiş olup, nesne algılama, poz algılama, görüntü sınıflandırma, segmentasyon gibi görevler için çok yönlü hale getirilmiştir. TAO, modellerin belirli kullanım alanlarına göre ince ayar yapılmasını basitleştirir, böylece modelleri özelleştirmek ve ticari maksatlarla kullanmak kolay hale gelir.

Çoğu model, NVIDIA TensorRT tarafından hızlandırılmış ve NVIDIA donanımlarında performans için optimize edilmiştir, bu da güçlü ve verimli AI çözümleri sağlar.

TAO’da model yapısını değiştirmek son derece basittir ve kodlama gerektirmez; sadece basit bir yapılandırma değişikliği ile gerçekleştirilir. Bu esneklik, ResNet, Shifted Window (Swin) transformers ve Fully Attentional Network (FAN) gibi farklı mimarilerle denemeler yapmanıza olanak tanır, böylece modelleri belirli ihtiyaçlara göre uyarlayabilirsiniz.

Bu özelleştirme kolaylığı, marketlerde ürün tanımlama, sağlık hizmetlerinde tıbbi görüntü sınıflandırma, üretim hatlarında robotların takibi ve akıllı şehirlerde trafik yönetimi gibi çeşitli uygulamaları destekler.

GroundingDINO Model

For privacy reasons YouTube needs your permission to be loaded.
I Accept

Geleneksel nesne algılama modelleri, önceden tanımlanmış kategorilerden (kapalı-set algılama) nesneleri tanımakla sınırlıdır. Bu sınırlama, belirli kategori adları veya ayrıntılı ifadeler gibi insan girdilerine dayanarak rastgele nesnelerin tanımlanmasını gerektiren uygulamalarda etkisiz hale getirir.

GroundingDINO, bu sınırlamayı DINO modeline bir metin kodlayıcı entegre ederek aşar ve modeli açık-set nesne algılayıcısına dönüştürür. Bu sayede model, insan girdileriyle tanımlanan herhangi bir nesneyi algılayabilir.

GroundingDINO, bir özellik güçlendirici, dil odaklı sorgu seçimi ve çapraz-model kod çözücü kullanarak dil ve görsel modelleri etkili bir şekilde birleştirir. Bu, modelin önceden tanımlanmış kategorilerin ötesindeki kavramları genelleştirmesini sağlayarak üstün performans elde etmesine olanak tanır.

TAO ile GroundingDINO

Bu model, ticari kullanım amacıyla NVIDIA’nın veri seti üzerinde Swin-Tiny mimarisiyle oluşturulmuştur. Ayrıca, metin katmanı için başlangıç ağırlığı olarak BERT-Base kullanılmıştır. Son olarak, GroundingDINO, kamuya açık veri setlerinden toplanan yaklaşık 1,8 milyon görüntü üzerinde uçtan uca eğitilmiştir.

Eğitim sırasında kullanılan tüm ham görüntüler, güvenli ticari kullanım sağlamak amacıyla ticari lisanslara sahiptir.

Model Precision mAP mAP50 mAP75 mAPs mAPm mAPI
grounding_dino_swin_tiny BF16 46.1 59.9 51.0 30.5 49.3 60.8

Tablo 2. GroundingDINO KPIs on the COCO validation dataset

Mask-GroundingDINO Model

Mask-GroundingDINO, belirli bir nesne örneğinin etrafında bir segmentasyon maskesi oluşturan, tek aşamalı ve açık kelime dağarcığına sahip bir örnek segmentasyon modelidir. Bu model, GroundingDINO mimarisi üzerine inşa edilmiştir ve segmentasyon grafiği için Örnek Segmentasyonu İçin Koşullu Evrişimler’den (CondInst) ilham alır.

Mask-GroundingDINO with TAO

CondInst, örnek segmentasyonu için koşullu bir evrişim başlığı önerir. Bu başlık, giriş veya özellik haritalarına dayalı olarak evrişimsel çekirdek ağırlıklarını günceller. CondInst’de CNN’ler için tasarlanmış maske dalını ve örnek-bilinçli maske başlıklarını Transformer veya sorgu tabanlı modellere genişletilmiştir.

Mask-GroundingDINO’da, DINO’daki aynı kodlayıcı ve kod çözücü tasarımını kullanılmıştır. Ancak, benzer bağlantılar diğer Transformer kodlayıcıları ve kod çözücülerle de yapılabilir.

  • Girdi:
    • Metin veya görüntü.
    •  Metin, kategori listesi (örneğin, kutu, forklift) veya doğal dilde bir sahne/nesne tanımı olabilir.
  • Mimari/Omurga:
    • Metin veya görüntü.
    • Metin omurgası BERT veya diğer NLP modelleri olabilir.
    • Görüntü mimarisi Swin Transformer modeli veya diğer Transformer ya da CNN tabanlı mimariler olabilir.
  • Özellik Güçlendirici:
    • Çoklu model uyumunu teşvik eden, kendi kendine dikkat, metinden görüntüye çapraz dikkat ve görüntüden metne çapraz dikkat katmanlarından oluşan yığın.
  • Sorgu Seçim Modülü:
    • Metin özellikleri ve görüntü özellikleri arasındaki nokta çarpanı temelinde en iyi K sorguyu seçer.
  • Maske FCN Başlığı:
    • Dinamik çekirdekler ile birkaç evrişim katmanı.
  • Kontrolör:
    • Maske FCN başlığındaki dinamik çekirdeklerin ağırlıklarını tahmin eden evrişim katmanı.

Bu model, ticari kullanım izni veren pseudo-etiketli Open Images veri seti üzerinde ticari GroundingDINO önceden eğitilmiş modeli ile ince ayar yapılmıştır. Model, Swin-Tiny mimarisini kullanır ve segmentasyon başlığı, pseudo-etiketli gerçek zemin maskeleri içeren yaklaşık 830K görüntü üzerinde uçtan uca ince ayar yapılmıştır.

Bu modeli olduğu gibi kullanabilir veya TAO ile ince ayar yapabilirsiniz. İnce ayar için, minimal kodlama gerektiren kolay ve etkileşimli bir ortam sunan Mask-GroundingDINO Jupyter notebook sağlanmaktadır.

Model Precision mAP mAP50 mask_mAP mask_mAP50
mask_grounding_dino_swin_tiny BF16 47.5 61.7 32.9 55.7

BEVFusion Model

For privacy reasons YouTube needs your permission to be loaded.
I Accept

Otonom araçlar, robotlar ve akıllı şehirler gibi sistemler birçok alanda çevrelerini algılamak ve etkileşim kurmak için farklı sensörler kullanır. Her sensör türü kendine has bilgiler sağlar ancak aynı zamanda kendi sınırlamalarına sahiptir. Örneğin, kameralar zengin görsel detaylar yakalar ancak derinlik algısında zorluk çekerken, LiDAR mesafeleri ölçmede mükemmel olsa da görsel bağlamdan yoksundur.

Bu çeşitli veri kaynaklarını etkili bir şekilde birleştirerek sistem performansını ve güvenilirliğini artırmak çözülmesi gereken bir problem sahasıdır.

BEVFusion, birden fazla sensörden gelen verileri birleşik bir kuş bakışı bird’s-eye-view (BEV) temsiline entegre ederek bu zorluğa bir çözüm sunar. Bu süreçte, çoklu model özellikleri ortak bir BEV temsilinde birleştirerek, hem geometrik (LiDAR’dan) hem de anlamsal (kameradan) bilgileri korur ve bu şekilde devrim niteliğinde bir yaklaşım sunar.

BEVFusion with TAO

TAO’da, modelimizi eğitmek için mmdet3d’den BEVFusion kod tabanıyla başlayabilirisinz. Orijinal kod, başlangıçta yalnızca yaw (dönme) açısını desteklerken, 3D uzayda roll, pitch ve yaw açılarının üçünü de işleyebilecek şekilde geliştirilmiştir. TAO ile eğitilen BEVFusion modeli, tek bir kamera görüntüsü ve bir LiDAR kullanarak insanları tespit eder ve etrafında 3D sınırlayıcı kutular oluşturur.

Content AP11 AP40
Evaluation Set 77.71% 79.35%

Tablo 4. TAO BEVFusion KPIs on the COCO validation dataset  for a single camera, single Lidar people detection

CLIP Model

Görüntülerin ve metinlerin anlamlı ve bağlamsal olarak zengin temsillerini verimli bir şekilde öğrenmek, özellikle çok modelli anlayış gerektiren uygulamalar için büyük bir zorluktur. Sıfırdan öğrenme, görüntü başlıklandırma, görsel arama, içerik moderasyonu ve çok modelli etkileşim gibi kullanım durumları, görsel ve metinsel verileri doğru bir şekilde yorumlayıp entegre edebilen güçlü modellere ihtiyaç duyar.

Contrastive Language-Image Pre-training (CLIP) modeli, bu zorluğu, görüntüleri ve metinleri aynı anda işlemek için çift kodlayıcı mimariyi kullanır. Kontrastif öğrenme yöntemiyle, CLIP doğru görüntü-metin çiftleri arasındaki benzerliği maksimize ederken, yanlış çiftler için bu benzerliği minimize eder ve modelin geniş bir kavram yelpazesini yakalayan genel temsiller öğrenmesini sağlar.

Bu yaklaşım, CLIP’in çeşitli uygulamalarda mükemmel performans göstermesini sağlar; örneğin, tanımlayıcı görüntü başlıkları oluşturma, metinsel sorgulara dayalı görsel aramalar yapma ve öğrenilen temsilleri kullanarak görünmeyen kategorilere sınıflandırma yapabilen sıfırdan öğrenme yeteneği kazandırır.

NVCLIP with TAO

TAO’da, NVIDIA veri seti üzerinde eğitilmiş TensorRT ile hızlandırılmış bir CLIP modeli sunulmkatadır. Bu modeli eğitmek için yaklaşık 700 milyon görüntü kullanılmıştır. Modelin testi ImageNet’ten alınan 50.000 veri seti ile yapılmştır.

Model Top-1 accuracy
ViT-H-336 0.7786
ViT-L-336 0.7629

Tablo 5. Zero-shot ImageNet validation accuracy of NVCLIP with ViT-H-336 and ViT-L-336 backbones

SEGIC Model

For privacy reasons YouTube needs your permission to be loaded.
I Accept

Video 3. Use visual prompt for In-context segmentation with NVIDIA TAO

SEGIC, tek bir görsel temel model -Vision Foundation Model (VFM) ile bağlam içindeki segmentasyonu devrim niteliğinde yenilikçi bir uçtan uca segmentasyon çerçevesidir.

Geleneksel yöntemlerin aksine, SEGIC hedef görüntüler ve bağlam içindeki örnekler arasındaki yoğun ilişkileri yakalar, son maske tahminini yönlendirmek için geometrik, görsel ve meta talimatlar çıkarır. Bu yaklaşım, etiketleme ve eğitim maliyetlerini önemli ölçüde azaltırken, tek seferde segmentasyon benchmark’larında son teknoloji performans elde eder.

SEGIC’in çok yönlülüğü, video nesne segmentasyonu ve açık kelime dağarcığı segmentasyonu gibi çeşitli görevlerde genişler, bu da onu görüntü segmentasyonu alanında güçlü bir araç yapar.

SEGIC with TAO

SEGIC modelinin TAO’daki eğitimi için, önceden eğitilmiş bir ONNX modeli ve NVIDIA Triton Inference Server kullanılmıştır. Eğitimde kullanılan kaynaklar şunlardı:

  • Görüntü kodlayıcı: DINOv2-L, NVIDIA’nın tescilli görüntüleriyle eğitilmiş.
  • Meta açıklama kodlayıcı: CLIP-B, NVIDIA’nın tescilli görüntüleriyle eğitilmiş.
Model mIOU
SEGIC: DINOv2-L , CLIP-B, mask_decoder 69.57

Tablo 6. SEGIC model KPIs evaluated against the COCO20i dataset

FoundationPose Model

For privacy reasons YouTube needs your permission to be loaded.
I Accept

Doğru 6D nesne pose tahmini ve takibi, robotik, artırılmış gerçeklik ve otonom sürüş gibi çeşitli uygulamalar için kritik öneme sahiptir. Ancak, mevcut yöntemler genellikle kapsamlı ince ayar gerektirir ve ya model bazlı ya da model serbest kurulumlara bağımlıdır. Bu durum, özellikle CAD modellerinin bulunmadığı veya yeni nesnelerle çalışıldığı zaman, farklı senaryolar ve nesneler arasında tutarlı bir performans sağlama konusunda zorluklar yaratır.

FoundationPose, model bazlı ve model serbest kurulumları destekleyen, 6D nesne pose tahmini ve takibi için birleşik bir temel model sunmaktadır. Test aşamasında, CAD modelleri veya birkaç referans görüntü kullanarak yeni nesnelere anında uygulanabilir.

Yeni görünüm sentezi için sinirsel örtük temsiller kullanarak ve LLM, yeni bir transformer tabanlı mimari ve kontrastif öğrenme gibi ileri tekniklerle büyük ölçekli sentetik eğitim uygulayarak, FoundationPose güçlü bir genelleştirme yeteneği elde eder ve çeşitli kamu veri setlerinde özel yöntemleri geride bırakır.

Örneğin, artırılmış gerçeklik uygulamalarında, FoundationPose, sanal nesnelerin gerçek dünya ortamlarına sorunsuz bir şekilde entegrasyonunu sağlar; bu, nesnelerin pozunu doğru bir şekilde tahmin ederek ve takip ederek geniş çaplı manuel ayarlamalara gerek kalmadan gerçekleştirilir.

FoundationPose with TAO

FoundationPose modelinin eğitimi için, önceden eğitilmiş bir ONNX modeli ve NVIDIA Triton Inference Server kullanılmıştır. Eğitim verileri, Google Research’ün Scanned Objects ve Objaverse’den alınan 3D varlıklarla yüksek kaliteli fotogerçekçilikte render edilmiş sahnelerden oluşuyordu. Her veri noktası RGB görüntüler, derinlik bilgisi, nesne pozları, kamera pozları, örnek segmentasyonu ve 2D sınırlayıcı kutuları içermektedir. Ardından NVIDIA Isaac Sim ile yaklaşık 1 milyon sentetik görüntü oluşturulmuştur.

Mart 2024 itibarıyla, dünya çapında BOP liderlik tablosunda model bazlı yeni nesne pose tahmini #1 pozisyonda yer aldı (Şekil 3).

Şekil 3. Benchmark for 6D object pose estimation

Nesne Tespiti ve Segmentasyonu için Prompt Tabanlı Otomatik Etiketleme

İyi etiketlenmiş bir veri setine sahip olmak, özellikle nesne tespiti ve segmentasyonu gibi görevlerde modelleri eğitmek ve ince ayar yapmak için gereklidir. Ancak, yeni kategoriler ve örnekler için etiketlenmiş bir veri seti elde etmek oldukça zaman ve çaba gerektirir. Özellikle, her nesneyi doğru maskelerle etiketlemek, basit sınırlayıcı kutular çizmeye kıyasla 10 kat daha fazla zaman alabilir.

Bu noktada, basit kullanımlı bir prompt tabanlı otomatik etiketleme yöntemi yardımcı olabilir:

  • GroundingDINO: Nesne kategorileri gibi ipuçlarını kullanarak sınırlayıcı kutular üreten açık kelime dağarcığına sahip bir nesne tespiti modeli.
  • Mask Auto-Labeler: Sınırlayıcı kutuları kullanarak yüksek kaliteli örnek segmentasyon maskeleri üreten Transformer tabanlı bir çerçeve.

Bu kombinasyon, ayrıntılı etiketler oluşturmak için gereken çabayı önemli ölçüde azaltır ve gelişmiş modeller için sağlam veri setleri oluşturmayı daha kolay ve hızlı hale getirir.

Şekil 4. Auto-labeling with the GroundingDINO model and Mask Auto-labeler tool

Auto Labels’ı generate komutu ile üretebilirsiniz:

Copy to Clipboard

Bilgi Damıtımı ile Verimli Yapay Zeka

Bilgi damıtımı, makine öğreniminde daha küçük ve verimli bir modelin (öğrenci) daha büyük ve karmaşık bir modelin (öğretmen) davranışını taklit etmesini sağlayan bir tekniktir. Bu süreç, öğrenci modelin öğretmen tarafından zaten yakalanmış olan bilgi, özellikle yumuşak etiketler gibi daha ince ayrıntıları içeren bilgiyi kullanarak, eğitim ve ince ayar süresini azaltır. Öğrenci model, yeni bir görev için sıfırdan eğitim gerektirmediğinden, bu bilgi ile benzer performansı çok daha az hesaplama kaynağı ile elde edebilir, bu da onu kaynak sınırlı ortamlarda dağıtım için ideal hale getirir ve eğitim sürecini hızlandırır.

Şekil 5. Knowledge distillation process

TAO, bilgi damıtımını destekler. Bilgi damıtımı kaybını hesaplamak için çeşitli katmanlar arasındaki bağları belirlemenizi sağlar. Daha fazla bilgi için, Eğitim Sürecini Optimize Etme bölümüne bakabilirsiniz.

DINO ve FAN küçük modellerinden DINO ve ResNet-50’ye L2 kaybı kullanarak ara özellik haritalarını damıtmayı gösteren dino_distillation.ipynb referans defterini sağlıyoruz.

Copy to Clipboard

distill.yaml dosyasında öğretmen modelini, öğrenci modelinin omurgasını ve kayıp fonksiyonunu tanımlayabilirsiniz

Copy to Clipboard

Yazının kaynağına buradan ulaşabilirsiniz.

Yazıda bahsettiğimiz uygulamaları çalıştırmanızı sağlayacak workstation sistemleri için buraya, sunucular için buraya tıklayabilirsiniz.

OPENZEKA HABERLERİ

Abone olmak ister misiniz?

Hemen ilgilendiğiniz alanları seçerek bültenimizden haberdar olabilirsiniz.

Kategoriler

OPENZEKA HABERLERİ

Abone olmak ister misiniz?

Hemen ilgilendiğiniz alanları seçerek bültenimizden haberdar olabilirsiniz.

Kategoriler

Hesaplarınızda paylaşmak ister misiniz?

İlgili Yazılar