Bilgisayarlı göründe budama ve nicelleştirme: Hızlı bir rehber
Budama ve nicelleştirmenin, bilgisayarlı görü modellerini optimize etmek ve uç cihazlarda daha hızlı performansı mümkün kılmak için neden gerekli olduğunu keşfet.

Teknoloji ilerledikçe uç cihazlar giderek daha yaygın hale geliyor. Kalp atış hızınızı takip eden akıllı saatlerden sokakları izleyen hava dronlarına kadar, uç sistemler verileri cihazın kendi içinde gerçek zamanlı olarak yerel düzeyde işleyebilir.
Bu yöntem, özellikle plaka tespiti veya el hareketi takibi gibi kişisel verileri içeren uygulamalar için genellikle verilerin buluta gönderilmesinden daha hızlı ve daha güvenlidir. Bunlar, makinelerin görsel bilgileri yorumlamasını ve anlamasını sağlayan bir yapay zeka (AI) dalı olan computer vision örnekleridir.

Şekil 1. Plaka tespiti örneği. (Source)
Ancak önemli bir husus, bu tür uygulamaların yoğun hesaplamaları işleyebilen, minimum kaynak kullanan ve bağımsız olarak çalışabilen vizyon AI modelleri gerektirdiğidir. Çoğu computer vision models yüksek performanslı sistemler için geliştirildiğinden, uç cihazlarda doğrudan konuşlandırılmaları için daha az uygundur.
Bu boşluğu doldurmak için geliştiriciler, modeli daha küçük donanımlarda verimli çalışacak şekilde uyarlayan hedefli optimizasyonlar uygularlar. Bu ayarlamalar, bellek ve işlem gücünün sınırlı olduğu gerçek dünya uç dağıtımları için kritiktir.
İlginç bir şekilde, Ultralytics YOLO11 gibi computer vision modelleri, gerçek zamanlı görevler için harika hale getirecek şekilde uç verimliliği göz önünde bulundurularak tasarlanmıştır. Bununla birlikte, performansları budama ve niceleme gibi model optimizasyon teknikleri kullanılarak daha da artırılabilir, böylece kısıtlı cihazlarda daha da hızlı çıkarım ve daha düşük kaynak kullanımı sağlanır.
Bu makalede budama ve nicemlemenin ne olduğuna, nasıl çalıştıklarına ve YOLO modellerinin gerçek dünya uç dağıtımlarında performans göstermesine nasıl yardımcı olabileceklerine daha yakından bakacağız. Haydi başlayalım!
Budama ve nicemleme: Model optimizasyonunda temel teknikler#
Görü yapay zeka modellerini uç cihazlara dağıtım için hazırlarken temel hedeflerden biri, performanstan ödün vermeden modeli hafif ve güvenilir hale getirmektir. Bu genellikle modelin boyutunu ve hesaplama taleplerini azaltmayı gerektirir, böylece bellek, güç veya işlem kapasitesi sınırlı olan donanımlarda verimli bir şekilde çalışabilir. Bunu yapmanın iki yaygın yolu budama ve nicemlemedir.
Budama, sinir ağlarını daha küçük ve daha verimli hale getirmeye yardımcı olan bir AI model optimization tekniğidir. Çoğu durumda, bir modelin belirli bağlantılar veya düğümler gibi bazı bölümleri, nihai tahminlerine çok fazla katkıda bulunmaz. Budama, modelin boyutunu küçülten ve performansını artıran bu daha az önemli parçaları belirleyip kaldırarak çalışır.
Öte yandan nicemleme, modelin kullandığı sayıların hassasiyetini azaltan bir optimizasyon tekniğidir. Yüksek hassasiyetli 32-bit kayan noktalı sayılara güvenmek yerine, model 8-bit tamsayılar gibi daha küçük ve daha verimli formatlara geçer. Bu değişiklik, bellek kullanımını düşürmeye ve modelin tahminlerde bulunduğu süreç olan çıkarımı hızlandırmaya yardımcı olur.

Şekil 2. Budama ve nicelemeye bir bakış. (Source)
Budama ve nicemleme nasıl çalışır#
Pruning ve nicelemenin ne olduğuna dair daha iyi bir anlayışa sahip olduğumuza göre, her ikisinin de nasıl çalıştığını inceleyelim.
Budama, duyarlılık analizi olarak bilinen bir süreç kullanılarak yapılır. Sinir ağı modellerinin belirli ağırlıklar, nöronlar veya kanallar gibi hangi bölümlerinin nihai çıktı tahminine en az katkıda bulunduğunu belirler. Bu bölümler, doğruluk üzerinde minimum etkiyle kaldırılabilir. Budamadan sonra model, performansını ince ayar yapmak için genellikle yeniden eğitilir. Bu döngü, boyutu ve doğruluğu arasında doğru dengeyi bulmak için tekrarlanabilir.
Bu arada, model quantization modelin verileri nasıl işlediğine odaklanır. Modelin işlemesi gereken değer aralığını öğrenmek için örnek veriler üzerinde çalıştığı kalibrasyonla başlar. Bu değerler daha sonra 32 bit kayan noktalı sayıdan 8 bitlik tamsayılar gibi daha düşük hassasiyetli formatlara dönüştürülür.

Şekil 3. Niceleme, model boyutunu ve karmaşıklığını azaltmaya yardımcı olur. (Source)
Gerçek dünya yapay zeka projelerinde budama ve nicemlemeyi kullanmayı kolaylaştıran çeşitli araçlar mevcuttur. PyTorch ve TensorFlow gibi çoğu yapay zeka çerçevesi, bu optimizasyon teknikleri için yerleşik destek içerir ve geliştiricilerin bunları doğrudan model dağıtım sürecine entegre etmesine olanak tanır.
Bir model optimize edildikten sonra, ONNX Runtime gibi araçlar onun sunucular, masaüstü bilgisayarlar ve uç cihazlar gibi çeşitli donanım platformlarında verimli bir şekilde çalışmasına yardımcı olabilir. Ayrıca Ultralytics, YOLO modellerinin nicemlemeye uygun formatlarda dışa aktarılmasına olanak tanıyan entegrasyonlar sunar, bu da model boyutunu küçültmeyi ve performansı artırmayı kolaylaştırır.
Ultralytics YOLO model optimizasyonuna genel bakış#
YOLO11 gibi Ultralytics YOLO modelleri, hızlı, tek adımlı nesne tespiti ile yaygın olarak bilinir ve bu da onları gerçek zamanlı vision AI tasks için ideal kılar. Uç cihazda dağıtım için zaten hafif ve yeterince verimli olacak şekilde tasarlanmıştır. Bununla birlikte, görsel özellikleri işlemekten sorumlu olan konvolüsyonel katmanlar, çıkarım sırasında hala önemli ölçüde bilgi işlem gücü talep edebilir.
Şu soruyu sorabilirsin: Ultralytics YOLO11 zaten uç nokta kullanımı için optimize edilmişse, neden daha fazla optimizasyona ihtiyaç duysun? Basitçe söylemek gerekirse, tüm uç cihazlar aynı değildir. Bazıları, standart bir LED ampulden daha az güç tüketen minik gömülü işlemciler gibi çok minimal donanımlar üzerinde çalışır.
Bu durumlarda, Ultralytics YOLO11 gibi sadeleştirilmiş bir modelin bile akıcı ve güvenilir performans garanti etmek için ek optimizasyona ihtiyacı vardır. Budama (pruning) ve niceleme (quantization) gibi teknikler, doğruluğu önemli ölçüde etkilemeden modelin boyutunu küçültmeye ve çıkarımı hızlandırmaya yardımcı olur; bu da onları bu tür kısıtlı ortamlar için ideal hale getirir.
Bu optimizasyon tekniklerini uygulamayı kolaylaştırmak için Ultralytics, YOLO modellerini ONNX, TensorRT, OpenVINO, CoreML ve PaddlePaddle gibi birden fazla formata aktarmak için kullanılabilen çeşitli integrations destekler. Her format belirli donanım türleri ve dağıtım ortamlarıyla iyi çalışacak şekilde tasarlanmıştır.
Örneğin, ONNX, araç ve platformlarla geniş uyumluluğu nedeniyle genellikle nicemleme iş akışlarında kullanılır. Öte yandan TensorRT, NVIDIA cihazları için yüksek oranda optimize edilmiştir ve INT8 kullanarak düşük hassasiyetli çıkarımı destekler, bu da onu uç GPU'larda yüksek hızlı dağıtım için ideal hale getirir.
Ultralytics YOLO model optimizasyonunun etkili kullanım durumları#
Bilgisayarlı görü çeşitli gerçek dünya uygulamalarına genişlemeye devam ederken, optimize edilmiş YOLO modelleri nesne algılama, örnek bölümleme ve nesne takibi gibi görevleri daha küçük, daha hızlı donanımlarda çalıştırmayı mümkün kılar. Şimdi, budama ve nicemlemenin bu bilgisayarlı görü görevlerini daha verimli ve pratik hale getirdiği birkaç kullanım durumunu tartışalım.
Ultralytics YOLO11 tarafından desteklenen akıllı gözetim#
Birçok endüstriyel alan ve halka açık alan, güvenli ve emniyetli kalmak için gerçek zamanlı izlemeye güvenir. Transit istasyonları, üretim sahaları ve büyük dış mekan tesisleri gibi yerler, insanları veya araçları hızlı ve doğru bir şekilde tespit edebilen görü yapay zeka sistemlerine ihtiyaç duyar. Genellikle bu konumlar, sınırlı bağlantı ve donanım kısıtlamalarıyla çalışır, bu da büyük modellerin dağıtılmasını zorlaştırır.
Bu gibi durumlarda, Ultralytics YOLO11 gibi optimize edilmiş bir yapay zeka görüş modeli harika bir çözümdür. Kompakt boyutu ve hızlı performansı, gömülü kameralar veya akıllı sensörler gibi düşük güç tüketen uç cihazlarda çalıştırılmasını mükemmel hale getirir. Bu modeller görsel verileri doğrudan cihaz üzerinde işleyerek sabit bir bulut bağlantısına ihtiyaç duymadan güvenlik ihlallerini, yetkisiz erişimleri veya anormal aktiviteleri gerçek zamanlı olarak tespit etmeyi sağlar.

Şekil 4. Ultralytics YOLO11, metro istasyonları gibi halka açık yerleri izlemek için kullanılabilir.
Ultralytics YOLO11 ile şantiyelerde güvenliği artırma#
Construction sites ağır makineler, hareketli işçiler ve sürekli hareketlilikle dolu, hızlı tempolu ve öngörülemeyen ortamlardır. Koşullar değişen programlar, ekipman hareketleri ve hatta havadaki ani değişiklikler nedeniyle hızla değişebilir. Böyle dinamik bir ortamda işçi güvenliği sürekli bir zorluk gibi gelebilir.
Gerçek zamanlı izleme kritik bir rol oynar, ancak geleneksel sistemler genellikle sahada pratik olmayabilecek bulut erişimine veya pahalı donanıma güvenir. İşte Ultralytics YOLO11 gibi modellerin etkili olabileceği nokta burasıdır. YOLO11, internet bağlantısına ihtiyaç duymadan doğrudan sahada çalışan küçük, verimli uç cihazlarda çalışacak şekilde optimize edilebilir.
Örneğin, birkaç dönüme yayalan bir otoyol genişletmesi gibi büyük bir şantiyeyi ele alalım. Bu tür ortamlarda, her aracı veya ekipmanı manuel olarak takip etmek zor ve zaman alıcı olabilir. Kamerayla ve optimize edilmiş bir Ultralytics YOLO11 modeliyle donatılmış bir drone; araçları otomatik olarak tespit edip takip ederek, trafik akışını izleyerek ve yetkisiz erişim veya güvenli olmayan sürüş davranışı gibi güvenlik sorunlarını belirleyerek yardımcı olabilir.

Şekil 5. Bir şantiyeden drone görüntülerini analiz etme. (Source)
Bilgisayarlı görüde budama ve nicemlemenin artıları ve eksileri#
İşte budama ve nicemleme gibi bilgisayarlı görü model optimizasyon yöntemlerinin sunduğu bazı temel avantajlar:
- Maliyet etkin dağıtım: Daha küçük ve daha verimli modeller, pahalı ve üst düzey donanım ihtiyacını azaltarak yapay zekayı farklı kullanım durumlarında daha erişilebilir ve ölçeklenebilir hale getirebilir.
- Daha düşük gecikme: Model mimarisini basitleştirerek ve hesaplama yükünü azaltarak, bu teknikler gerçek zamanlı uygulamalarda daha hızlı yanıt süreleri elde etmeye yardımcı olabilir.
- Enerji verimliliği: Hesaplama yükünü azaltmak, pil ile çalışan veya mobil sistemler için özellikle yararlı olan güç tüketimini de düşürür.
Budama ve nicemleme birçok avantaj sunsa da, geliştiricilerin modelleri optimize ederken göz önünde bulundurmaları gereken bazı ödünleşimleri de beraberinde getirirler. İşte akılda tutulması gereken bazı sınırlamalar:
- Accuracy ödünleşimleri: Budama çok agresifse veya çok düşük bitli niceleme kullanılırsa, mAP gibi metriklerle ölçülen modelin doğruluğu düşebilir.
- Donanım kısıtlamaları: Tüm cihazlar INT8 gibi düşük hassasiyetli formatları eşit derecede iyi desteklemez. Bu, optimize edilmiş bir modelin nerede ve nasıl dağıtılabileceğini kısıtlayabilir.
- Uygulama karmaşıklığı: İyi sonuçlar elde etmek genellikle dikkatli, modele özgü ayarlamalar gerektirir. Geliştiricilerin verimliliği artırırken performansı korumak için modeli yeniden eğitmeleri ve kapsamlı testler yapmaları gerekebilir.
Öne çıkanlar#
Budama ve nicemleme, YOLO modellerinin uç cihazlarda daha iyi performans göstermesine yardımcı olan yararlı tekniklerdir. Modelin boyutunu küçültür, hesaplama ihtiyaçlarını düşürür ve doğrulukta gözle görülür bir kayıp olmaksızın tahminleri hızlandırırlar.
Bu optimizasyon yöntemleri ayrıca geliştiricilere, modelleri tamamen yeniden oluşturmaya gerek kalmadan farklı donanım türleri için ayarlama esnekliği sağlar. Biraz ayarlama ve test ile görü yapay zekasını gerçek dünya durumlarında uygulamak daha kolay hale gelir.
Büyüyen community katılsana! Yapay zeka hakkında daha fazla bilgi edinmek için GitHub repository keşfet. Computer vision projelerine başlamaya hazır mısın? licensing options göz at. Çözüm sayfalarımızı ziyaret ederek AI in agriculture ve sağlıkta vision AI keşfet!






