Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.

Amazon Search, Amazon SageMaker ile büyük ölçekli, esnek makine öğrenimi projelerini nasıl yürütür?

Amazon.com'da satın almak için bir ürün aradıysanız Amazon Arama hizmetlerini kullanmışsınızdır. Amazon Search olarak dünya çapındaki müşterilerimizin arama ve keşif deneyiminden sorumluyuz. Arka planda, dünya çapındaki ürün kataloğumuzu indeksliyor, yüksek düzeyde ölçeklenebilir AWS filoları dağıtıyor ve ilgili ve ilgi çekici ürünleri her müşterinin sorgusuyla eşleştirmek için gelişmiş makine öğrenimini (ML) kullanıyoruz.

Bilim adamlarımız, arama sonuçlarının kalitesini artırmak için düzenli olarak binlerce makine öğrenimi modelini eğitiyor. Büyük ölçekli deneyleri desteklemek, özellikle bu makine öğrenimi modellerini eğiten bilim adamlarının üretkenliğini artırma söz konusu olduğunda kendi zorluklarını da beraberinde getirir.

Bu yazıda, bir yönetim sistemini nasıl oluşturduğumuzu paylaşıyoruz. Amazon Adaçayı Yapıcı bilim adamlarımızın binlerce deneyi ateşleyip unutmasına ve gerektiğinde bilgilendirilmelerine olanak tanıyan eğitim işleri. Artık yüksek değerli görevlere ve algoritmik hataları çözmeye odaklanarak zamandan %60 tasarruf edebilirler.

Meydan okuma

Amazon Arama'da bilim adamlarımız, SageMaker'da çok sayıda makine öğrenimi modeli eğitim işi deneyerek ve çalıştırarak bilgi alma sorunlarını çözüyor. Ekibimizin yenilikçiliğine ayak uydurmak için modellerimizin karmaşıklığı ve eğitim işlerinin sayısı zamanla arttı. SageMaker eğitim işleri, altyapıyı yönetmeye gerek kalmadan bu modelleri uygun ölçekte eğitmek ve ayarlamak için gereken zamanı ve maliyeti azaltmamıza olanak tanır.

Bu tür büyük ölçekli makine öğrenimi projelerindeki her şey gibi, eğitim işleri de çeşitli faktörlerden dolayı başarısız olabilir. Bu yazı, algoritma hatalarından kaynaklanan kapasite eksikliklerine ve başarısızlıklara odaklanıyor.

Kapasite yetersizliği veya algoritma hataları nedeniyle bir işin başarısız olma olasılığını tolere etmek ve azaltmak için iş yönetim sistemine sahip bir mimari tasarladık. Bilim adamlarının binlerce eğitim işini atıp unutmasına, geçici başarısızlık durumunda bunları otomatik olarak yeniden denemesine ve gerekirse başarı veya başarısızlık konusunda bildirim almasına olanak tanır.

Çözüme genel bakış

Aşağıdaki çözüm şemasında çözümümüzün temel birimi olarak SageMaker eğitim işlerini kullanıyoruz. Yani bir iş, bir ML modelinin uçtan uca eğitimini temsil eder.

Bu çözümün üst düzey iş akışı aşağıdaki gibidir:

  1. Bilim adamları sisteme yeni bir iş göndermek için bir API'yi çağırır.
  2. İş şirkete kayıtlı New meta veri deposundaki durum.
  3. Bir iş zamanlayıcı eşzamansız olarak alır New işleri meta veri deposundan alır, girdilerini ayrıştırır ve her biri için SageMaker eğitim işlerini başlatmaya çalışır. Durumları şu şekilde değişir: Launched or Failed başarıya bağlı.
  4. Bir monitör düzenli aralıklarla işlerin ilerleyişini kontrol eder ve durumlarını rapor eder. Completed, Failedya da InProgress meta veri deposundaki durum.
  5. Rapor vermek için bir bildirim tetiklendi Completed ve Failed bilim insanlarına iş.

İş geçmişini meta veri deposunda sürdürmek aynı zamanda ekibimizin trend analizi yapmasına ve proje ilerlemesini izlemesine de olanak tanır.

Bu iş planlama çözümü, gevşek bağlı sunucusuz bileşenleri kullanır. AWS Lambda, Amazon DinamoDB, Amazon Basit Bildirim Servisi (Amazon SNS) ve Amazon EventBridge. Bu, yatay ölçeklenebilirlik sağlayarak bilim adamlarımızın minimum operasyon çabasıyla binlerce işi başlatmasına olanak tanır. Aşağıdaki şemada sunucusuz mimari gösterilmektedir.

Çözümümüze mimari genel bakış

Aşağıdaki bölümlerde her hizmet ve bileşenleri hakkında daha ayrıntılı bilgi vereceğiz.

İş çalıştırmaları için meta veri deposu olarak DynamoDB

DynamoDB'nin kullanım kolaylığı ve ölçeklenebilirliği, işlerin meta verilerini bir DynamoDB tablosunda sürdürmeyi doğal bir seçim haline getirdi. Bu çözüm, bilim insanları tarafından sunulan işlerin çeşitli niteliklerini saklayarak ilerleme takibine ve iş akışının düzenlenmesine yardımcı olur. En önemli nitelikler aşağıdaki gibidir:

  • İş kimliği – Benzersiz bir iş kimliği. Bu otomatik olarak oluşturulabilir veya bilim adamı tarafından sağlanabilir.
  • İş durumu – İşin durumu.
  • JobArgs – Amazon S3'teki giriş yolu, eğitim görüntüsü URI'si ve daha fazlası gibi bir eğitim işi oluşturmak için gereken diğer argümanlar. Bir eğitim işi oluşturmak için gereken parametrelerin tam listesi için bkz. YaratEğitimİşi.

Temel mantık için Lambda

Üçünü kullanıyoruz kapsayıcı tabanlı Lambda iş akışını düzenlemek için çalışır:

  • İşi Gönder – Bu işlev bilim insanları tarafından yeni işler başlatmaları gerektiğinde çağrılır. Basitlik açısından bir API görevi görür. Ayrıca önden de kullanabilirsiniz Amazon API Ağ Geçidi, gerekirse. Bu işlev, işleri DynamoDB tablosuna kaydeder.
  • İşleri Başlat – Bu işlev periyodik olarak New işleri DynamoDB tablosundan alır ve bunları SageMaker'ı kullanarak başlatır YaratEğitimİşi emretmek. Aşağıdaki gibi geçici arızalarda yeniden dener: ResourceLimitExceeded ve CapacityError, sistemin esnekliğini sağlamak için. Daha sonra iş durumunu şu şekilde günceller: Launched or Failed başarıya bağlı.
  • İşleri İzleme – Bu işlev, işin ilerleyişini periyodik olarak takip eder. Eğitimİşini Tanımlayın komutunu kullanın ve DynamoDB tablosunu buna göre güncelleyin. Anketler Failed işleri meta verilerden alır ve yeniden gönderilmeleri mi yoksa kalıcı olarak başarısız olarak mı işaretlenmeleri gerektiğini değerlendirir. Ayrıca bilim adamlarının işleri terminal durumuna ulaştığında onlara bildirim mesajları yayınlıyor.

Planlama için EventBridge

İşleri Başlatma ve İşleri İzleme Lambda işlevlerini bir programa göre çalıştırmak için EventBridge'i kullanırız. Daha fazla bilgi için bkz. Öğretici: EventBridge kullanarak AWS Lambda işlevlerini zamanlayın.

Alternatif olarak, kullanabilirsiniz Amazon DynamoDB Akışları tetikleyiciler için. Daha fazla bilgi için bakınız DynamoDB Akışları ve AWS Lambda tetikleyicileri.

Amazon SNS ile bildirimler

Bilim adamlarımız Amazon SNS kullanılarak e-postayla bildirim işleri terminal durumuna ulaştığında (Failed maksimum sayıda yeniden denemeden sonra), Completedya da Stopped.

Sonuç

Bu gönderide, Amazon Search'ün makine öğrenimi model eğitimi iş yüklerini planlayarak ve kapasite eksiklikleri veya algoritma hataları durumunda yeniden deneyerek onlara nasıl dayanıklılık kazandırdığını paylaştık. Tüm iş akışını düzenlemek için merkezi bir meta veri deposu olarak Lambda işlevlerini bir DynamoDB tablosuyla birlikte kullandık.

Böyle bir planlama sistemi, bilim adamlarının işlerini göndermelerine ve onları unutmalarına olanak tanır. Bu, zamandan tasarruf sağlar ve daha iyi modeller yazmaya odaklanmalarını sağlar.

Öğrenimlerinizde daha ileri gitmek için şu adresi ziyaret edebilirsiniz: Harika SageMaker ve SageMaker ile çalışmak için gereken tüm ilgili ve güncel kaynakları tek bir yerde bulabilirsiniz.


Yazarlar Hakkında

Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.Luochao Wang Amazon Search'te Yazılım Mühendisidir. Makine Öğrenimi uygulamalarına yönelik bilimsel inovasyonun hızını artırmak için buluttaki ölçeklenebilir dağıtılmış sistemlere ve otomasyon araçlarına odaklanıyor.

Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.İşhan Bhatt Amazon Prime Video ekibinde Yazılım Mühendisidir. Esas olarak MLOps alanında çalışıyor ve son 4 yıldır Amazon SageMaker'ı kullanarak MLOps ürünleri oluşturma deneyimine sahip.

Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.Abhinandan Patnisi Amazon Search'te Kıdemli Yazılım Mühendisidir. Ölçeklenebilir dağıtılmış derin öğrenme eğitimi ve gerçek zamanlı çıkarım için sistemler ve araçlar oluşturmaya odaklanır.

Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.Eiman Elnahrawy Amazon Search'te Makine Öğrenimi hızlandırma, ölçeklendirme ve otomasyon çalışmalarına liderlik eden Baş Yazılım Mühendisidir. Uzmanlığı, Makine Öğrenimi, Dağıtılmış Sistemler ve Kişiselleştirme dahil olmak üzere birçok alanı kapsar.

Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.Sofya Hamiti AWS'de bir AI / ML uzmanı Çözüm Mimarıdır. Sektörlerdeki müşterilerin uçtan uca makine öğrenimi çözümleri oluşturmalarına ve çalıştırmalarına yardımcı olarak AI / ML yolculuklarını hızlandırmalarına yardımcı oluyor.

Romi DattaDoktor Romi Datta  Amazon SageMaker ekibinde eğitim, işleme ve özellik deposundan sorumlu Ürün Yönetimi Kıdemli Müdürüdür. 4 yılı aşkın bir süredir AWS'de çalışıyor ve SageMaker, S3 ve IoT'de çeşitli ürün yönetimi liderliği rollerinde bulunuyor. AWS'den önce IBM, Texas Instruments ve Nvidia'da çeşitli ürün yönetimi, mühendislik ve operasyonel liderlik rollerinde çalıştı. Yüksek Lisans ve Doktora derecesine sahiptir. Austin'deki Texas Üniversitesi'nden Elektrik ve Bilgisayar Mühendisliği bölümünden ve University of Chicago Booth İşletme Okulu'ndan MBA derecesi almıştır.

Amazon Search, Amazon SageMaker PlatoBlockchain Data Intelligence ile büyük ölçekli, dayanıklı makine öğrenimi projelerini nasıl yürütüyor? Dikey Arama. Ai.RJ Search M5 ekibinde, eğitim ve çıkarım için büyük ölçekli derin öğrenme sistemleri oluşturma çabalarına öncülük eden bir mühendistir. İş dışında farklı mutfakları keşfediyor ve raket sporları yapıyor.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi