كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين

تمت كتابة هذا المنشور بالاشتراك مع Sowmya Manusani ، كبير مهندسي تعلم الآلة في Zendesk

Zendesk هي شركة SaaS تبني برامج الدعم والمبيعات ومشاركة العملاء للجميع ، مع البساطة كأساس. إنها تزدهر من خلال جعل أكثر من 170,000 شركة حول العالم تخدم مئات الملايين من العملاء بكفاءة. يتولى فريق التعلم الآلي في Zendcaesk مسؤولية تعزيز فرق تجربة العملاء لتحقيق أفضل ما لديهم. من خلال الجمع بين قوة البيانات والأفراد ، تقدم Zendesk منتجات ذكية تجعل عملائها أكثر إنتاجية من خلال أتمتة العمل اليدوي.

تقوم Zendesk ببناء منتجات ML منذ عام 2015 ، بما في ذلك إجابة بوت, توقع الرضا, إشارات المحتوى, اقترح وحدات الماكرو، و أكثر من ذلك بكثير. في السنوات القليلة الماضية ، مع النمو في التعلم العميق ، لا سيما في البرمجة اللغوية العصبية ، رأوا الكثير من الفرص لأتمتة تدفقات العمل ومساعدة الوكلاء في دعم عملائهم بحلول Zendesk. تستخدم Zendesk حاليًا TensorFlow و PyTorch لبناء نماذج التعلم العميق.

قام عملاء مثل Zendesk ببناء برامج ناجحة وعالية النطاق كخدمة (SaaS) على Amazon Web Services (AWS). المحرك الرئيسي لنموذج الأعمال SaaS الناجح هو القدرة على تطبيق عقود الإيجار المتعددة في التطبيق والبنية التحتية. يتيح ذلك التكلفة والكفاءة التشغيلية لأن التطبيق يحتاج إلى الإنشاء مرة واحدة فقط ، ولكن يمكن استخدامه عدة مرات ويمكن مشاركة البنية التحتية. نرى العديد من العملاء يبنون أنظمة آمنة وفعالة من حيث التكلفة ومتعددة المستأجرين على AWS في جميع طبقات المكدس ، من الحوسبة والتخزين وقاعدة البيانات إلى الشبكات ، والآن نرى العملاء بحاجة إلى تطبيقها على التعلم الآلي (ML ).

إجراء المفاضلة الصعبة بين إعادة استخدام النموذج والتخصيص المفرط

عادةً ما يعني التأجير المتعدد لشركات SaaS إعادة استخدام تطبيق واحد بين العديد من المستخدمين (عملاء SaaS). هذا يخلق كفاءة في التكلفة ويقلل من النفقات التشغيلية. ومع ذلك ، تحتاج نماذج التعلم الآلي أحيانًا إلى أن تكون مخصصة بدرجة عالية من الخصوصية (مفرطة التخصيص) لعمل تنبؤات دقيقة. هذا يعني أن نموذج SaaS لا يمكن تطبيقه دائمًا على ML إذا كانت النماذج لها خصوصية "الإنشاء مرة واحدة ، استخدم عدة مرات". خذ على سبيل المثال حالة استخدام منصات دعم العملاء. تختلف اللغة التي يدرجها المستخدمون في تذكرة الدعم اعتمادًا على ما إذا كانت مشكلة مشاركة رحلة ("استغرقت الرحلة وقتًا طويلاً") أو مشكلة شراء ملابس ("تغير اللون عند الغسيل"). في حالة الاستخدام هذه ، قد يتطلب تحسين دقة التنبؤ بأفضل إجراء علاجي تدريب نموذج معالجة اللغة الطبيعية (NLP) على مجموعة بيانات خاصة بمجال الأعمال أو قطاع الصناعة. يواجه Zendesk هذا التحدي بالضبط عند محاولة الاستفادة من ML في حلولهم. لقد احتاجوا إلى إنشاء الآلاف من نماذج ML المخصصة للغاية ، كل منها مصمم خصيصًا لعميل معين. لحل هذا التحدي المتمثل في نشر آلاف النماذج بتكلفة فعالة ، لجأت Zendesk إلى Amazon SageMaker.

في هذا المنشور ، نعرض كيفية استخدام بعض الميزات الأحدث لـ الأمازون SageMaker، خدمة تعلم آلي مُدارة بالكامل ، لبناء قدرة استنتاج ML متعددة المستأجرين. نشارك أيضًا مثالًا حقيقيًا لكيفية تحقيق Zendesk بنجاح لنفس النتيجة من خلال نشر وسيط سعيد بين القدرة على دعم التخصيص المفرط في نماذج ML الخاصة بهم والاستخدام المشترك من حيث التكلفة للبنية التحتية باستخدام نقاط النهاية متعددة النماذج من SageMaker ( MME).

نقاط نهاية متعددة النماذج SageMaker

تمكّنك نقاط النهاية متعددة النماذج من SageMaker من نشر نماذج متعددة خلف نقطة نهاية استدلال واحدة قد تحتوي على مثيل واحد أو أكثر. تم تصميم كل مثيل لتحميل نماذج متعددة وخدمتها حتى سعة الذاكرة ووحدة المعالجة المركزية. باستخدام هذه البنية ، يمكن لأعمال SaaS كسر التكلفة المتزايدة الخطية لاستضافة نماذج متعددة وتحقيق إعادة استخدام البنية التحتية المتوافقة مع نموذج متعدد الإيجارات المطبق في مكان آخر في مجموعة التطبيقات.

يوضح الرسم التخطيطي التالي بنية نقطة نهاية نماذج SageMaker المتعددة.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.

تعمل نقطة النهاية متعددة النماذج من SageMaker على تحميل النماذج ديناميكيًا من ملفات خدمة تخزين أمازون البسيطة (Amazon S3) عند الاستدعاء ، بدلاً من تنزيل جميع الطرز عند إنشاء نقطة النهاية لأول مرة. نتيجة لذلك ، قد يؤدي الاستدعاء الأولي إلى نموذج إلى زيادة زمن انتقال الاستدلال عن الاستدلالات اللاحقة ، والتي يتم استكمالها بزمن انتقال منخفض. إذا تم تحميل النموذج بالفعل على الحاوية عند استدعائه ، فسيتم تخطي خطوة التنزيل ويعيد النموذج الاستنتاجات بزمن انتقال منخفض. على سبيل المثال ، افترض أن لديك نموذجًا يتم استخدامه بضع مرات فقط في اليوم. يتم تحميله تلقائيًا عند الطلب ، بينما يتم الاحتفاظ بالنماذج التي يتم الوصول إليها بشكل متكرر في الذاكرة واستدعائها بزمن انتقال منخفض باستمرار.

دعنا نلقي نظرة فاحصة على كيفية استخدام Zendesk لـ SageMaker MME لتحقيق نشر ML على نطاق واسع وفعال من حيث التكلفة مع ميزة Macros ML المقترحة.

لماذا قامت Zendesk ببناء نماذج فائقة الخصوصية

ينتشر عملاء Zendesk على مستوى العالم في قطاعات صناعية مختلفة بدلالات مختلفة لبطاقات الدعم. لذلك ، لتقديم خدمة أفضل لعملائهم ، غالبًا ما يتعين عليهم إنشاء نماذج مخصصة يتم تدريبها على بيانات بطاقة الدعم الخاصة بالعميل لتحديد النية ووحدات الماكرو وغير ذلك بشكل صحيح.

في أكتوبر 2021 ، أصدروا ميزة NLP ML جديدة ، وحدات الماكرو المقترحة ، والتي توصي بوحدات الماكرو (إجراءات محددة مسبقًا) استنادًا إلى الآلاف من تنبؤات النماذج الخاصة بالعميل. قام فريق ML في Zendesk ببناء نموذج مصنف NLP قائم على TensorFlow تم تدريبه من التاريخ السابق لمحتوى التذاكر ووحدات الماكرو لكل عميل. مع توفر هذه النماذج ، يوصى بالتنبؤ الكلي عندما يعرض الوكيل التذكرة (كما هو موضح في لقطة الشاشة التالية) ، مما يساعد الوكيل في خدمة العملاء بسرعة. نظرًا لأن وحدات الماكرو خاصة بالعملاء ، تحتاج Zendesk إلى نماذج خاصة بالعميل لتقديم تنبؤات دقيقة.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.

تحت غطاء وحدات الماكرو المقترحة من Zendesk

نماذج وحدات الماكرو المقترحة عبارة عن شبكات عصبية تعتمد على البرمجة اللغوية العصبية ويتراوح حجمها بين 7-15 ميجابايت. يتمثل التحدي الرئيسي في وضع الآلاف من هذه النماذج في الإنتاج بحلول فعالة من حيث التكلفة وموثوقة وقابلة للتطوير.

يحتوي كل نموذج على أنماط حركة مرور مختلفة ، بحد أدنى طلبين في الثانية وذروة مئات الطلبات في الثانية ، مما يخدم ملايين التنبؤات يوميًا مع زمن انتقال نموذجي يبلغ حوالي 100 مللي ثانية عندما يكون النموذج متاحًا في الذاكرة. يتم نشر نقاط نهاية SageMaker في مناطق AWS متعددة ، وتخدم آلاف الطلبات في الدقيقة لكل نقطة نهاية.

بفضل قدرتها على استضافة نماذج متعددة على نقطة نهاية واحدة ، ساعدت SageMaker شركة Zendesk على تقليل نفقات النشر وإنشاء حل فعال من حيث التكلفة مقارنة بنشر نقطة نهاية أحادية النموذج لكل عميل. المفاضلة هنا هي تحكم أقل في الإدارة لكل نموذج ؛ ومع ذلك ، فهذه منطقة تتعاون فيها Zendesk مع AWS لتحسين نقاط النهاية متعددة النماذج.

تتمثل إحدى ميزات نماذج SageMaker المتعددة في التحميل البطيء للنماذج ، أي أنه يتم تحميل النماذج في الذاكرة عند استدعائها لأول مرة. هذا لتحسين استخدام الذاكرة ؛ ومع ذلك ، فإنه يتسبب في حدوث ارتفاعات في وقت الاستجابة عند التحميل الأول ، والتي يمكن اعتبارها مشكلة بدء التشغيل على البارد. بالنسبة لوحدات الماكرو المقترحة ، كان هذا تحديًا ؛ ومع ذلك ، تغلبت Zendesk على هذا من خلال تنفيذ وظيفة التحميل المسبق أعلى توفير نقطة نهاية SageMaker لتحميل النماذج في الذاكرة قبل خدمة حركة مرور الإنتاج. ثانيًا ، تقوم MME بإفراغ النماذج المستخدمة بشكل غير متكرر من الذاكرة ، وذلك لتحقيق زمن انتقال منخفض ثابت لجميع النماذج وتجنب تأثير "الجيران المزعجين" على النماذج الأخرى الأقل نشاطًا ، تتعاون Zendesk مع AWS لإضافة ميزات جديدة ، تمت مناقشتها لاحقًا في المنشور ، لتمكين إدارة أكثر وضوحا لكل نموذج. بالإضافة إلى ذلك ، كحل مؤقت ، تمتلك Zendesk الحجم المناسب لأسطول MME لتقليل تفريغ عدد كبير جدًا من النماذج. من خلال هذا ، تستطيع Zendesk خدمة التنبؤات لجميع عملائها بزمن انتقال منخفض ، حوالي 100 مللي ثانية ، ولا تزال تحقق توفيرًا في التكاليف بنسبة 90٪ مقارنة بنقاط النهاية المخصصة.

في MME بالتحديد الصحيح ، لاحظ Zendesk أثناء اختبار الحمل أن وجود عدد أكبر من الحالات الأصغر (التحيز على القياس الأفقي) خلف MME كان خيارًا أفضل من وجود عدد أقل من مثيلات الذاكرة الأكبر (القياس الرأسي). لاحظ Zendesk أن bin يحزم عددًا كبيرًا جدًا من النماذج (أكثر من 500 نموذج TensorFlow في حالتهم) على مثيل ذاكرة كبير واحد لا يعمل بشكل جيد لأن الذاكرة ليست المورد الوحيد في مثيل يمكن أن يكون عنق الزجاجة. وبشكل أكثر تحديدًا ، لاحظوا أن TensorFlow أنتج خيوط متعددة (3 × إجمالي مثيل vCPUs) لكل نموذج ، لذا فإن تحميل أكثر من 500 نموذج على مثيل واحد تسبب في اختراق حدود مستوى kernel على الحد الأقصى لعدد الخيوط التي يمكن إنتاجها في مثيل. حدثت مشكلة أخرى مع استخدام عدد أقل وأكبر من الحالات عندما واجهت Zendesk الاختناق (كآلية أمان) في بعض الحالات وراء MME لأن استدعاء النموذج الفريد لكل ثانية تجاوز ما خادم متعدد النماذج (MMS) في مثيل واحد يمكنه التعامل بأمان دون تفريغ المثيل. كانت هذه مشكلة أخرى تم حلها باستخدام مثيلات أكثر وأصغر.

من منظور الملاحظة ، وهو عنصر حاسم في أي تطبيق إنتاجي ، الأمازون CloudWatch تعد المقاييس مثل الاستدعاءات ووحدة المعالجة المركزية واستخدام الذاكرة والمقاييس الخاصة بالنماذج المتعددة مثل النماذج المحملة في الذاكرة ووقت تحميل النموذج ووقت انتظار تحميل النموذج وذاكرة التخزين المؤقت للنموذج مفيدة. على وجه التحديد ، ساعد انهيار زمن الوصول للنموذج شركة Zendesk على فهم مشكلة البداية الباردة وتأثيرها.

تحت غطاء محرك السيارة MME التحجيم التلقائي

خلف كل نقطة نهاية متعددة النماذج ، توجد حالات استضافة نموذج ، كما هو موضح في الرسم البياني التالي. تقوم هذه الحالات بتحميل وإخراج نماذج متعددة من الذاكرة وإليها بناءً على أنماط حركة المرور إلى النماذج.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.

يستمر SageMaker في توجيه طلبات الاستدلال لنموذج إلى المثيل حيث تم تحميل النموذج بالفعل بحيث يتم تقديم الطلبات من نسخة النموذج المخزنة مؤقتًا (انظر الرسم التخطيطي التالي ، الذي يعرض مسار الطلب لطلب التنبؤ الأول مقابل طلب التنبؤ المخزن مؤقتًا طريق). ومع ذلك ، إذا تلقى النموذج العديد من طلبات الاستدعاء ، وكانت هناك مثيلات إضافية لنقطة النهاية متعددة النماذج ، فإن SageMaker يوجه بعض الطلبات إلى مثيل آخر لاستيعاب الزيادة. للاستفادة من مقياس النموذج الآلي في SageMaker ، تأكد من أن لديك ضبط التحجيم التلقائي للمثال لتوفير سعة مثيل إضافية. قم بإعداد سياسة التحجيم على مستوى نقطة النهاية الخاصة بك باستخدام معلمات مخصصة أو استدعاءات في الدقيقة (مستحسن) لإضافة المزيد من المثيلات إلى أسطول نقاط النهاية.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.

حالات الاستخدام الأنسب لـ MME

تعد نقاط النهاية متعددة النماذج من SageMaker مناسبة تمامًا لاستضافة عدد كبير من الطرز المماثلة التي يمكنك تقديمها من خلال حاوية خدمة مشتركة ولا تحتاج إلى الوصول إلى جميع النماذج في نفس الوقت. تعد MME هي الأنسب للنماذج المتشابهة في الحجم وأوقات استجابة الاستدعاء. بعض الاختلاف في حجم النموذج مقبول ؛ على سبيل المثال ، تتراوح نماذج Zendesk من 10 إلى 50 ميجا بايت ، وهو ما يعمل بشكل جيد ، لكن الاختلافات في الحجم التي تزيد عن 10 أو 50 أو 100 مرة ليست مناسبة. قد تتسبب الطرز الأكبر حجمًا في زيادة عدد الأحمال والتفريغ للنماذج الأصغر لاستيعاب مساحة ذاكرة كافية ، مما قد يؤدي إلى زيادة زمن الانتقال في نقطة النهاية. يمكن أن تستهلك الاختلافات في خصائص الأداء للنماذج الأكبر أيضًا موارد مثل وحدة المعالجة المركزية بشكل غير متساو ، مما قد يؤثر على النماذج الأخرى في المثيل.

تم تصميم MME أيضًا لنماذج الاستضافة المشتركة التي تستخدم نفس إطار عمل ML لأنها تستخدم الحاوية المشتركة لتحميل نماذج متعددة. لذلك ، إذا كان لديك مزيج من أطر عمل تعلم الآلة في أسطولك النموذجي (مثل PyTorch و TensorFlow) ، فإن نقاط النهاية المخصصة من SageMaker أو الاستضافة متعددة الحاويات هي الخيار الأفضل. أخيرًا ، يعد MME مناسبًا للتطبيقات التي يمكنها تحمل عقوبة زمن انتقال البداية الباردة في بعض الأحيان لأن النماذج المستخدمة بشكل غير متكرر يمكن تفريغها لصالح النماذج التي يتم استدعاءها بشكل متكرر. إذا كان لديك ذيل طويل من النماذج التي لا يتم الوصول إليها بشكل متكرر ، فيمكن لنقطة النهاية متعددة النماذج أن تخدم حركة المرور هذه بكفاءة وتمكن من توفير كبير في التكلفة.

نبذة عامة

في هذا المنشور ، تعلمت كيف ترتبط SaaS والتعددية المستأجرة بـ ML وكيف تتيح نقاط النهاية متعددة النماذج من SageMaker تعدد الإيجارات وفعالية التكلفة لاستدلال ML. لقد تعرفت على حالة استخدام Zendesk متعدد المستأجرين لنماذج ML لكل عميل وكيف استضافت الآلاف من نماذج ML في SageMaker MME لميزة وحدات الماكرو المقترحة وحققت توفيرًا بنسبة 90٪ في الاستدلال مقارنة بنقاط النهاية المخصصة. يمكن أن تتطلب حالات استخدام التخصيص المفرط الآلاف من نماذج ML ، وتعد MME خيارًا فعالاً من حيث التكلفة لحالة الاستخدام هذه. سنستمر في إجراء التحسينات في MME لتمكينك من استضافة النماذج بزمن انتقال منخفض ومع المزيد من عناصر التحكم الدقيقة لكل نموذج مخصص. لتبدأ مع MME ، انظر استضف عدة نماذج في حاوية واحدة خلف نقطة نهاية واحدة.


حول المؤلف

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.سيد جفري هو مهندس حلول أول مع AWS. إنه يعمل مع مجموعة من الشركات من المؤسسات متوسطة الحجم إلى المؤسسات الكبيرة ، والخدمات المالية إلى موردي البرامج المستقلين (ISVs) ، لمساعدتهم على بناء وتشغيل تطبيقات آمنة ومرنة وقابلة للتطوير وعالية الأداء في السحابة.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.سوميا مانوساني هو كبير مهندسي التعلم الآلي في شركة Zendesk. تعمل على إنتاج ميزات التعلم الآلي المستندة إلى البرمجة اللغوية العصبية (NLP) والتي تركز على تحسين إنتاجية الوكيل لآلاف عملاء Zendesk Enterprise. لديها خبرة في بناء خطوط تدريب مؤتمتة لآلاف النماذج الشخصية وتقديمها باستخدام تطبيقات آمنة ومرنة وقابلة للتطوير وعالية الأداء. في أوقات فراغها ، تحب حل الألغاز ومحاولة الرسم.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي. سوراب تريكاندي هو مدير أول للمنتجات في Amazon SageMaker Inference. إنه متحمس للعمل مع العملاء وجعل التعلم الآلي أكثر سهولة. في أوقات فراغه ، يستمتع سوراب بالمشي لمسافات طويلة والتعرف على التقنيات المبتكرة واتباع TechCrunch وقضاء الوقت مع عائلته.

كيفية توسيع نطاق استدلال التعلم الآلي لحالات استخدام SaaS متعددة المستأجرين ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.ديبتي راغا هو مهندس تطوير برمجيات في فريق Amazon SageMaker. يركز عملها الحالي على بناء الميزات لاستضافة نماذج التعلم الآلي بكفاءة. في أوقات فراغها ، تستمتع بالسفر والمشي لمسافات طويلة وزراعة النباتات.

الطابع الزمني:

اكثر من التعلم الآلي من AWS