paint-brush
Yapay Zekanın Nesne Depolaması Üzerine İnşa Edilmesinin Gerçek Nedenleriile@minio
Yeni tarih

Yapay Zekanın Nesne Depolaması Üzerine İnşa Edilmesinin Gerçek Nedenleri

ile MinIO6m2024/08/29
Read on Terminal Reader

Çok uzun; Okumak

MinIO Nesne Deposu, büyük yapılandırılmamış veri gölleri için fiili standarttır. MinIO, tüm modern makine öğrenimi çerçeveleriyle uyumludur. %100 S3 API uyumludur, böylece şirket içi veya cihaz üzerindeki nesne deponuza karşı ML iş yükleri gerçekleştirebilirsiniz.
featured image - Yapay Zekanın Nesne Depolaması Üzerine İnşa Edilmesinin Gerçek Nedenleri
MinIO HackerNoon profile picture

1. Yapılandırılmamış Verilerde Sınır Yok

Tipik bir (tek düğümlü) AI modeli eğitim kurulumu (PyTorch'un nesne deposundan GPU verilerini beslemesi)


Makine öğreniminin mevcut paradigmasında, performans ve yetenek, veri kümesi boyutu ve model boyutunun gerçek bir temsilcisi olan hesaplama ile ölçeklenir ( Sinir Dili Modelleri için Ölçekleme Yasaları , Kaplan vd.). Geçtiğimiz birkaç yıl içinde bu, makine öğrenimi ve veri altyapısının nasıl oluşturulduğu konusunda köklü değişikliklere yol açtı; yani: depolama ve hesaplamanın ayrılması, yapılandırılmamış verilerle dolu devasa bulut tabanlı veri göllerinin oluşturulması ve matris çarpımını gerçekten hızlı bir şekilde yapabilen özel donanımlar.


Bir eğitim veri kümesi veya hatta bir veri kümesinin tek bir parçası, sistem belleğinde ve/veya yerel depolamada bulunandan daha fazla alan gerektirdiğinde, depolama alanını hesaplamadan ayırmanın önemi açıkça ortaya çıkar. MinIO Nesne Deposunda bulunan veriler üzerinde eğitim yaparken, eğitim verinizin boyutu için hiçbir sınır yoktur. MinIO'nun basitliğe ve G/Ç verimine odaklanması nedeniyle, eğitim hızı ve GPU kullanımı için tek sınırlayıcı faktör ağ olur.


MinIO, herhangi bir nesne deposunun en iyi performansını sağlamasının yanı sıra tüm modern makine öğrenimi çerçeveleriyle uyumludur. MinIO Nesne Deposu ayrıca %100 S3 API uyumludur, böylece TorchData gibi bilindik veri kümesi yardımcı programlarını kullanarak şirket içi veya cihaz içi nesne deponuza karşı ML iş yükleri gerçekleştirebilirsiniz. S3 Veri Borusu Tüketen uygulamanız tarafından dosya sistemi benzeri yeteneklere ihtiyaç duyulması durumunda, MinIO'yu nesne deposu dosya arayüzleriyle bile kullanabilirsiniz. Bağlantı noktası S3 veya S3FS Gelecekteki bir blog yazısında, model eğitimi için 'sınırsız' eğitim verilerini ve yüksek GPU kullanımını etkinleştirmek amacıyla bazı yaygın PyTorch ve FairSeq arayüzlerinin (sırasıyla Dataset ve Task gibi) özel uygulamalarında MinIO Python SDK'sını kullanacağız.


Performans ve modern ML yığınıyla uyumluluğun ötesinde, nesne depolamasının tasarım seçimleri, yani (1) düz bir ad alanı, (2) tüm nesnenin (ve meta verilerinin) en düşük mantıksal varlık olarak kapsüllenmesi ve (3) basit HTTP fiilleri API'leri, nesne depolamasının büyük yapılandırılmamış veri gölleri için fiili standart haline gelmesine yol açan şeylerdir. Makine öğreniminin yakın tarihine bir bakış, eğitim verilerinin (ve bir anlamda model mimarilerinin kendilerinin) daha az yapılandırılmış ve daha genel hale geldiğini göstermektedir. Eskiden modeller ağırlıklı olarak tablo verileri üzerinde eğitilirdi. Günümüzde, düz metin paragraflarından saatlerce videoya kadar çok daha geniş bir aralık vardır. Model mimarileri ve ML uygulamaları geliştikçe, nesne deposunun durumsuz, şemasız ve sonuç olarak ölçeklenebilir doğası daha da kritik hale gelir.

2. Modeller ve Veri Kümeleri için Zengin Meta Veriler

Meta veriler, veri kümelerinin etiketlenmesini ve bir model kontrol noktasının istatistiklerinin tanımlanmasını sağlar.


MinIO Nesne Deposunun tasarım tercihleri nedeniyle, her nesne performanstan ödün vermeden veya özel bir meta veri sunucusunun kullanımını gerektirmeden zengin, şemasız meta veri içerebilir. Nesnelerinize ne tür meta veri eklemek istediğiniz konusunda tek sınır hayal gücünüzdür. Ancak, ML ile ilgili nesneler için özellikle yararlı olabilecek bazı fikirler şunlardır:

Model kontrol noktaları için : kayıp fonksiyonu değeri, eğitim için geçen süre, eğitim için kullanılan veri kümesi.


Veri kümeleri için: eşleştirilmiş dizin dosyalarının adı (varsa), veri kümesi kategorisi (eğitim, doğrulama, test), veri kümesinin biçimi hakkında bilgi.

Bu tür son derece açıklayıcı meta veriler, milyarlarca nesne arasında bile bu meta verileri etkili bir şekilde dizinleme ve sorgulama yeteneğiyle birleştirildiğinde özellikle güçlü olabilir; bu da MinIO Kurumsal Kataloğu Örneğin, "test edilmiş" olarak etiketlenen model kontrol noktalarını veya belirli bir veri kümesi üzerinde eğitilmiş kontrol noktalarını sorgulayabilirsiniz.

3. Modeller ve Veri Setleri Mevcuttur, Denetlenebilir ve Sürümlendirilebilir


Makine öğrenimi modelleri ve veri kümeleri giderek daha kritik varlıklar haline geldikçe, bu varlıkları hata toleranslı, denetlenebilir ve sürümlenebilir bir şekilde depolamak ve yönetmek de aynı derecede önemli hale geldi.


Veri kümeleri ve bunlar üzerinde eğitilen modeller, zaman, mühendislik çabası ve paranın zor kazanılmış ürünleri olan değerli varlıklardır. Buna göre, uygulamaların erişimini engellemeyecek şekilde korunmalıdırlar. MinIO'nun bitrot denetimi ve silme kodlaması gibi satır içi işlemleri, çoklu site, aktif-aktif çoğaltma gibi özelliklerle birlikte bu nesnelerin ölçekte dayanıklılığını garanti eder.


Özellikle üretken AI ile, hangi veri kümesinin hangi sürümünün, hangi modelin eğitilmesinde kullanıldığını bilmek, halüsinasyonları ve diğer model yanlış davranışlarını ayıklarken faydalıdır. Model kontrol noktaları düzgün bir şekilde sürümlendirilirse, kontrol noktasının daha önce sunulan bir sürümüne hızlı bir geri dönüşe güvenmek daha kolay hale gelir. MinIO Nesne Deposu ile, bu avantajları nesneleriniz için hemen kullanıma hazır bir şekilde elde edersiniz.

4. Sahip Olunan Hizmet Altyapısı

Çıkarım için tipik model hizmet desenleri. Solda, üçüncü taraf model deposuna güvenen ve sağda, kendi kontrol noktası deponuza güvenen.


MinIO Nesne Deposu, temelde sizin veya kuruluşunuzun kontrol ettiği bir nesne deposudur. Kullanım durumu prototipleme, güvenlik, düzenleyici veya ekonomik amaçlar , kontrol ortak noktadır. Buna göre, eğitilmiş model kontrol noktaları nesne deposunda bulunuyorsa, çıkarım veya tüketim için modellere hizmet etme görevi üzerinde size daha fazla kontrol sağlar.


Önceki bir yazıda , model dosyalarını nesne deposunda depolamanın faydalarını ve PyTorch'tan TorchServe çıkarım çerçevesiyle bunları doğrudan nasıl sunacağımızı inceledik. Ancak, bu tamamen model ve çerçeveden bağımsız bir stratejidir.


Ancak bu neden önemli? Üçüncü taraf model depolarındaki ağ gecikmesi veya kesintileri, modellerin çıkarım için hizmet almasını yavaşlatabilir veya tamamen kullanılamaz hale getirebilir. Dahası, çıkarım sunucularının ölçeklendiği ve model kontrol noktalarını rutin olarak çekmesi gereken bir üretim ortamında, bu sorun daha da kötüleşebilir. En güvenli ve/veya kritik koşullarda, mümkün olduğunca internet üzerinden üçüncü taraf bağımlılığından kaçınmak en iyisidir. MinIO'yu özel veya hibrit bulut nesne deposu olarak kullanarak, bu sorunlardan tamamen kaçınmak mümkündür.

Kapanış Düşünceleri

Yapay zekanın, robotlar ve ... yel değirmenleriyle birlikte geleceğin veri altyapısının tasviri?


Bu dört neden kesinlikle kapsamlı bir liste değildir. Geliştiriciler ve kuruluşlar, MinIO Nesne Depolamasını AI iş yükleri için, geliştirme kolaylığından süper hafif ayak izine kadar çeşitli nedenlerle kullanırlar.


Bu gönderinin başında, AI için yüksek performanslı nesne deposunun benimsenmesinin ardındaki itici güçleri ele aldık. Ölçekleme yasaları geçerli olsun ya da olmasın, kesinlikle doğru olan şey, kuruluşların ve AI iş yüklerinin her zaman mevcut en iyi G/Ç verim kapasitesinden faydalanacağıdır. Buna ek olarak, geliştiricilerin kullanımı daha zor API'ler ve 'sadece çalışmayan ' yazılımlar istemeyeceklerinden oldukça emin olabiliriz. Bu varsayımların geçerli olduğu herhangi bir gelecekte, yüksek performanslı nesne deposu yoldur.


Bunu okuyan mimarlar ve mühendislik karar vericileri için, burada belirtilen en iyi uygulamaların çoğu, nesne depolamanın AI/ML iş akışlarınızı daha basit ve daha ölçeklenebilir hale getirecek şekilde kullanılmasını sağlamak için otomatikleştirilebilir. Bu, modern MLOps araç setlerinden herhangi birinin kullanımıyla yapılabilir. AI/ML KOBİ'si Keith Pijanowski bu araçların çoğunu inceledi - MLOps araçları hakkında daha fazla bilgi için blog sitemizde Kubeflow, MLflow ve MLRun'ı arayın. Ancak, bu MLOps araçları kuruluşunuz için bir seçenek değilse ve hızlı bir şekilde başlamanız gerekiyorsa, bu gönderide gösterilen teknikler, AI/ML iş akışlarınızı MinIO ile yönetmeye başlamanın en iyi yoludur.


Geliştiriciler (veya merak eden herkes 🙂) için, gelecekteki bir blog yazısında, 'sınırsız' eğitim verileri ve uygun GPU kullanımı hedefiyle nesne deposunu kaldıraçlamak için bir ML çerçevesini uyarlamanın uçtan uca bir incelemesini yapacağız.


Okuduğunuz için teşekkürler, umarım bilgilendirici olmuştur! Her zamanki gibi, herhangi bir sorunuz varsa, bize katılın Slack Kanalı veya bize bir not bırakın [email protected] .