Ultralytics YOLO27: Bekleme listesine katıl.
YOLO'yu lisansla
Görsel Yapay Zekâ

Model dağıtımını kolaylaştırmak için Docker ile kapsayıcılaştırma

Kapsayıcılaştırma için Docker kullanmanın, Ultralytics YOLO11 gibi bilgisayarlı görü modellerinin dağıtımını nasıl daha verimli ve kolay hâle getirdiğini öğren.

Abirami VinaAbirami Vina8 dakikalık okuma
YOLO11 modellerini dağıtmak için Docker kapsayıcılaştırmasını kullanma

Bir bilgisayarlı görü çözümü geliştirmek, yalnızca bir modeli eğitip test etmekten daha fazla adım içerir. Aslında model geliştirmenin en tatmin edici yanlarından biri, gerçek dünya ortamlarında etki yarattığını görmektir. Sorunları Görsel Yapay Zekâ ile çözmek, geliştirdiğin bilgisayarlı görü modellerini üretim ortamına dağıtmayı doğal olarak beraberinde getirir.

Model dağıtımı; farklı koşullarda güvenilirlik, ölçeklenebilirlik ve performans için modelleri optimize etmek gibi çeşitli adımları içerir. İyi yapılandırılmış bir dağıtım iş akışı, model geliştirme ile modelin anlamlı bir etki yaratarak fark oluşturması arasındaki boşluğu kapatır.

Ultralytics YOLO11 gibi bilgisayarlı görü modellerini dağıtırken çoğu zaman seçebileceğin birden fazla dağıtım tekniği ve seçeneği vardır; doğru tercih, geliştirdiğin uygulamaya bağlıdır. Örneğin kapsayıcılaştırma gibi teknikler dağıtım iş akışını basitleştirebilir.

Kapsayıcılaştırma; modeli ve kitaplıklar, çerçeveler ve yapılandırmalar gibi bağımlılıklarını kapsayıcı adı verilen tek, bağımsız bir birimde paketlemeye yardımcı olur. Bunu yapmanın en verimli ve yaygın yollarından biri, kapsayıcılaştırılmış uygulamaları oluşturmayı, göndermeyi ve çalıştırmayı kolaylaştıran açık kaynaklı bir platform olan Docker'ı kullanmaktır.

Bu makalede, kapsayıcılaştırma ve Docker’ın gerçek dünyadaki görsel yapay zekâ uygulamalarında model dağıtımını nasıl kolaylaştırıp ölçeklenebilirliği ve verimliliği artırdığını inceleyeceğiz.

Model dağıtımı nedir?#

Model dağıtımı, eğitilmiş modelin gerçek dünyada tahminler üretmesi için üretim ortamına alındığı makine öğrenimi yaşam döngüsünün son aşamasıdır. Başarılı dağıtım, modelin uygulamadaki koşullarda güvenilir şekilde çalışmasının temel unsurlarındandır.

Örneğin, otomatik geçiş ücreti tahsilatı için plakaları tanımak üzere tasarlanmış bir bilgisayarlı görü modelini ele alalım. İyi etiketlenmiş veri kümelerinin bulunduğu kontrollü bir ortamda yüksek doğruluk elde edebilir; ancak yol kenarındaki kameralara dağıtıldığında yüksek çözünürlüklü görüntü işleme, ağ gecikmeleri, donanım kısıtlamaları ve gerçek zamanlı çıkarım gereksinimleri gibi etkenler gecikme sorunlarına yol açabilir.

Yavaş tahminler, geçiş ücreti işlemlerinde gecikmelere, trafik sıkışıklığına veya tespitlerin kaçırılmasına neden olabilir. Uygun model dağıtım stratejileri gecikmeyi azaltmaya, verimliliği artırmaya ve gerçek dünya uygulamalarında güvenilir performansı desteklemeye yardımcı olabilir.

Ultralytics YOLO11 kullanılarak plaka tespiti

Şekil 1. Ultralytics YOLO11 kullanılarak plaka tespiti.

Ayrıca, modelleri dağıtırken akılda tutulması gereken birkaç nokta vardır. Bunlardan biri ölçeklenebilirliktir: Modeller eğitim sırasında iyi performans gösterse de büyük ölçekli verileri işlemekte zorlanabilir.

Bir diğer sorun, model yüksek performanslı GPU’larda (grafik işlem birimleri) eğitilirken sınırlı işlem gücüne sahip cihazlara dağıtılması gibi donanım farklılıklarından kaynaklanan ortam uyumsuzluklarıdır. Dağıtım sırasındaki bu tutarsızlıklar, model davranışının öngörülememesine yol açabilir. Bu zorlukları aşmak için kapsayıcılaştırma gibi gelişmiş çözümler kullanılabilir.

Kapsayıcılaştırma#

Konteynerleştirme, yemek, çatal-bıçak takımı ve çeşniler gibi bir öğün için ihtiyacın olan her şeyi içeren beslenme çantanı hazırlamaya benzetilebilir. Mutfak ya da belirli mutfak gereçleri bulma endişesi yaşamadan istediğin yerde yemek yiyebilirsin.

Benzer şekilde kapsayıcılaştırma, modeli kitaplıklar, çerçeveler ve yapılandırmalar gibi tüm bağımlılıklarıyla birlikte kapsayıcı adı verilen tek bir birimde paketler. Bu kapsayıcılar, temel alınan ortamdan bağımsız olarak her sistemde aynı bağımlılıkları sağlayarak modelin tutarlı biçimde çalışmasını sağlar. Tüm işletim sistemlerini içeren sanal makinelerin aksine kapsayıcılar hafif ve taşınabilirdir; bu da onları verimli bir alternatif hâline getirir.

Aynı donanımda çalışan üç uygulama kapsayıcısının ana işletim sisteminin çekirdeğini paylaştığını gösteren diyagram

Şekil 2. Kapsayıcılaştırmaya genel bakış.

Kapsayıcılaştırmanın başlıca avantajlarından bazıları şunlardır:

  • Sürüm kontrolü: Kapsayıcılaştırma sayesinde bir modelin veya yazılım yığınının farklı sürümleri bir arada bulunabilir; bu da üretim sistemlerini aksatmadan kolayca önceki sürümlere dönmeyi ve güncelleme yapmayı sağlar.
  • Güvenlik: Kapsayıcılar uygulamaları temel sistemden yalıtarak çakışma, güvenlik açığı ve yetkisiz erişim riskini azaltır.
  • Hızlı dağıtım: Önceden yapılandırılmış kapsayıcı görüntüleri, hızlı ve tekrarlanabilir dağıtımları mümkün kılar; kurulum süresini kısaltır ve dağıtım hatalarını en aza indirir.

Docker: kapsayıcılaştırmayı kolaylaştırıyor#

Kapsayıcılaştırma, uygulamaları yalıtılmış ortamlarda çalıştırmak için harika bir yöntem olsa da kurulumu karmaşık olabilir. Docker tam da bu noktada devreye girer. Docker, kapsayıcılaştırılmış uygulamaların oluşturulmasını, dağıtılmasını ve yönetilmesini kolaylaştıran açık kaynaklı bir platformdur.

Modeli test etmek için gerekli araçlar ve çerçevelerle birlikte tutarlı ve yalıtılmış bir ortam sağlar. Docker özellikle güçlü ekosistemi ve kullanım kolaylığıyla bilinir. Süreci basitleştirerek, bulut platformlarıyla sorunsuz çalışarak ve daha hızlı sonuçlar için yapay zeka modellerinin uç cihazlarda verimli şekilde çalışmasına olanak tanıyarak bu modellerin dağıtımını kolaylaştırır.

Birçok sektör, kapsayıcılaştırılmış uygulamaları verimli şekilde dağıtmak ve yönetmek için Docker'ı etkin biçimde kullanıyor. Docker tabanlı model dağıtımı genellikle üç ana bileşenden oluşur:

  • Dockerfile: Docker görüntüsü oluşturmak için taslak görevi gören metin tabanlı bir yapılandırma dosyasıdır. Temel görüntü, gerekli bağımlılıklar, ortam ayarları ve modeli çalıştırma komutları dâhil tüm gerekli talimatları içerir.
  • Docker görüntüleri: Kod, kitaplıklar, çalışma zamanı ortamları ve bağımlılıklar gibi modelin çalışması için gereken her şeyi içeren, önceden yapılandırılmış paket dosyalarıdır. Bu görüntüler, modelin her sistemde aynı yapılandırmayla çalışmasını sağlar.
  • Docker kapsayıcıları: Modelin çalışması için yalıtılmış ve güvenli bir ortam sağlayan Docker görüntülerinin çalışan örnekleridir. Bu ortamda model, diğer uygulamaları veya ana sistemi etkilemeden eğitilebilir, test edilebilir ve ince ayar yapılabilir.

Docker'ın temel bileşenleri

Şekil 3. Docker'ın temel bileşenlerini anlamak.

Docker ile bir bilgisayarlı görü uygulamasını inceleme#

Bir şehrin, araçları gerçek zamanlı tespit edip sınıflandırmak için bilgisayarlı görü kullanan bir trafik izleme sistemi dağıtmak istediğini düşünelim. Bu sistemi donanım ve ağ koşulları farklı olan birden fazla konuma dağıtmak zorlayıcı olabilir. Uyumluluk sorunları, bağımlılık çakışmaları ve tutarsız ortamlar güvenilir olmayan performansa yol açabilir.

Docker kullanan geliştiriciler, tüm bilgisayarlı görü modelini TensorFlow gibi yapay zeka çerçeveleri ve özel betikler gibi bağımlılıklarıyla birlikte bir kapsayıcıya paketleyebilir. Böylece model, yerel geliştirme ortamından bulut tabanlı sunuculara, hatta trafik kameralarına takılı uç cihazlara kadar farklı ortamlarda tutarlı şekilde çalışır.

Ana işletim sistemi ve altyapı üzerinde katmanlar hâlinde Docker'da çalışan altı kapsayıcılaştırılmış uygulamanın diyagramı

Şekil 4. Docker nasıl çalışır.

Örneğin şehir, Docker ile paketlenmiş bilgisayarlı görü modellerini birden fazla kavşağa dağıtarak trafik akışını analiz edebilir, ihlalleri algılayabilir ve trafik ışıklarını optimize edebilir. Docker tüm konumlarda standart bir ortam sağladığından bakım kolaylaşır, güncellemeler basitleşir ve performans tutarlı kalır.

Docker kullanarak Ultralytics YOLO11 dağıtımı#

Karmaşık bilgisayarlı görü görevlerini yerine getirebilen Ultralytics YOLO11; üretim, sağlık hizmetleri, otonom sürüş ve tarım gibi çeşitli sektörlerde kullanılabilir.

Örneğin Ultralytics YOLO11, fitness uygulamalarında video akışlarını işleyerek poz tahminiyle şınav gibi egzersizleri takip edebilir. Vücut hareketlerini algılayıp tekrarları gerçek zamanlı olarak sayarak antrenman takibini ve performans analizini iyileştirmeye yardımcı olur.

Ultralytics YOLO11 poz tahmini kullanarak antrenmanı izleme

Şekil 5. Ultralytics YOLO11 kullanarak antrenmanı izleme.

Böyle bir modeli gerçek dünya uygulamalarında dağıtmak istiyorsak bağımlılıkları yönetmemiz, donanımı optimize etmemiz ve farklı ortamlarda tutarlı performans sağlamamız gerekir. Docker, Ultralytics YOLO11'i gerekli tüm kitaplıklar ve yapılandırmalarla birlikte paketleyerek bu süreci basitleştirir ve dağıtımı daha verimli, ölçeklenebilir ve güvenilir hâle getirir.

Docker kullanarak Ultralytics YOLO11 dağıtmanın avantajlarına kısaca göz atalım:

  • Bakım süreçlerinin kolaylaşması: Docker, Ultralytics YOLO11'i ve bağımlılıklarını güncelleme ve bakım sürecini basitleştirir. Ana sistemi etkilemeden kapsayıcı görüntüsüne güncellemeler uygulanabilir; böylece model yönetimi sorunsuz ve verimli biçimde yürütülür.
  • İş birliğinin kolaylaşması: Geliştiriciler ve araştırmacılar önceden yapılandırılmış Docker kapsayıcılarını kolayca paylaşabilir; böylece ekipler aynı ortamda çalışır ve uyumluluk sorunları önlenir.
  • Kaynak verimliliği: Geleneksel sanal makinelerin aksine Docker kapsayıcıları ana işletim sistemini paylaşır; böylece ek yük azalır ve kaynak kullanımı iyileşir. Bu, gerçek zamanlı çıkarım görevleri için kritik önem taşır.

Docker kullanılarak dağıtılabilen Ultralytics YOLO11 uygulamaları#

Ultralytics YOLO11 ve Docker kullanılarak geliştirilebilecek bilgisayarlı görü uygulamalarından birkaç örneğe göz atalım.

Ultralytics YOLO11 kullanarak trafiği izleme#

Daha önce bilgisayarlı görü kullanarak trafiğin izlenmesini ele almıştık. İlginç bir şekilde, Ultralytics YOLO11'in nesne takibi desteği kapsamlı bir trafik yönetim sistemi oluşturmaya yardımcı olabilir. Peki bu nasıl çalışır?

Ultralytics YOLO11, araçları gerçek zamanlı tespit edip izlemek için trafik kameralarından gelen canlı video akışlarını analiz edebilir. Sistem, araçların konumlarını, hızlarını ve hareket düzenlerini sürekli belirleyerek trafik yoğunluğunu izleyebilir, trafik ihlallerini (kırmızı ışıkta geçme veya yasa dışı dönüş gibi) tespit edebilir ve trafik ışıklarını gerçek zamanlı verilere göre optimize edebilir.

Ayrıca Docker'ın yardımıyla Ultralytics YOLO11'i uç cihazlarda veya bulut tabanlı platformlarda dağıtmak, verimli işlemeyi ve ölçeklenebilirliği güvence altına alarak onu akıllı şehirlerde trafik yönetimi için değerli bir araca dönüştürür.

Ultralytics YOLO11 kullanarak araçları izleme ve sayma

Şekil 6. YOLO11 kullanarak araçları izleme ve sayma.

Ultralytics YOLO11 ile geliştirilmiş fizyoterapi#

Sağlık hizmetlerinde fizyoterapi, rehabilitasyon açısından kritik önem taşır; doğru duruş ve hareket de başarılı bir iyileşme için hayati önemdedir. Görüntü tabanlı bir hasta izleme sisteminden alınan gerçek zamanlı geri bildirim, terapistlerin hatalı eklem açıları veya kas dengesizlikleri gibi sorunları fark etmesine yardımcı olabilir.

Örneğin, hasta omuz kaldırma hareketi yaparken kolunu doğru yüksekliğe kaldırmıyorsa veya yanlış duruşla bunu telafi ediyorsa sistem bu hataları tespit edip anında düzeltme önerileri sunabilir. Böylece terapistler tedavileri gerçek zamanlı olarak ayarlayabilir.

Ultralytics YOLO11'in poz tahmini özellikleri, vücudun önemli noktalarını tespit etmek ve eklem hareketlerini analiz etmek için kullanılabilir. Canlı video akışlarını işleyerek anında geri bildirim sağlayabilir; terapistlerin duruşu düzeltmesine, hareket doğruluğunu artırmasına ve yaralanmaları önlemesine yardımcı olabilir. Bu sayede her hastanın ilerlemesine göre kişiselleştirilmiş tedavi planları oluşturmak kolaylaşır.

Ultralytics YOLO11 poz tahmini kullanarak fizyoterapiyi izleme

Şekil 7. Ultralytics YOLO11 ile fizyoterapi izleme örneği.

Bu tür bir çözümün dağıtımında Docker kullanmak, kliniklerde veya hastaların uzaktan izlenmesi sırasında farklı ortamlarda sorunsuz çalışmayı sağlayabilir. Docker dağıtımı basitleştirir, ölçeklenebilirliği artırır ve sistem tutarlılığını korur; böylece yapay zeka destekli fizyoterapi araçları daha güvenilir ve erişilebilir hâle gelir.

Önemli çıkarımlar#

Bilgisayarlı görü modelini dağıtmak, modeli geliştirme aşamasından gerçek dünyada kullanıma taşımanın kritik bir adımıdır. Sorunsuz bir dağıtım süreci, eğitilmiş modelin uygulamalarda güvenilir biçimde çalışmasını sağlar. Docker ve kapsayıcılaştırma gibi araçlar, geleneksel zorlukların çoğunu ortadan kaldırarak bu süreci kolaylaştırdı.

Hafif, taşınabilir ve ölçeklenebilir yapılarıyla bu teknolojiler, Ultralytics YOLO11 gibi modellerin geliştirilme ve dağıtılma biçimini değiştiriyor. İşletmeler kapsayıcılaştırma kullanarak zamandan tasarruf edebilir, maliyetleri düşürebilir ve verimliliği artırırken modellerin farklı ortamlarda tutarlı çalışmasını sağlayabilir.

Yapay zeka hakkında daha fazla bilgi edinmek için topluluğumuza katıl ve GitHub depomuza göz at. Sağlık hizmetlerinde bilgisayarlı görü ve üretimde yapay zeka uygulamalarının çeşitli örneklerini oku. Görsel yapay zekayı kullanmaya başlamak için YOLO lisanslama seçeneklerimizi incele.

Yazan

Abirami Vina
Abirami Vina

İçerik Üreticisi · Ultralytics

Bilgisayarlı görü mühendisi olarak kariyerine başlayan Abirami Vina, görü AI’sı ve makine öğrenimi alanlarında sağlam bir temel oluşturdu. Ultralytics’te İçerik Üreticisi, Scribe of AI’da ise Kurucu ve Baş Yazar olarak AI odaklı şirketler için nitelikli teknik içerikler hazırlıyor. AI’yı hem anlaşılır hem de ilgi çekici kılma tutkusuyla çalışan Abirami, en yeni teknolojiler ile gerçek dünyadaki etkileri arasında köprü kuruyor.

Yorumlar

Soru sor, sonuçlarını paylaş veya başka birine yardım et.

Çözümleri keşfet

Sporda bilgisayarlı görü

Sporda bilgisayarlı görü

Ultralytics YOLO'nun oyuncu ve top takibi, performans analitiği, antrenörlük içgörüleri ve sporcu rehabilitasyonuyla spor alanında görsel yapay zekâyı nasıl güçlendirdiğini keşfet.
Daha fazla bilgi edin
Hava görüntüleri için bilgisayarlı görü

Hava görüntüleri için bilgisayarlı görü

İHA ve hava görüntülerini Ultralytics YOLO ile tarım, su ürünleri yetiştiriciliği, koruma çalışmaları ve jeo-uzamsal analiz için gerçek zamanlı içgörülere dönüştür.
Daha fazla bilgi edin
Havacılıkta bilgisayarlı görü

Havacılıkta bilgisayarlı görü

Uçak denetimi, pistteki yabancı madde tespiti, havaalanı yer operasyonları ve kompozit malzeme kusurlarının tespiti için Ultralytics YOLO ile havacılık ve uzay sektöründe bilgisayarlı görü uygula.
Daha fazla bilgi edin
Güvenlikte bilgisayarlı görü

Güvenlikte bilgisayarlı görü

Ultralytics YOLO modelleriyle her sahayı koru. Görsel yapay zekâ; çevre izleme, tehdit tespiti, plaka tanıma ve iş yeri güvenliğini destekler.
Daha fazla bilgi edin
Robotikte bilgisayarlı görü

Robotikte bilgisayarlı görü

Ultralytics YOLO modelleriyle daha akıllı makinelere güç ver. Robotikte görsel yapay zekâ; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü destekler.
Daha fazla bilgi edin
Lojistikte bilgisayarlı görü

Lojistikte bilgisayarlı görü

Ultralytics YOLO modelleriyle lojistiği kolaylaştır. Görüntü yapay zekâsı; paket denetimini, ayrıştırmayı, araç takibini ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Perakendede bilgisayarlı görü

Perakendede bilgisayarlı görü

Ultralytics YOLO modelleriyle perakendeyi yeniden tasarla. Görüntü yapay zekâsı; envanter takibini, raf izlemeyi, kuyruk yönetimini ve daha kapsamlı müşteri analizlerini mümkün kılar.
Daha fazla bilgi edin
Sağlık hizmetlerinde bilgisayarlı görü

Sağlık hizmetlerinde bilgisayarlı görü

Ultralytics YOLO modelleriyle sağlık çözümleri geliştir. Sağlık hizmetlerinde görüntü yapay zekâsı; daha hızlı tıbbi görüntüleme, daha akıllı tanı ve hasta takibini mümkün kılar.
Daha fazla bilgi edin
Üretimde bilgisayarlı görü

Üretimde bilgisayarlı görü

Ultralytics YOLO modelleriyle üretimi optimize et. Görsel yapay zekâ; kalite kontrolünü, kusur tespitini, kişisel koruyucu donanım uyumunu ve montaj hattı otomasyonunu destekler.
Daha fazla bilgi edin
Otomotivde bilgisayarlı görü

Otomotivde bilgisayarlı görü

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görüden yararlan. Görsel yapay zekâ; daha akıllı yollar için yol güvenliğini, sürüş desteğini ve araç otomasyonunu ileri taşır.
Daha fazla bilgi edin
Tarımda bilgisayarlı görü

Tarımda bilgisayarlı görü

Ultralytics YOLO modelleriyle akıllı tarıma görüntü yapay zekâsı kazandır. Daha yüksek ve akıllı verim için mahsul izleme, hayvan takibi ve hassas tarımı destekle.
Daha fazla bilgi edin

Geleceğin yapay zekasını birlikte inşa edelim!

Makine öğreniminin geleceğine yolculuğuna başla