SON DAKİKA

Nvdia

“NVIDIA TAO 6 ve NVIDIA DeepStream 8 ile Gerçek Zamanlı Görsel İnceleme Pipelineleri Oluşturma”

Görsel Muayene Pipeline’ınızı Oluşturma

Hataların tespiti ve kalite kontrolü için sağlam bir görsel muayene pipeline’ı oluşturmak oldukça zordur. Üreticiler ve geliştiriciler, genellikle genel amaçlı görsel yapay zeka modellerini özel alanlar için özelleştirme, model boyutunu hesaplama açısından kısıtlı kenar aygıtlarında optimize etme ve maksimum çıkış verimliliği için gerçek zamanlı olarak dağıtım yapma gibi zorluklarla karşılaşmaktadırlar.

NVIDIA Metropolis Nedir?

NVIDIA Metropolis, bu zorlukları aşmaya yardımcı olan bir görsel yapay zeka ajansı ve uygulamaları geliştirme platformudur. Metropolis, çok aşamalı görsel muayene iş akışlarını oluşturmak için modeller ve araçlar sunar. Bu aşamalar şunları içerir:

  • Görsel temel modelleri üzerinde ince ayar yaparak özelleştirmek.
  • Modelleri gerçek zamanlı çıkarım için optimize etmek.
  • Modelleri üretim hatlarına dağıtmak.

NVIDIA Metropolis, NVIDIA TAO 6’yı içeren birleşik bir çatı sağlar; bu, görsel AI temel modellerinin eğitim ve optimizasyonu için bir çerçevedir. Ayrıca, uçtan uca akış analitiği aracı olan NVIDIA DeepStream 8’i de içerir. NVIDIA TAO 6 ve NVIDIA DeepStream 8 artık indirilebilir. Son özellik güncellemeleri hakkında daha fazla bilgi için NVIDIA TAO belgelerine ve NVIDIA DeepStream belgelerine göz atabilirsiniz.

NVIDIA TAO ile Görsel Denetim Pipeline’ı Oluşturma Adımları

NVIDIA TAO ve NVIDIA DeepStream ile gerçek zamanlı bir görsel muayene pipeline oluşturma adımları şunlardır:

  • Alan özel etiketlenmemiş verilerden yararlanarak TAO ile kendinden denetimli ince ayar yapmak.
  • Daha iyi veri akışı ve verimlilik için TAO bilgi distilasyonu ile temel modelleri optimize etmek.
  • Model fikirlerini üretim hazır, bağımsız uygulamalara veya dağıtılabilir mikro hizmetlere dönüştüren DeepStream Çıkarım Yapıcı kullanarak dağıtım yapmak.

NVIDIA TAO ile Model Geliştirme Süreci

NVIDIA TAO, büyük görsel temel modellerin alan spesifik kullanım durumları için eğitim, adapte etme ve optimize etme süreçlerini destekler. Bu, yüksek doğruluk ve performans elde etmek için görsel temel modellerin özelleştirilmesine yönelik bir çerçevedir.

Görsel temel modeller (GTM’ler), çok çeşitli veri setlerinde eğitilmiş büyük ölçekli sinir ağlarıdır; böylece güçlü görsel özellik temsilleri elde edilir. Bu genelleme, görüntü sınıflandırması, nesne tanıma ve semtik segmentasyon gibi birçok AI algılama görevinde esnek bir model omurgası sağlar.

TAO, temel iş yüklerinize yönelik modelleri ince ayar yapmak için güçlü temel omurgalar ve görev başlıkları sunar. TAO 6’nın temel omurgaları arasında en yüksek kutudan çıkan doğruluğu ile C-RADIOv2 ve NV-DINOv2 bulunmaktadır. Ayrıca, TAO uyumlu görsel omurga ve görev başlığı mimarilerine sahip üçüncü taraf modelleri de destekler.

Kendinden Denetimli Öğrenim ile Model Doğruluğunu Arttırma

Model doğruluğunu artırmak için TAO, denetimli ince ayar (SFT) ve kendinden denetimli öğrenme (SSL) gibi çeşitli özelleştirme tekniklerini desteklemektedir. SFT, bilgisini kurmak için belirli bilgisayarla görme alt görevlerine uygun etiketlenmiş veri setleri toplamayı gerektirir. Yüksek kaliteli etiketlenmiş verileri toplamak zaman alıcı ve maliyetli bir süreçtir.

Öte yandan, NVIDIA TAO 6, etiketlenmemiş görüntülerin büyük potansiyelinden yararlanarak, etiketin zor veya pahalı olduğu durumlarda model özelleştirme sürecini hızlandırmak için kendinden denetimli öğrenme kullanmanıza olanak tanır. Bu yaklaşım, alan adaptasyonu olarak da bilinir ve etiketlenmemiş verilerden güçlü bir temele sahip model oluşturmanıza olanak tanır.

Gerçek senaryolarda, bu iş akışı sayesinde bir model, fazlasıyla döküman içermeyen görüntülerden hataların inceliklerini öğrenebilir ve ardından belirli etiketli verilerle karar verme yeteneğini geliştirebilir. Bu sayede, özelleştirilmiş, gerçek dünya veri setlerinde bile son teknoloji performansı sunar.

Örnek: PCB Hata Tespiti ile Modeli İyileştirme

Bir örnek olarak, TAO görsel model uyumlaştırma iş akışını büyük ölçekli etiketlenmemiş baskılı devre kartı (PCB) görüntüleri kullanarak görsel bir temel modeli hata tespiti için özelleştirdik. 700 milyon genel görüntü ile eğitilmiş NV-DINOv2 modelini alıp, yaklaşık 700,000 etiketlenmemiş PCB görüntü veri seti ile SSL kullanarak özelleştirdik. Bu, modelin genel özelliklerden alan özel yetkinliğe geçişini sağladı.

Ana adaptasyon tamamlandıktan sonra, daha fazla doğruluk sağlamak için etiketli PCB veri seti kullanarak doğrulama işlemleri yaptık. Bu ilk veri seti yaklaşık 600 eğitim ve 400 test örneğinden oluşmaktaydı. Görüntüler, OK veya Defekt olarak kategorize ediliyordu (kaybolan, kaymış, ters dönmüş, kötü lehimleme ve yabancı cisim gibi paternler içerisinde)

Adaptif NV-DINOv2’nin özellik haritaları, hedef sınıf “OK” için nesneleri keskin bir şekilde ayırt edebildiğini göstermektedir. Genel bir modelle yapılamayacak karmaşık ögeleri, arka plandan ayırmada son derece başarılıdır.

Bu işlem, sınıflandırma doğruluğunda %4.7’lik bir iyileşme sağlayarak 93.8%’den 98.5%’e çıkmamıza yardımcı oldu. Bu, domain-adapte edilmiş NV-DINOv2’nin aynı alandaki görsel verileri anlamakta güçlü olduğunu ve sonuçta az miktarda etiketli veri ile benzer veya daha iyi doğruluk elde edilebileceğini göstermektedir.

Mevcut senaryolarda, 0.7 milyon etiketlenmemiş görüntü toplamak zor olabilir; ancak, daha az veri seti ile NV-DINOv2 alan adaptasyonunun avantajlarını kullanmaya devam edebilirsiniz.

Üretken AI ve Görselleştirilmiş Modellerin Optimizasyonu

Model optimizasyonu, derin öğrenme modellerinin dağıtımında önemli bir adımdır. Birçok üretken AI ve görsel temel modeli, yüz milyonlarca parametreye sahip olabilir ve bu durum, onlarca veri akışı işlemi gibi zaman alıcı uygulamalarda kullanılmak üzere büyük hesaplama gücü gerektirir.

NVIDIA TAO, büyük temel modellerin bilgilerini kullanarak, bunları daha küçük model boyutlarında bilgi distilasyonu adı verilen bir teknik kullanarak optimize eder. Bilgi distilasyonu, yüksek doğruluğa sahip olan öğretmen modellerinin daha küçük, daha hızlı öğrenci modellerine indirgenmesini sağlar ve genellikle doğruluktan kayıp olmaksızın bu işlemi gerçekleştirir.

NVIDIA TAO, bu süreci daha ileri taşıyarak farklı formların yanı sıra, nesne tespiti için özel bir tek aşamalı distilasyon yaklaşımını tanıtmaktadır. Bu model, genellikle çok daha küçük ve hızlı olan bir öğrenci modelinin, öğretmenden hem görev spesifik tahminleri hem de arka plan temsillerini aynı anda öğrenmesini sağlar. Bu da, çok az kayıpla çıkarım süresinin ciddi şekilde kısaltılmasına olanak tanır.

PCB Hata Tespiti Modelinde Tek Aşamalı Distilasyon Uygulaması

NVIDIA TAO kullanarak yapılan bilgi distilasyonunun etkililiği, PCB hata tespiti veri seti üzerinde test edildi. Toplamda 9,602 eğitim ve 1,066 test görüntüsü içeren bu veri seti, altı zorlayıcı hata sınıfını kapsamaktadır: eksik delik, fare ısırığı, açık devre, kısa devre, fazlalık ve yabancı bakır. Eğitimlerde, ImageNet-1K önceden eğitilmiş ağırlıklarından başlatılan iki öğretmen model adayı kullanıldı ve sonuçlar standart COCO ortalama Doğruluk (mAP) üzerinden ölçüldü.

Deneylerde, ResNet serisi arka planlarda öğretmen-öğrenci kombinasyonu kullanarak, öğrenci modellerinin doğruluklarının öğretmen modellerinin doğruluğunu karşılaması veya aşması mümkündü.

Uygulama, RT-DETR modeli ile birlikte train işlemleri olarak çalıştırıldı. İşte bir eğitim deneyimi çalıştırmak için kullanılabilecek minimum ölçekli bir deneyim yapı dosyası:

model:
  backbone: resnet_50
  train_backbone: true
  num_queries: 300
  num_classes: 7

train:
  num_gpus: 1
  epochs: 72
  batch_size: 4
  optim:
    lr: 1e-4
    lr_backbone: 1.0e-05

dataset:
  train_data_sources:
    - image_dir: /path/to/dataset/images/train
      json_file: /path/to/dataset/annotations/train.json
  val_data_sources:
    image_dir: /path/to/dataset/images/val
    json_file: /path/to/dataset/annotations/val.json
  test_data_sources:
    image_dir: /path/to/dataset/images/test
    json_file: /path/to/dataset/annotations/test.json
  batch_size: 4
  remap_coco_categories: false
  augmentation:
    multiscales: [640]
    train_spatial_size: [640, 640]
    eval_spatial_size: [640, 640]

Çalıştırmak için gereken komut:

tao model rtdetr train -e /path/to/experiment/spec.yaml results_dir=/path/to/results/dir model.backbone=backbone_name model.pretrained_backbone_path=/path/to/the/pretrained/model.pth

Ayrıca, model.backbone parametresini değiştirerek arka plan adını ve model.pretrained_backbone_path parametresini eğitim kontrol noktası dosyasının yoluna atıfta bulunarak değiştirebilirsiniz.

Bir distilasyon deneyimi, RT-DETR modeli ile birlikte distill işlemi olarak çalıştırılır. Distilasyon deneyimini yapı dosyasına ekleyerek yapılandırabilirsiniz.

distill:
  teacher:
    backbone: resnet_50
  pretrained_teacher_model_path: /path/to/the/teacher/checkpoint.pth

Distilasyon deneyimini çalıştırmak için şu örnek komutu kullanabilirsiniz:

tao model rtdetr distill -e /path/to/experiment/spec/yaml results_dir=/path/to/results/dir model.backbone=backbone_namemodel.pretrained_backbone_path=/path/to/pretrained/backbone/checkpoint.pth distill.teacher.backbone=teacher_backbone_name distill.pretrained_teacher_model_path=/path/to/the/teacher/model.pth

Modelleri kenar aygıtlarda dağıtırken, hem çıkarım hızını artırmak hem de bellek sınırını göz önünde bulundurmak önemli olabilir. TAO, sadece aynı arka plan ailesi içinde değil, ayrıca arka plan aileleri arasında da distilasyon» özelliklerini taşımaktadır.

Artırılmış Gerçek Zamanlı Servis ile Modellemenin Akışkanlıkları Sağlama

Artık eğitimli ve distil edilmiş RT-DETR modelini elde ettikten sonra, onu bir çıkarım mikro servisi olarak dağıtmanın zamanı geldi. Yeni NVIDIA DeepStream 8 Çıkarım Yapıcı, model fikirlerini bağımsız uygulamalara veya dağıtılabilir mikro hizmetlere dönüştüren düşük kodlamalı bir araçtır.

Çıkarım Yapıcı’yı kullanmak için bir yapı dosyası (YAML formatında) ve isteğe bağlı bir openapi.yaml dosyası sağlamanız gerekir. Çıkarım Yapıcı, veri yükleme, GPU hızlandırmalı ön işleme, çıkarım ve sonrası işlem aşamalarını birbirine bağlayan Python kodu üretir ve mikro hizmet dağıtımı için REST uç noktalarını açığa çıkarır.

Tek bir yapılandırma ile, Çıkarım Yapıcı, bu karmaşıklıkları yönetmek için gereken sunucu geliştirme kodlarını otomatik olarak oluşturur. Bu, gereksiz kod yazma işlemlerine gerek kalmadan iş akışınızı kolaylaştırır.

Adım 1: Yapılandırmayı Tanımla

  • config.yaml dosyasını oluşturun ve modelinizi ve çıkarım hattınızı tanımlayın.
  • (İsteğe bağlı) Açık API şeması tanımlaması isteniyorsa openapi.yaml dosyasını ekleyin.

Adım 2: DeepStream Çıkarım Yapıcısını Çalıştırın

  • Yapılandırmayı Çıkarım Yapıcısına gönderin.
  • Bu araç, bağımsız proje kodunu otomatik olarak üretecektir.
  • Çıktı, çıkarım mantığı, sunucu kodu ve yardımcı araçları kapsayan kapsamlı bir paket olacaktır.
  • Çıktı infer.tgz adlı bir çıkarım hizmeti olacaktır.

Adım 3: Oluşturulan Kodu İnceleyin

Paket, iyi organize edilmiş bir projeye açılacaktır ve bu, şunları içerecektir:

  • Yapılandırmalar: config/
  • Sunucu mantığı: server/
  • Çıkarım kütüphanesi: lib/
  • Yardımcı araçlar: varlık yöneticisi, codec, yanıtlayıcılar vb.

Adım 4: Docker Görüntüsü Oluşturma

  • Hizmeti konteynerleştirmek için referans Dockerfile’ını kullanın.
  • docker build -t my-infer-service komutunu çalıştırın.

Adım 5: Docker Compose ile Dağıtım Yapma

  • Hizmeti Docker Compose ile başlatın: docker-compose up
  • Hizmet, ardından konteyner içinde modelleri yükleyecektir.

Adım 6: Kullanıcılara Servis Sağlama

  • Çıkarım mikro hizmetiniz artık çalışır durumda.
  • Son kullanıcılar veya uygulamalar, açık API uç noktalarına talepler göndererek modelinizden tahminler alabilir.

DeepStream Çıkarım Yapıcısı hakkında daha fazla bilgi almak için NVIDIA-AI-IOT/deepstream_tools adresine göz atın.

Gerçek Zamanlı Görsel Muayene için Ek Uygulamalar

Baskılı devre kartı (PCB) hatalarını tespit etmenin yanı sıra, TAO ve DeepStream’ı otomotiv ve lojistik sektörlerinde anormallikleri tespit etmek için de uygulayabilirsiniz. Spesifik bir kullanım durumu hakkında daha fazla bilgi edinmek için Üretim AI Dağıtım Süresini Yapay Veri ve NVIDIA TAO ile Kesin yazısına göz atabilirsiniz.

Gerçek Zamanlı Görsel Muayene Pipeline’ı Oluşturma

NVIDIA DeepStream ve NVIDIA TAO ile geliştiriciler görsel yapay zeka alanında olanakları zorlamaktadır. Hızlı prototiplemeden büyük ölçekli dağıtıma kadar pek çok uygulama sunmaktadır.

DeepStream 8.0, geliştiricilere Çıkarım Yapıcı gibi güçlü araçlar sunarak pipeline oluşturmaya ve karmaşık ortamlar arasında izleme doğruluğunu artırmaya yardımcı olur. TAO 6, temel modellerin alan adaptasyonu, kendinden denetimli ince ayar ve bilgi distilasyonu sayesinde kapasitelerini serbest bırakmaktadır.

Bu, daha hızlı döngüler, etiketlenmemiş verinin daha iyi kullanımı ve üretime hazır çıkarım hizmetleri anlamına gelir. Başlamak için hazır mısınız?

NVIDIA TAO 6’yı indirin ve son özellikleri keşfedin. Sorular sormak ve tartışmalara katılmak için NVIDIA TAO Geliştirici Forumu’na katılabilirsiniz.

NVIDIA DeepStream 8’i indirin ve son özellikleri keşfedin. Sorular sormak ve tartışmalara katılmak için NVIDIA DeepStream Geliştirici Forumu’na katılabilirsiniz.

Kaynak

Nvdia Blog

Düşüncenizi Paylaşın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İlgili Teknoloji Haberleri