"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
MLflow entegrasyonu ve kaydının, bilgisayarlı görme uygulamaları için üstün izleme sağlayarak Ultralytics YOLO deneylerinizi nasıl geliştirebileceğini keşfedin.
Bir bilgisayarla görü projesini bir bulmaca gibi düşünebilirsiniz. Esasen, bir veri kümesi toplamak, bir modeli eğitmek ve onu dağıtmak gibi bulmacanın parçalarını bir araya getirerek makinelere görsel verileri anlamayı öğretirsiniz. Her şey yerine oturduğunda, görüntüleri ve videoları etkili bir şekilde analiz edebilen ve anlamlandırabilen bir sistem elde edersiniz.
Ancak, tıpkı gerçek bir bulmaca gibi, bir bilgisayarlı görü projesinin her parçası basit değildir. Deney takibi (ayarlarınızın, yapılandırmalarınızın ve verilerinizin kaydını tutmak) ve günlük kaydı (sonuçları ve performans metriklerini yakalamak) gibi görevler çok fazla zaman ve çaba gerektirebilir. Bu adımlar, bilgisayarlı görü modellerinizi geliştirmek ve iyileştirmek için önemli olsa da, bazen bir darboğaz gibi hissedilebilir.
İşte tam bu noktada Ultralytics YOLO modelleri ve MLflow ile entegrasyonu devreye giriyor. Ultralytics YOLO11 gibi modeller, nesne tespiti, örnek segmentasyonu ve görüntü sınıflandırması dahil olmak üzere çok çeşitli bilgisayarla görme görevlerini destekler. Bu yetenekler, heyecan verici bilgisayarla görme uygulamalarının oluşturulmasını sağlar. MLflow entegrasyonu gibi entegrasyonlara güvenme seçeneğine sahip olmak, vizyon mühendislerinin ayrıntılara takılmak yerine modelin kendisine odaklanmasını sağlar.
Özellikle, MLflow entegrasyonu, eğitim süreci boyunca çeşitli metrikleri, parametreleri ve artefaktları kaydederek süreci basitleştirir. Bu makalede, MLflow entegrasyonunun nasıl çalıştığını, faydalarını ve Ultralytics YOLO iş akışlarınızı kolaylaştırmak için nasıl kullanabileceğinizi inceleyeceğiz.
MLflow nedir?
MLflow, tüm makine öğrenimi yaşam döngüsünü kolaylaştırmak ve yönetmek için tasarlanmış (Databricks tarafından geliştirilen) açık kaynaklı bir platformdur. Makine öğrenimi modellerinin geliştirilmesi, dağıtılması ve bakımını kapsar.
MLflow aşağıdaki temel bileşenleri içerir:
Deney takibi: Bu bileşen, her model eğitim çalıştırması için model ayarları, sonuçlar ve dosyalar gibi önemli ayrıntıları kaydetmeye odaklanır. Modelleri karşılaştırmanıza, değişikliklerin performansı nasıl etkilediğini görmenize ve en iyisini bulmanıza yardımcı olur.
Model kayıt defteri: Modelleriniz için bir depolama sistemi gibidir; farklı sürümleri takip edebilir ve bunları test, hazırlık ve üretim gibi aşamalara göre düzenleyebilirsiniz.
Proje paketleme: MLflow, makine öğrenimi projelerinizi (kod, ayarlar ve gerekli araçlar dahil) paketlemeyi kolaylaştırır, böylece ekipler ve ortamlar arasında tutarlı bir şekilde paylaşılabilir ve kullanılabilirler.
Model dağıtımı: MLflow, eğitilmiş modellerinizi iş istasyonları veya AWS ve Azure gibi bulut platformları gibi yerlere hızla dağıtmak için araçlar sağlayarak, onları gerçek dünya kullanımı için hazır hale getirir.
MLflow'un bileşenleri, makine öğrenimi sürecini yönetmeyi daha kolay ve daha verimli hale getirir. Bu entegrasyon sayesinde Ultralytics, YOLO modellerini eğitirken parametreleri, metrikleri ve artefaktları kaydetmek için MLflow'un deney izleme özelliğini kullanmayı mümkün kılar. Farklı YOLO model versiyonlarını izlemeyi ve karşılaştırmayı kolaylaştırır.
MLflow entegrasyonu eğitimi kolaylaştırır
Artık MLflow'un ne olduğunu ele aldığımıza göre, MLflow entegrasyonunun ayrıntılarına ve sunduğu özelliklere dalalım.
MLflow entegrasyonu, bilgisayarlı görü denemelerinizin önemli yönlerini otomatik olarak izleyerek ve günlüğe kaydederek eğitim sürecini daha verimli ve düzenli hale getirmek için oluşturulmuştur. Üç ana günlük kaydı türünü kolaylaştırır: metrikler, parametreler ve yapıtlar.
İşte her bir günlük kaydı türüne daha yakından bir bakış:
Metrik kaydı: Metrikler, modelinizin eğitim sırasındaki performansını ölçen nicel değerlerdir. Örneğin, doğruluk, kesinlik, geri çağırma veya kayıp gibi metrikler, her bir epoch'un (veri kümenizdeki tam bir geçiş) sonunda izlenir.
Parametre günlüğü: Parametreler, model eğitimi başlamadan önce tanımladığınız, öğrenme oranı, yığın boyutu (bir eğitim adımında işlenen örnek sayısı) ve epok sayısı gibi ayarlardır. Bu parametreler, modelinizin davranışını ve performansını önemli ölçüde etkiler.
Eser günlük kaydı: Eserler, eğitim sırasında oluşturulan çıktılar veya dosyalardır. Bu, model ağırlıkları (modelinizin eğitim sırasında öğrendiği sayısal değerler), yapılandırma dosyaları (eğitim ayarlarını depolayan) ve diğer ilgili veriler gibi temel dosyaları içerir.
Şekil 2. MLflow entegrasyonunun temel günlük kaydı özellikleri. Yazarın görseli.
MLflow entegrasyonu nasıl çalışır
MLflow entegrasyonunu etkinleştirme konusunda adım adım talimatlar için Ultralytics belgelerini inceleyebilirsiniz. Kurulduktan sonra, entegrasyon yukarıda tartışıldığı gibi eğitim deneylerinizin temel ayrıntılarını otomatik olarak izler ve kaydeder. Bu, manuel izleme ihtiyacını ortadan kaldırır ve modellerinizi iyileştirmeye odaklanmanıza yardımcı olur.
MLflow entegrasyonu ile tüm eğitim çalıştırmalarınız tek bir yerde saklanır, bu da sonuçları karşılaştırmayı ve farklı yapılandırmaları değerlendirmeyi kolaylaştırır. Kaydedilen sonuçları karşılaştırarak, en iyi performansı gösteren yapılandırmaları belirleyebilir ve bu bilgileri modellerinizi geliştirmek için kullanabilirsiniz. Bu, iş akışınızın daha verimli, iyi belgelenmiş ve yeniden üretilebilir olmasını sağlar.
Özellikle, her eğitim oturumu, birden çok çalıştırma için bir kapsayıcı görevi gören bir deney olarak düzenlenir. Bir deney içinde, ilişkili tüm çalıştırmaları görüntüleyebilir, performanslarını yan yana karşılaştırabilir ve farklı konfigürasyonlardaki eğilimleri analiz edebilirsiniz.
Örneğin, Ultralytics YOLOv8 ile çeşitli öğrenme oranlarını veya toplu boyutlarını test ediyorsanız, ilgili tüm çalıştırmalar, aşağıda gösterildiği gibi kolay karşılaştırma ve analiz için aynı deney altında gruplandırılır.
Şekil 3. MLflow entegrasyonunu kullanarak deneyleri görüntüleyebilirsiniz.
Bu arada, bireysel çalıştırma düzeyinde, MLflow belirli eğitim oturumu hakkında ayrıntılı bilgiler sağlar. Epoch'lar boyunca doğruluk, kayıp ve hassasiyet gibi metrikleri görüntüleyebilir, kullanılan eğitim parametrelerini (örneğin, toplu iş boyutu ve öğrenme oranı) kontrol edebilir ve model ağırlıkları ve yapılandırma dosyaları gibi oluşturulan yapıtlarına erişebilirsiniz. Bu ayrıntılar düzenli bir biçimde saklanır ve herhangi bir çalıştırmayı yeniden ziyaret etmeyi veya yeniden oluşturmayı kolaylaştırır.
MLflow entegrasyonunu seçmek: neden öne çıkıyor
Ultralytics belgelerini incelerken ve mevcut entegrasyonları keşfederken, kendinize şunu sorabilirsiniz: MLflow entegrasyonunu diğerlerinden ayıran nedir ve iş akışım için neden onu seçmeliyim?
Metrikleri izlemek ve sonuçları görselleştirmek için araçlar sağlayan TensorBoard gibi entegrasyonlarla, MLflow entegrasyonunu öne çıkaran benzersiz nitelikleri anlamak önemlidir.
İşte MLflow'un YOLO projeleriniz için neden ideal bir seçim olabileceği:
Kullanıcı dostu arayüz: MLflow panosu, deneyleri görüntülemeyi, çalıştırmaları karşılaştırmayı ve sonuçları analiz etmeyi kolaylaştırarak, en iyi performansı gösteren yapılandırmaları hızla belirlemenize yardımcı olur.
Özel metrik kaydı: Görüntü mühendisleri, standart olanlara ek olarak özel metrikler de kaydedebilir, bu da projelerinin ihtiyaçlarına özel daha derinlemesine analizler sağlar.
Çok dilli iş akışları için destek: MLflow, Python, R ve Java dahil olmak üzere birden çok programlama diliyle uyumludur ve çeşitli makine öğrenimi ardışık düzenlerine entegrasyonu kolaylaştırır.
YOLO11'in ve MLflow entegrasyonunun pratik uygulamaları
MLflow entegrasyonunu ne zaman kullanabileceğinizi daha kapsamlı bir şekilde anlamak için, YOLO11'i X-ray veya BT taraması görüntülerinde tümörleri tespit etmek için eğitmeniz gereken bir sağlık hizmetlerinde yapay zeka uygulamasını ele alalım.
Böyle bir senaryoda, veri kümesi etiketlenmiş tıbbi görüntülerden oluşacaktır. Optimal doğruluğu elde etmek için öğrenme oranlarını, yığın boyutlarını ve görüntü ön işleme tekniklerini ayarlamak gibi çeşitli konfigürasyonlarla denemeniz gerekecektir. Sağlık hizmetlerinde riskler yüksek ve hassasiyet ile güvenilirlik kritik öneme sahip olduğundan, her deneyi manuel olarak izlemek hızla yönetilemez hale gelebilir.
Şekil 4. Ultralytics YOLO11 kullanarak tümörleri tespit etme.
MLflow entegrasyonu, her denemenin parametrelerini, metriklerini ve yapıtlarını otomatik olarak günlüğe kaydederek bu zorluğun üstesinden gelir. Örneğin, öğrenme oranını değiştirirseniz veya yeni bir artırma stratejisi uygularsanız, MLflow bu değişiklikleri performans metrikleriyle birlikte kaydeder. Ayrıca, MLflow eğitilmiş model ağırlıklarını ve yapılandırmalarını kaydederek başarılı modellerin kolayca yeniden üretilmesini ve dağıtılmasını sağlar.
Bu, MLflow entegrasyonunun Vision AI uygulamalarında deney yönetimini nasıl geliştirdiğine dair sadece bir örnektir. Aynı özellikler, aşağıdakiler dahil diğer bilgisayarlı görü uygulamaları için de geçerlidir:
Otonom sürüş: YOLO11, otonom sürüş sistemlerinin güvenliğini ve verimliliğini artırmak için yayaları, araçları ve trafik işaretlerini gerçek zamanlı olarak tespit etmek ve sınıflandırmak için kullanılabilir.
Perakende analitiği: Nesne algılama modelleri, video akışları aracılığıyla mağaza içi etkinliği analiz ederek müşteri davranışını izleyebilir, ürün yerleşimlerini takip edebilir ve envanteri optimize edebilir.
Güvenlik ve gözetim: Modeller, güvenliği artırmak için hassas bölgelerdeki anormallikleri tespit etmek veya gerçek zamanlı aktiviteleri izlemek üzere eğitilebilir.
MLflow entegrasyonunun faydaları
YOLO modelleriyle MLflow entegrasyonu, makine öğrenimi denemelerini yönetmeyi daha kolay ve verimli hale getirir. Temel görevleri otomatikleştirerek ve her şeyi düzenli tutarak, modellerinizi oluşturmaya ve geliştirmeye odaklanmanızı sağlar. İşte temel faydalarına bir bakış:
Büyük projeler için ölçekler: Platform, birden çok deneyi ve modeli verimli bir şekilde yöneterek daha büyük ekipler ve karmaşık iş akışları için uygun hale getirir.
Ayrıntılı deney geçmişi: Platform, geçmiş deneylerinizi tekrar gözden geçirmenize, önceki yapılandırmaları analiz etmenize ve önceki sonuçlardan ders çıkarmanıza olanak tanıyan eksiksiz bir deney geçmişi tutar.
Devre dışı bırakma ve sıfırlama seçenekleri: MLflow günlüğüne kaydetme, ihtiyaç duyulmadığında kolayca devre dışı bırakılabilir ve ayarlar varsayılanlara sıfırlanabilir, bu da değişen iş akışı gereksinimlerine uyum sağlama esnekliği sunar.
Önemli çıkarımlar
MLflow entegrasyonu, Ultralytics YOLO denemelerini yönetmeyi ve optimize etmeyi daha kolay ve verimli hale getirir. Parametreler, metrikler ve yapıtlar gibi temel ayrıntıları otomatik olarak izleyerek süreci basitleştirir ve manuel deneme yönetimi zahmetini ortadan kaldırır.
İster tümör tespiti gibi sağlık çözümleri üzerinde çalışıyor, ister otonom sürüş sistemlerini geliştiriyor veya perakende analizlerini iyileştiriyor olun, bu entegrasyon her şeyin düzenli ve yeniden üretilebilir kalmasına yardımcı olur. Sezgisel arayüzü ve esnekliği ile MLflow, geliştiricilerin daha iyi modeller oluşturmaya ve Vision AI uygulamalarında yeniliği yönlendirmeye odaklanmasını sağlar.