تسريع تدريب الشبكة العصبية على نطاق واسع على وحدات المعالجة المركزية (CPU) باستخدام ThirdAI وAWS Graviton | خدمات الويب الأمازون

تسريع تدريب الشبكة العصبية على نطاق واسع على وحدات المعالجة المركزية (CPU) باستخدام ThirdAI وAWS Graviton | خدمات الويب الأمازون

تمت كتابة مشاركة الضيف هذه بواسطة فيهان لاكشمان وثارون ميديني وأنشومالي شريفاستافا من ThirdAI.

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

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

في هذا المنشور، نتحقق من إمكانية قيام معالج AWS Graviton3 بتسريع تدريب الشبكة العصبية لمحرك التعلم العميق الفريد القائم على وحدة المعالجة المركزية الخاص بـ ThirdAI.

فوائد وحدات المعالجة المركزية عالية الأداء

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

بنية عصبية كثيفة مع خطوط عريضة توضح الخلايا العصبية التي تم اختيارها

نظرًا لأن العديد من عملائنا المستهدفين يعملون في السحابة - ومن بينهم الأغلبية يستخدمون AWS - كنا متحمسين لتجربة معالج AWS Graviton3 لمعرفة ما إذا كانت التحسينات الرائعة في أداء السعر لابتكار السيليكون من Amazon ستترجم إلى عبء العمل الفريد لدينا من التدريب على الشبكات العصبية المتفرقة وبالتالي توفير المزيد من التوفير للعملاء. على الرغم من أن مجتمع البحث وفريق AWS Graviton قد حققوا تقدمًا مثيرًا في التسريع استنتاج الشبكة العصبية فيما يتعلق بمثيلات وحدة المعالجة المركزية، نحن في ThirdAI، على حد علمنا، أول من قام بدراسة جدية لكيفية تدريب النماذج العصبية على وحدات المعالجة المركزية بكفاءة.

كما هو موضح في النتائج التي توصلنا إليها، لاحظنا تسريعًا كبيرًا في التدريب باستخدام AWS Graviton3 مقارنة بمثيلات Intel وNVIDIA المماثلة في العديد من أعباء عمل النمذجة التمثيلية.

أنواع المثيل

بالنسبة لتقييمنا، أخذنا في الاعتبار مثيلين مماثلين لوحدة المعالجة المركزية AWS: جهاز c6i.8xlarge مدعوم بمعالج Intel's Ice Lake وجهاز c7g.8xlarge مدعوم من AWS Graviton3. ويلخص الجدول التالي تفاصيل كل حالة.

حتة وحدة المعالجة المركزية الافتراضية ذاكرة الوصول العشوائي (GB) المعالج السعر عند الطلب (الولايات المتحدة-شرق-1)
c7g.8xlarge 32 64 أوس جرافيتون3 $ 1.1562 / ساعة
c6i.8xlarge 32 64 بحيرة إنتل الجليدية $ 1.36 / ساعة
g5g.8xlarge (وحدة معالجة الرسومات) 32 64 مع ذاكرة GPU سعة 16 جيجابايت معالجات AWS Graviton2 مع وحدة معالجة رسومات NVIDIA T1G واحدة $ 1.3720 / ساعة

التقييم 1: التصنيف المدقع

في تقييمنا الأول، نركز على مشكلة التصنيف الشديد متعدد التصنيفات (XMC)، وهو نموذج شائع بشكل متزايد للتعلم الآلي (ML) مع عدد من التطبيقات العملية في البحث والتوصيات (بما في ذلك في أمازون). لتقييمنا، ونحن نركز على الجمهور مهمة توصية منتج Amazon-670K، والتي، في ضوء منتج المدخلات، تحدد المنتجات المماثلة من مجموعة تضم أكثر من 670,000 عنصر.

في هذه التجربة، نقوم بمقارنة محرك BOLT الخاص بـ ThirdAI مع TensorFlow 2.11 وPyTorch 2.0 على خيارات الأجهزة المذكورة أعلاه: Intel Ice Lake وAWS Graviton3 ووحدة معالجة الرسومات NVIDIA T4G. بالنسبة لتجاربنا على Intel وAWS Graviton، نستخدم AWS Deep Learning AMI (Ubuntu 18.04) الإصدار 59.0. لتقييم GPU لدينا، نستخدم NVIDIA GPU-Optimized Arm64 AMI، متاح عبر AWS Marketplace. في هذا التقييم نستخدم بنية نموذج الشريحة، والذي يحقق أداءً تنافسيًا في مهمة التصنيف القصوى هذه وأداءً تدريبيًا قويًا على وحدات المعالجة المركزية (CPUs). بالنسبة لمقارنات TensorFlow وPyTorch، قمنا بتنفيذ الإصدار المماثل من بنية الإدراك الحسي متعدد الطبقات (MLP) SLIDE مع مضاعفات المصفوفة الكثيفة. نقوم بتدريب كل نموذج لمدة خمس فترات (مرات كاملة عبر مجموعة بيانات التدريب) بحجم دفعة ثابت يبلغ 256 ومعدل تعلم قدره 0.001. لاحظنا أن جميع النماذج حققت نفس دقة الاختبار البالغة 33.6%.

يقارن الرسم البياني التالي وقت تدريب BOLT الخاص بـ ThirdAI مع TensorFlow 2.11 وPyTorch 2.0 على معيار التصنيف المتطرف Amazon670k. جميع النماذج تحقق نفس دقة الاختبار. نلاحظ أن AWS Graviton3 يعمل على تسريع أداء BOLT بشكل كبير دون الحاجة إلى تخصيصات - بنسبة 40% تقريبًا. يحقق BOLT الخاص بـ ThirdAI على AWS Graviton3 أيضًا تدريبًا أسرع بكثير من نماذج TensorFlow أو PyTorch المدربة على وحدة معالجة الرسومات. لاحظ أنه لا توجد نتيجة ThirdAI في اختبار NVIDIA GPU لأن BOLT مصمم للعمل على وحدات المعالجة المركزية (CPUs). نحن لا نقوم بتضمين معايير TensorFlow وPyTorch CPU بسبب وقت التدريب الطويل للغاية.

مخطط شريطي لوقت تدريب Amazon 670k يقارن بين الحالات c6i.8xlarge مقابل c7g.8xlarge

يلخص الجدول التالي وقت التدريب ودقة الاختبار لكل معالج/معالج متخصص (GPU).

المعالج محرك وقت (فترات) التدريب دقة الاختبار
إنتل آيس ليك (c6i.8xlarge) BOLT 1470 33.6
AWS Graviton3 (c7g.8xlarge) BOLT 935 33.6
نفيديا T4G (g5g.8xlarge) TensorFlow 7550 33.6
نفيديا T4G (g5g.8xlarge) PyTorch 5130 33.6

التقييم 2: تحليل مشاعر قطبية الصرخة

في تقييمنا الثاني، نركز على الشعبية الصرخة قطبية معيار تحليل المشاعر، والذي يتضمن تصنيف المراجعة على أنها إيجابية أو سلبية. في هذا التقييم، قمنا بمقارنة الذكاء الاصطناعي الثالث المحولات العميقة العالمية (UDT) نموذج ضد صقلها ديستيلبيرت الشبكة، وهي نموذج لغة مضغوط تم تدريبه مسبقًا يحقق أداءً متطورًا مع تقليل زمن الوصول للاستدلال. نظرًا لأن الضبط الدقيق لنماذج DistilBERT على وحدة المعالجة المركزية قد يستغرق وقتًا طويلاً للغاية (عدة أيام على الأقل)، فإننا نقارن النماذج المستندة إلى وحدة المعالجة المركزية الخاصة بـ ThirdAI مع DistilBERT المضبوطة بدقة على وحدة معالجة الرسومات. نقوم بتدريب جميع النماذج بحجم دفعة يبلغ 256 لمرور واحد عبر البيانات (عصر واحد). نلاحظ أنه يمكننا تحقيق دقة أعلى قليلاً باستخدام BOLT من خلال تمريرات إضافية عبر البيانات، لكننا نقتصر على تمريرة واحدة في هذا التقييم من أجل الاتساق.

كما هو موضح في الشكل التالي، تعمل AWS Graviton3 مرة أخرى على تسريع تدريب نموذج UDT الخاص بـ ThirdAI بشكل كبير. علاوة على ذلك، فإن UDT قادر على تحقيق دقة اختبار مماثلة لـ DistilBERT بجزء صغير من وقت التدريب ودون الحاجة إلى وحدة معالجة الرسومات. ونلاحظ أنه كان هناك أيضًا عمل حديث في تحسين الضبط الدقيق قطبية Yelp على وحدات المعالجة المركزية (CPU). ومع ذلك، لا تزال نماذجنا تحقق مكاسب أكبر في الكفاءة وتتجنب تكلفة التدريب المسبق، وهو أمر كبير ويتطلب استخدام مسرعات الأجهزة مثل وحدات معالجة الرسومات.

وقت التدريب على Yelp Polarity C7g vs c6i

يلخص الجدول التالي وقت التدريب ودقة الاختبار وزمن الوصول للاستدلال.

المعالج محرك الموديل وقت (فترات) التدريب دقة الاختبار زمن الوصول الاستدلالي (ملي ثانية)
إنتل آيسيليك (c6i.8xlarge) BOLT UDT 47 93.2 <1
جرافتون 3 (c7g.8xlarge) BOLT UDT 29 92.9 <1
وحدة معالجة الرسومات T4G (g5g.8xlarge) TensorFlow ديستيلبيرت 4200 93.3 8.7
وحدة معالجة الرسومات T4G (g5g.8xlarge) PyTorch ديستيلبيرت 3780 93.4 8.3

التقييم 3: تصنيف النص متعدد الفئات (DBPedia)

في تقييمنا النهائي، نركز على مشكلة تصنيف النص متعدد الفئات، والذي يتضمن تعيين تسمية لنص إدخال معين من مجموعة مكونة من أكثر من فئتين للمخرجات. نحن نركز على DBedia المعيار، والذي يتكون من 14 فئة الإخراج الممكنة. مرة أخرى، نرى أن AWS Graviton3 يعمل على تسريع أداء UDT مقارنة بمثيل Intel المشابه بنسبة 40% تقريبًا. نرى أيضًا أن BOLT يحقق نتائج مماثلة للنموذج القائم على المحولات DistilBERT الذي تم ضبطه بدقة على وحدة معالجة الرسومات مع تحقيق زمن وصول أقل من مللي ثانية.

وقت تدريب ThirdAI BOLT على c7g مقابل c6i

يلخص الجدول التالي وقت التدريب ودقة الاختبار وزمن الوصول للاستدلال.

المعالج محرك الموديل وقت (فترات) التدريب دقة الاختبار زمن الوصول الاستدلالي (ملي ثانية)
إنتل آيسيليك (c6i.8xlarge) BOLT UDT 23 98.23 <1
جرافتون 3 (c7g.8xlarge) BOLT UDT 14 98.10 <1
وحدة معالجة الرسومات T4G (g5g.8xlarge) TensorFlow ديستيلبيرت 4320 99.23 8.6
وحدة معالجة الرسومات T4G (g5g.8xlarge) PyTorch ديستيلبيرت 3480 99.29 8

ابدأ مع ThirdAI على AWS Graviton

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

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

وفي الختام

في هذا المنشور، بحثنا في إمكانية قيام معالج AWS Graviton3 بتسريع تدريب الشبكة العصبية لمحرك التعلم العميق الفريد القائم على وحدة المعالجة المركزية الخاص بـ ThirdAI. تشير معاييرنا الخاصة بمقاييس البحث وتصنيف النصوص والتوصيات إلى أن AWS Graviton3 يمكنه تسريع أعباء عمل تدريب نموذج ThirdAI بنسبة 30-40% مقارنة بمثيلات x86 المماثلة مع تحسين أداء السعر بنسبة 50% تقريبًا. علاوة على ذلك، نظرًا لأن مثيلات AWS Graviton3 متوفرة بتكلفة أقل من أجهزة Intel وNVIDIA المماثلة وتمكين أوقات تدريب واستدلال أقصر، يمكنك أيضًا إطلاق العنان لقيمة نموذج استخدام AWS للدفع عند الاستخدام باستخدام تكلفة أقل الآلات لفترات زمنية أقصر.

نحن متحمسون جدًا للتوفير في السعر والأداء الذي توفره AWS Graviton3 وسنتطلع إلى نقل هذه التحسينات إلى عملائنا حتى يتمكنوا من الاستمتاع بتدريب أسرع على التعلم الآلي والاستدلال مع الأداء المحسن على وحدات المعالجة المركزية منخفضة التكلفة. باعتبارنا عملاء AWS أنفسنا، نحن سعداء بالسرعة التي تتيح لنا بها AWS Graviton3 تجربة نماذجنا، ونتطلع إلى استخدام المزيد من ابتكارات السيليكون المتطورة من AWS في المستقبل. الدليل الفني لجرافيتون يعد موردًا جيدًا يجب مراعاته أثناء تقييم أعباء عمل ML لديك لتشغيلها على Graviton. يمكنك أيضًا تجربة مثيلات Graviton t4g تجربة مجانية.

المحتوى والآراء الواردة في هذا المنشور تخص مؤلف الطرف الثالث ولا تتحمل AWS مسؤولية محتوى هذا المنشور أو دقته. في وقت كتابة المدونة، كانت النسخة الأحدث هي c6i، وبالتالي تمت المقارنة مع مثيلات c6i.


عن المؤلف

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

ثارون مديني - ثارون ميديني هو المؤسس المشارك والمدير التنفيذي للتكنولوجيا في شركة ThirdAI Corp. وقد حصل على درجة الدكتوراه في "خوارزميات التجزئة للبحث واسترجاع المعلومات" في جامعة رايس. قبل انضمامه إلى ThirdAI، عمل ثارون في Amazon وTarget. حصل ثارون على العديد من الجوائز لأبحاثه، بما في ذلك زمالة معهد كين كينيدي BP، ومنحة الجمعية الأمريكية للمهندسين الهنود، وزمالة الدراسات العليا بجامعة رايس.

أنشومالي شريفاستافا – أنشومالي شريفاستافا أستاذ مشارك في قسم علوم الكمبيوتر بجامعة رايس. وهو أيضًا المؤسس والرئيس التنفيذي لشركة ThirdAI Corp، وهي الشركة التي تعمل على إضفاء الطابع الديمقراطي على الذكاء الاصطناعي لتسويق الأجهزة من خلال ابتكارات البرمجيات. تشمل اهتماماته البحثية الواسعة الخوارزميات الاحتمالية للتعلم العميق المقتصد في الموارد. في عام 2018، اختارته مجلة Science News كواحد من أفضل 10 علماء تحت سن 40 عامًا تستحق المتابعة. حصل على جائزة CAREER من مؤسسة العلوم الوطنية، وجائزة الباحث الشاب من مكتب القوات الجوية للبحث العلمي، وجائزة أبحاث التعلم الآلي من أمازون، وجائزة أبحاث علوم البيانات من Adobe. لقد فاز بالعديد من الجوائز الورقية، بما في ذلك جوائز أفضل ورقة في NIPS 2014 وMLSys 2022، بالإضافة إلى جائزة الورق الأكثر قابلية للتكرار في SIGMOD 2019. وقد تمت تغطية عمله في تقنيات التعلم الآلي الفعالة على وحدات المعالجة المركزية (CPU) من قبل الصحافة الشعبية بما في ذلك وول ستريت جورنال، نيويورك تايمز، تك كرانش، إن دي تي في، إلخ.

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

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