MLOps, makine öğrenimi (ML) iş akışlarının otomatikleştirilmesine, yönetilmesine ve denetlenmesine yardımcı olmak için DevOps uygulamalarını uygulama uygulamasıdır. ML iş akışları aşağıdaki adımları içerir:
- Verileri hazırlayın, analiz edin ve dönüştürün.
- Bir modeli eğitin ve değerlendirin.
- Eğitimli modelleri üretime dağıtın.
- ML yapıtlarını izleyin ve bağımlılıklarını anlayın.
Bu adımları geçici bir şekilde yönetmek zor ve zaman alıcı olabilir.
TFX, ML sürecinizi Apache Airflow, Apache Beam ve Kubeflow Pipelines gibi çeşitli orkestratörlerde düzenlemenize yardımcı olan bir araç seti sağlayarak MLOps'u uygulamayı kolaylaştırır. İş akışınızı TFX ardışık düzeni olarak uygulayarak şunları yapabilirsiniz:
- Modelinizi düzenli olarak yeniden eğitmenize, değerlendirmenize ve dağıtmanıza olanak tanıyan makine öğrenimi sürecinizi otomatikleştirin.
- Büyük veri kümelerini ve iş yüklerini işlemek için dağıtılmış bilgi işlem kaynaklarından yararlanın.
- Farklı hiperparametre kümeleriyle bir işlem hattı çalıştırarak deneme hızını artırın.
Bu kılavuz, TFX işlem hatlarını anlamak için gereken temel kavramları açıklamaktadır.
eser
Bir TFX işlem hattındaki adımların çıktılarına yapılar denir. İş akışınızdaki sonraki adımlar bu yapıtları girdi olarak kullanabilir. Bu şekilde TFX, iş akışı adımları arasında veri aktarmanıza olanak tanır.
Örneğin, ExampleGen
standart bileşeni, StatisticsGen
standart bileşeni gibi bileşenlerin girdi olarak kullandığı serileştirilmiş örnekler yayar.
Yapıların, ML Meta Veri deposunda kayıtlı bir yapı türüyle güçlü bir şekilde yazılması gerekir. ML Meta Verilerinde kullanılan kavramlar hakkında daha fazla bilgi edinin.
Yapı türlerinin bir adı vardır ve özelliklerinin bir şemasını tanımlar. Yapı türü adları, ML Meta Veri deponuzda benzersiz olmalıdır. TFX, dize, tamsayı ve kayan nokta gibi karmaşık veri türlerini ve değer türlerini tanımlayan çeşitli standart yapı türleri sağlar. Bu yapıt türlerini yeniden kullanabilir veya Artifact
öğesinden türetilen özel yapıt türlerini tanımlayabilirsiniz.
Parametre
Parametreler, işlem hattınız yürütülmeden önce bilinen işlem hatlarına yönelik girişlerdir. Parametreler, kod yerine yapılandırma aracılığıyla bir işlem hattının veya işlem hattının bir kısmının davranışını değiştirmenize olanak tanır.
Örneğin, ardışık düzeninin kodunu değiştirmeden farklı hiperparametre kümeleriyle bir ardışık düzeni çalıştırmak için parametreleri kullanabilirsiniz.
Parametreleri kullanmak, işlem hattınızı farklı parametre kümeleriyle çalıştırmayı kolaylaştırarak deneme hızını artırmanıza olanak tanır.
RuntimeParameter sınıfı hakkında daha fazla bilgi edinin.
Bileşen
Bileşen, TFX işlem hattınızda adım olarak kullanabileceğiniz bir makine öğrenimi görevinin uygulamasıdır. Bileşenler şunlardan oluşur:
- Bileşenin giriş ve çıkış yapıtlarını ve bileşenin gerekli parametrelerini tanımlayan bir bileşen spesifikasyonu.
- ML iş akışınızda verileri alma ve dönüştürme veya bir modeli eğitme ve değerlendirme gibi bir adımı gerçekleştirmek için kodu uygulayan bir yürütücü.
- Bir işlem hattında kullanılmak üzere bileşen belirtimini ve yürütücüyü paketleyen bir bileşen arayüzü.
TFX, işlem hatlarınızda kullanabileceğiniz çeşitli standart bileşenler sağlar. Bu bileşenler ihtiyaçlarınızı karşılamıyorsa özel bileşenler oluşturabilirsiniz. Özel bileşenler hakkında daha fazla bilgi edinin .
Boru hattı
TFX ardışık düzeni, Apache Airflow, Apache Beam ve Kubeflow Pipelines gibi çeşitli orkestratörlerde çalıştırılabilen bir makine öğrenimi iş akışının taşınabilir bir uygulamasıdır. Bir işlem hattı, bileşen örneklerinden ve giriş parametrelerinden oluşur.
Bileşen örnekleri çıktı olarak yapay yapılar üretir ve genellikle giriş olarak yukarı akışlı bileşen örnekleri tarafından üretilen yapay yapılara bağlıdır. Bileşen örneklerinin yürütme sırası, yapı bağımlılıklarının yönlendirilmiş bir döngüsel olmayan grafiğinin oluşturulmasıyla belirlenir.
Örneğin, aşağıdakileri yapan bir boru hattını düşünün:
- Özel bir bileşen kullanarak verileri doğrudan özel bir sistemden alır.
- İstatistikGen standart bileşenini kullanarak eğitim verilerine ilişkin istatistikleri hesaplar.
- SchemaGen standart bileşenini kullanarak bir veri şeması oluşturur.
- SampleValidator standart bileşenini kullanarak eğitim verilerini anormalliklere karşı kontrol eder.
- Transform standart bileşenini kullanarak veri kümesi üzerinde özellik mühendisliği gerçekleştirir.
- Trainer standart bileşenini kullanarak bir modeli eğitir.
- Değerlendirici bileşenini kullanarak eğitilen modeli değerlendirir.
- Model değerlendirmesini geçerse işlem hattı, eğitilen modeli özel bir bileşen kullanarak özel bir dağıtım sistemine dahil eder.
Bileşen örneklerinin yürütme sırasını belirlemek için TFX, yapı bağımlılıklarını analiz eder.
- Veri alımı bileşeninin herhangi bir yapı bağımlılığı yoktur, dolayısıyla grafikteki ilk düğüm olabilir.
- İstatistikGen, veri alımıyla üretilen örneklere bağlıdır, bu nedenle veri alımından sonra yürütülmesi gerekir.
- SchemaGen, İstatistikGen tarafından oluşturulan istatistiklere bağlıdır, dolayısıyla İstatistikGen'den sonra çalıştırılması gerekir.
- SampleValidator, İstatistikGen tarafından oluşturulan istatistiklere ve SchemaGen tarafından oluşturulan şemaya bağlıdır, bu nedenle İstatistikGen ve SchemaGen'den sonra çalıştırılması gerekir.
- Dönüşüm, veri alımıyla üretilen örneklere ve SchemaGen tarafından oluşturulan şemaya bağlıdır, bu nedenle veri alımından ve SchemaGen'den sonra çalıştırılmalıdır.
- Eğitmen, veri alımıyla üretilen örneklere , SchemaGen tarafından oluşturulan şemaya ve Transform tarafından üretilen kaydedilen modele bağlıdır. Trainer yalnızca veri alımı, SchemaGen ve Transform'dan sonra çalıştırılabilir.
- Değerlendirici, veri alımıyla üretilen örneklere ve Eğitmen tarafından üretilen kaydedilen modele bağlıdır, dolayısıyla veri alımından ve Eğitmen'den sonra çalıştırılmalıdır.
- Özel konuşlandırıcı, Eğitmen tarafından oluşturulan kaydedilen modele ve Değerlendirici tarafından oluşturulan analiz sonuçlarına bağlıdır; bu nedenle, konuşlandırıcının Eğitmen ve Değerlendiriciden sonra çalıştırılması gerekir.
Bu analize dayanarak bir orkestratör şunları çalıştırır:
- Veri alımı, İstatistikGen, SchemaGen bileşen örnekleri sırayla.
- SampleValidator ve Transform bileşenleri, giriş yapısı bağımlılıklarını paylaştıklarından ve birbirlerinin çıktılarına bağlı olmadıklarından paralel olarak çalışabilirler.
- Transform bileşeni tamamlandıktan sonra Trainer, Evaluator ve özel konuşlandırıcı bileşen örnekleri sırayla çalıştırılır.
TFX işlem hattı oluşturma hakkında daha fazla bilgi edinin.
TFX İşlem Hattı Şablonu
TFX İşlem Hattı Şablonları, kullanım durumunuza göre özelleştirebileceğiniz önceden oluşturulmuş bir işlem hattı sağlayarak işlem hattı geliştirmeye başlamayı kolaylaştırır.
TFX işlem hattı şablonunu özelleştirme hakkında daha fazla bilgi edinin.
Boru Hattı Çalışması
Çalıştırma, bir işlem hattının tek bir yürütülmesidir.
Orkestratör
Orkestratör, ardışık düzen çalıştırmalarını yürütebileceğiniz bir sistemdir. TFX, Apache Airflow , Apache Beam ve Kubeflow Pipelines gibi orkestratörleri destekler. TFX ayrıca bir orkestratörü destekleyen bir uygulamaya atıfta bulunmak için DagRunner terimini kullanır.