"Tüm Çerezleri Kabul Et" seçeneğine tıklayarak, sitede gezinmeyi geliştirmek, site kullanımını analiz etmek ve pazarlama çabalarımıza yardımcı olmak için cihazınızda çerezlerin saklanmasını kabul edersiniz. Daha fazla bilgi
Çerez Ayarları
"Tüm Çerezleri Kabul Et" seçeneğine tıklayarak, sitede gezinmeyi geliştirmek, site kullanımını analiz etmek ve pazarlama çabalarımıza yardımcı olmak için cihazınızda çerezlerin saklanmasını kabul edersiniz. Daha fazla bilgi
Ultralytics YOLO Modelleri ile nasıl eğitim yapacağınızı, doğrulayacağınızı, tahmin edeceğinizi, dışa aktaracağınızı ve kıyaslama yapacağınızı öğrenin!
Ultralytics dünyasına dalalım ve farklı YOLO modelleri için mevcut farklı modları keşfedelim. İster özel nesne algılama modelleri eğitiyor olun, ister segmentasyon üzerinde çalışıyor olun, bu modları anlamak çok önemli bir adımdır. Hemen başlayalım!
Ultralytics belgelerinde, modelleriniz için kullanabileceğiniz çeşitli modlar bulacaksınız; bunlar eğitim, doğrulama, tahmin, dışa aktarma, kıyaslama veya izleme olabilir. Bu modların her biri benzersiz bir amaca hizmet eder ve modelinizin performansını ve dağıtımını optimize etmenize yardımcı olur.
Eğitim modu
İlk olarak eğitim moduna bakalım. Modelinizi oluşturduğunuz ve geliştirdiğiniz yer burasıdır. Belgelerde ayrıntılı talimatlar ve video kılavuzları bulabilirsiniz, bu da özel modellerinizi eğitmeye başlamayı kolaylaştırır.
Model eğitimi, bir modele yeni bir veri kümesi sağlamayı ve çeşitli kalıpları öğrenmesini sağlamayı içerir. Eğitim tamamlandıktan sonra, model üzerinde eğitildiği yeni nesneleri gerçek zamanlı olarak algılamak için kullanılabilir. Eğitim sürecine başlamadan önce, veri kümenizi YOLO formatında etiketlemek önemlidir.
Doğrulama modu
Şimdi de doğrulama moduna geçelim. Doğrulama, hiperparametreleri ayarlamak ve modelinizin iyi performans göstermesini sağlamak için çok önemlidir. Ultralytics, otomatik ayarlar, çoklu metrik desteği ve Python API'si ile uyumluluk dahil olmak üzere çeşitli doğrulama seçenekleri sunar. Doğrulamayı doğrudan komut satırı arayüzü (CLI) üzerinden aşağıdaki komutla bile çalıştırabilirsiniz.
Neden doğrulama yapmalısınız?
Doğrulama şunlar için kritik öneme sahiptir:
Hassasiyet: Modelinizin nesneleri doğru bir şekilde tespit etmesini sağlama.
Kolaylık: Doğrulama sürecini kolaylaştırma.
Esneklik: Birden fazla doğrulama yöntemi sunma.
Hiperparametre Ayarlama: Modelinizi daha iyi performans için optimize etme.
Ultralytics ayrıca Python betiklerinize kopyalayıp yapıştırabileceğiniz kullanıcı örnekleri de sunar. Bu örnekler, görüntü boyutu, toplu iş boyutu, cihaz (CPU veya GPU) ve kesişim üzerinden birleşim (IoU) gibi parametreler içerir.
Tahmin modu
Modeliniz eğitildikten ve doğrulandıktan sonra, tahminler yapma zamanı gelir. Tahmin modu, yeni veriler üzerinde çıkarım çalıştırmanıza ve modelinizi çalışırken görmenize olanak tanır. Bu mod, modelinizin gerçek dünya verileri üzerindeki performansını test etmek için mükemmeldir.
Aşağıdaki python kod parçacığı ile resimleriniz üzerinde tahminler çalıştırabileceksiniz!
Dışa aktarma modu
Doğrulama ve tahmin işlemlerinden sonra, modelinizi dağıtmak isteyebilirsiniz. Dışa aktarma modu, modelinizi ONNX veya TensorRT gibi çeşitli formatlara dönüştürmenizi sağlayarak farklı platformlarda dağıtmayı kolaylaştırır.
Benchmark modu
Son olarak, benchmark modumuz var. Benchmark, modelinizin performansını çeşitli senaryolarda değerlendirmek için önemlidir. Bu mod, kaynak tahsisi, optimizasyon ve maliyet verimliliği hakkında bilinçli kararlar vermenize yardımcı olur.
Benchmark nasıl yapılır
Bir benchmark çalıştırmak için, dokümantasyonda sağlanan kullanıcı örneklerini kullanabilirsiniz. Bu örnekler, ONNX ve TensorRT dahil olmak üzere temel metrikleri ve dışa aktarma formatlarını kapsar. Ayrıca, farklı ayarların performansı nasıl etkilediğini görmek için tamsayı nicelemesi (INT8) veya kayan nokta nicelemesi (FP16) gibi parametreleri de belirtebilirsiniz.
Gerçek dünya benchmark örneği
Gerçek dünya benchmark örneğine bakalım. PyTorch modelimizin benchmark'ını yaptığımızda, bir RTX 3070 GPU'da 68 milisaniyelik bir çıkarım hızı fark ediyoruz. TorchScript'e aktardıktan sonra, çıkarım hızı 4 milisaniyeye düşerek önemli bir iyileşme gösteriyor.
ONNX modelleri için 21 milisaniyelik bir çıkarım hızına ulaşıyoruz. Bu modelleri bir CPU'da (bir Intel i9 13. nesil) test ederken, farklı sonuçlar görüyoruz. TorchScript 115 milisaniyede çalışırken, ONNX 84 milisaniyede daha iyi performans gösteriyor. Son olarak, Intel donanımı için optimize edilmiş OpenVINO, 23 milisaniyelik inanılmaz bir hıza ulaşıyor.
Şekil 1. Nicolai Nielsen, Ultralytics YOLO Modelleri ile benchmark'ın nasıl çalıştırılacağını gösteriyor.
Benchmark'ın önemi
Benchmark, farklı donanım ve dışa aktarma formatlarının modelinizin performansını nasıl etkileyebileceğini gösterir. Özellikle modellerinizi özel donanım veya uç cihazlarda dağıtmayı planlıyorsanız, modellerinizin benchmark'ını yapmanız çok önemlidir. Bu işlem, modelinizin hedef ortam için optimize edilmesini sağlayarak mümkün olan en iyi performansı sağlar.
Sonuç
Özetle, Ultralytics dokümantasyonundaki modlar, YOLO modellerinizi eğitmek, doğrulamak, tahmin etmek, dışa aktarmak ve benchmark'ını yapmak için güçlü araçlardır. Her mod, modelinizi optimize etmede ve dağıtıma hazırlamada hayati bir rol oynar.
Topluluğumuzu keşfetmeyi ve katılmayı unutmayın ve projelerinizde sağlanan kod parçacıklarını deneyin. Bu araçlarla, yüksek performanslı modeller oluşturabilir ve herhangi bir ortamda verimli bir şekilde çalıştıklarından emin olabilirsiniz.