Federated learning, otonom araçların (AV) gelişiminde devrim niteliğinde bir yaklaşım sunmaktadır. Özellikle farklı veri kaynaklarının ve koşullarının önemli olduğu ülkeler arası senaryolarda bu teknoloji ön plandadır. Geleneksel makine öğrenimi yöntemlerinin merkezi veri depolama gereksiniminin aksine, federated learning, AV’lerin yerel olarak topladıkları verileri kullanarak işbirliği içinde algoritmalarını eğitmelerine olanak tanır. Veri merkezi olmayan bir şekilde saklanırken, bu yaklaşım, hassas verilerin ülke dışına çıkmasını engelleyerek gizliliği ve güvenliği artırır.
Federated learning, aynı zamanda düzenleyici uyumluluk ve veri hareketliliği kısıtlamalarını da ele alır; bunlar global ölçekte önemli birer kaygıdır. Farklı ülkelerin veri gizliliği ve sınır ötesi veri transferleri konusunda çeşitli yönetmelikleri bulunmaktadır. Bu da merkezi veri depolama ve işlemeyi zorlaştırmaktadır. Yerel veri kullanımına izin veren bu sistem, veri hareketliliğini en aza indirerek, AV’lerin bu yasal gerekliliklere uymasını sağlarken kolektif bir öğrenme sürecinden de faydalanmalarını mümkün kılar.
Otonom Araçlar İçin Federated Learning İhtiyaçları
Otonom araçlar farklı arazilerde, iklimlerde ve trafik kurallarında seyrederken, federated learning onların uyum sağlamasını ve performanslarını optimize etmelerini sağlar. Bu yazıda, ülkeler arası federated learning eğitimi sağlamak amacıyla geliştirdiğimiz AV federated learning platformunu tanıtacağız. NVIDIA FLARE, açık kaynaklı bir federated learning çerçevesi kullanarak, birden fazla ülkeden elde edilen verilerle ondan fazla AV modelini eğittiğimiz global bir model oluşturduk. Kullanım senaryolarımızı, mevcut makine öğrenimi eğitim platformlarıyla entegrasyonumuzu ve karşılaştığımız zorlukları ayrıntılı bir şekilde açıklayacağız.
Geliştirme ve Kullanım Senaryoları
NVIDIA AV ekibi global ölçekte, çeşitli bölgelerden veri toplayarak otonom araç projelerini geliştirmektedir. Modellerimizi eğitmek için, nesne algılama, park etme ve işaret tespiti gibi önemli görevleri yerine getirebilmek amacıyla birçok ülkenin verilerini dikkate almak zorundayız.
Her ülke için ayrı AV modelleri geliştirmek, onay süreçlerini çoğaltır ve bu da maliyetleri ve gecikmeleri artırır. Olası onlarca farklı model yerine, performansları bireysel ülkelere özgü olan modellerle karşılaştırılabilecek tek bir küresel model oluşturmak daha verimli bir yaklaşımdır.
Farklı ülkelerden verileri kullanarak AV’ler için global bir model eğitmek, aynı zamanda nadir kullanım senaryolarını ele almak için büyük bir fırsat sunmaktadır. Küresel olarak eğitilen bir model, genel performans değerlerinde her zaman dramatik iyileşmelere yol açmayabilir; ancak nadir durumları etkili bir şekilde ele alabilme yeteneğini artırabilmektedir.
AV Federated Learning Dağıtım Yapısı
Dağıtımımız, iki federated learning istemcisi ve bir merkezi sunucudan oluşmaktadır. İstemciler, farklı makine öğrenimi eğitim sistemlerinde çalışırken, FL sunucumuz Japonya’daki AWS üzerinde barındırılmaktadır. Ayrıca, test ve devam eden geliştirmeler için Hong Kong’da bir geliştirme FL sunucu örneği de bulundurmaktayız.
Bu yapının genel mimarisi Şekil 1’de gösterilmektedir.
AV Federated Learning Platformu
Otonom araç federated learning platformumuz birçok alt sistemden oluşmaktadır:
- Mevcut AV makine öğrenimi eğitim sistemi (MegLev: NDAS) ile entegrasyon
- İş orchestration servisi
- NVIDIA FLARE ile federated learning motoru
Mevcut AV Eğitim Platformu ile Entegrasyon
Sistem kurulumundaki en büyük zorluklardan biri, MAGLEV adlı yerel makine öğrenimi altyapısı ile NVFLARE’ı etkin bir şekilde entegre edebilmektedir. NDAS, federated learning (FL) sisteminden bağımsız olarak çalışırken, NVIDIA AV bölümündeki birçok ekip tarafından kullanılmaktadır. Bu nedenle, tüm sistemi FL çerçevesine geçirmek pratik bir çözüm değildir.
Bu sorunu aşmak için, NVFLARE’in üçüncü taraf entegrasyon özelliklerinden yararlandık. Yerel eğitim MAGLEV çerçevesinde devam ederken, model parametrelerinin NVIDIA FLARE istemcisine aktarılmasına olanak tanıdık. Model transfer sürecini, hem dosya tabanlı parametre transferi (FilePipe) hem de TCP tabanlı parametre transferi (CellPipe) yöntemlerini kullanarak optimize ettik.
AV Federated Learning Orkestrasyon Servisi
Federated learning işlerini oluşturmayı ve izlemeyi kolaylaştırmak amacıyla, ön uç ve arka uç hizmetlerden oluşan bir suite geliştirdik. Bu sistem, kullanıcı deneyimini basitleştirerek işlerin hızlı bir biçimde başlatılmasını ve ilerlemenin sorunsuz bir şekilde takibini sağlamaktadır.
Sistemimiz, bir yıldan fazla bir süredir stabil bir üretim sürecindedir ve performansın izlenmesi için araçlar bulunmaktadır. Ayda eğitim modelinin istatistiklerini gösteren Şekil 4, model eğitiminin kapsamı ve tutarlılığını ortaya koymaktadır.
ALT: Aylık eğitim modeli istatistiklerinin bir ekran görüntüsü.
Video 1, iş eğitim sürecini göstermektedir. AV-FL sisteminin web panelini ve birkaç tıklama ile bir eğitim iş akışını nasıl başlatabileceğinizi sergilemektedir.
Federated Learning İş Akışları
AV sensör verileriyle çalışırken, iş akışlarımız sağlık veya mobil cihazlarda kullanılan federated learning’den önemli ölçüde farklıdır:
- Sağlık ve kenar cihazları: Her biri sınırlı veri miktarına sahip birçok istemci.
- AV ülkeler arası eğitim: Her biri büyük veri hacmine sahip daha az istemci.
Bu farklar nedeniyle model eğitimi için çeşitli iş akışları kullanabilmekteyiz. Geçmiş deneyimlerimize dayanarak, başlangıç yaklaşımımız olarak yuvarlak robin iş akışı veya döngüsel ağırlık transferi yöntemini tercih ettik. Gradient çakışmalarını önlemek amacıyla, sunucu sadece bir istemciden gelen gradient güncellemelerini toplar.
Ülkeler Arası Eğitimde Zorluklar
Küresel AI modellerinin geliştirilmesi ve dağıtımı, verimli ülkeler arası eğitim için önemli zorluklarla karşı karşıyadır:
- IT kurulumu
- Ağ bant genişliği
- Ağ kesintileri
IT Kurulumu
Eğitim verileri dışarıdan yönetilen bir özel bulut veri merkezinde bulunduğundan, her yapılandırma değişikliği birden fazla onay gerektirmekte ve NVFLARE için gerekli ayarlamaları yapmak karmaşık bir süreç haline gelmektedir. Bu sorunu aşmak amacıyla, FL sunucumuzu AWS genel bulutunda barındırmayı tercih ettik. Özel buluttaki FL istemcisi, topluluk bulutuna bağlanarak genel AWS bulutuna erişmelidir. Gerekli portların yönetimi için HTTPS port 443 ve bir ters proxy kullanarak bağlantıyı yönettik.
Ağ Bant Genişliği
Eğitim, çok sayıda eş zamanlı iş ve aktarılan modellerin büyük boyutları nedeniyle yavaşlayabilir. Bant genişliğini arttırmanın yanı sıra, bant genişliği kullanımını azaltma fırsatlarını da araştırıyoruz. Model boyutlarının şişirilmesi gibi bir sorun tespit ettik; örneğin, başlangıçta 200 MB boyutundaki bir PyTorch modeli, sunucu transferi sonrasında büyük ölçüde artmıştı. Bu durum, modelin NumPy’ye dönüştürülüp tekrar PyTorch modeline çevrilmesinden kaynaklanıyordu ve bu süreçte PyTorch’un ağırlık sıkıştırması kayboluyordu. Sorunu çözmek adına, gereksiz dönüşümleri ortadan kaldıracak şekilde algoritmayı değiştirdik.
Ağ Kesintileri
Büyük veri hacimlerinden dolayı eğitim süreçleri günler ya da haftalar sürebilmektedir. Belirli istemci eğitim işlerinin herhangi bir belirti olmaksızın sonlandığına dair sorunlarla karşılaştık. Bu beklenmedik durumlar, sunucunun geri dönüşlerini beklerken belirsizliklere yol açıyordu. NVFLARE ekibiyle yaptığımız log analizleri sonucunda, bu başarısızlıkların 5 ila 10 dakikayı bulan uzun süreli ağ kesintilerinden kaynaklandığını keşfettik. NVFLARE ekibi, geçici ağ kesintilerinden kurtulma ve eğitimin devamını sağlama mekanizması geliştirdi. Bu düzeltme sonrasında, açıklanamayan iş hatalarıyla karşılaşmadık.
Proje Durumu
AV federated learning platformunu başarıyla uygulamış bulunuyoruz. Üzerinde çalıştığımız sürüm 2.0, bir yıldan uzun bir süredir üretimde ve şimdiye kadar bir düzine AV modeli eğitilip yayımlanmıştır. Bu modellerin çoğu, yerel olarak eğitilenlerin metrikleriyle karşılaştırıldığında eşit veya daha iyi performans göstermektedir.
Bu platformu kullanan veri bilimcisi sayısı son bir yılda 2’den yaklaşık 30’a kadar artmıştır. Örneğin, ABD’deki yerel model yalnızca genel bir işaret tahmini yapabilirken, federated learning modeli hem genel işareti hem de bireysel etiketleri tanıyabilmektedir: 80 ve 12 (Şekil 6).
Bu platform kullanılarak eğitilen bazı modeller şunlardır:
- DoNET: Araçların durumlarını tespit eden bir model. Örneğin, lamba durumu (lambanın yanıp yanmadığı) ve kapı durumu (kapının açık mı kapalı mı olduğu).
- WaitNet: Statik nesneleri tespit etmek üzere tasarlanmış bir model; trafik ışıkları, trafik işaretleri, yol işaretleri, dur çizgileri ve yay geçitleri gibi unsurları içerir.
- PathNet/RoadNet: AV’nin alacağı yolu belirleyen bir modeldir.
- RadarNet: Radar sensör verilerini kullanarak aracın çevresindeki engelleri tahmin eden bir model.
- PredictionNet: Nesne takibi ve yolculuk tahmini yapan bir modeldir.
- EGM: Otoparklardaki engelleri, yükseklik sınırlama direkleri ve sütunlar gibi alanları tespit eden çoklu kamera girişli bir modeldir.
Özet
Federated learning, veri taşımadan model eğitimi yapma imkanı sunan merkeziyetsiz bir AI teknolojisidir. Bu yaklaşım, yalnızca düzenleyici uyumluluğu sağlamakla kalmaz, aynı zamanda maliyetlerin de en aza indirilmesine yardımcı olur.
Bu yazıda, otonom araçlar için tasarlanmış AV-NVIDIA FLARE sistemini, çerçeve ve çözümlerimizi tanıttık. Bu stratejilerin diğer endüstrilerde de etkili bir şekilde uygulanabileceğini vurgulamak önemlidir.
Federated learning hakkında daha fazla bilgi için NVIDIA FLARE Günü etkinliklerini takip edebilirsiniz. Burada, sağlık ve finans gibi birçok sektörden konuşmacılar bulunmaktadır.