معايير gpu للتعلم العميق

نحن نقوم باستمرار بتدريب النماذج اللغوية لعملنا. يستخدم فريقنا العشرات من بطاقات الفيديو المختلفة المختارة لمهام مختلفة: في مكان ما نحتاج إلى محطة DGX قوية، وفي مكان ما تكفي بطاقة ألعاب قديمة مثل RTX 2080Ti. يمكن أن يؤثر اختيار وحدة معالجة الرسومات المثالية للتدريب النموذجي بشكل كبير على سرعة العملية وفعاليتها من حيث التكلفة.

المثير للاهتمام هو أن هناك عددًا لا بأس به من المقالات على الإنترنت مع مقارنة GPU للتعلم الآلي، ولكن القليل جدًا منها يركز على السرعة للتدريب على نماذج اللغة. في الغالب تم العثور على اختبارات الاستدلال فقط. عندما تم إصدار شريحة H100 الجديدة، ذكر تقرير NVidia أنها كانت أسرع بما يصل إلى تسع مرات من شريحة A100 في التدريب، ولكن بالنسبة لمهامنا، كانت البطاقة الجديدة أسرع بنسبة 90% فقط من البطاقة القديمة. بالمقارنة، كان لدى موفري الخدمات السحابية لدينا فرق سعر 2x بين وحدات معالجة الرسومات هذه، لذلك لم يكن هناك أي فائدة من التحول إلى H100 الجديد لتوفير المال.

بالإضافة إلى ذلك، قمنا باختبار محطة DGX، والتي تتكون من 8 بطاقات رسومات A100 بسعة 80 جيجابايت وتبلغ تكلفتها 10 آلاف دولار شهريًا. بعد الاختبار، أصبح من الواضح أن نسبة السعر/الأداء لهذه المحطة لا تناسبنا على الإطلاق، ومقابل هذه الأموال، يمكننا الحصول على 66 x RTX 3090، والتي ستكون في المجمل أكثر فائدة.

تحتوي نماذج لغة الترجمة لدينا على ما يصل إلى 500 مليون معلمة (100 مليون إلى 300 مليون في المتوسط). من الممكن أنه إذا قمنا بزيادة عدد المعلمات بشكل كبير، فإن نسبة السعر/الأداء لـ DGX ستكون أفضل. حاليًا، لا نقوم بتدريب نماذج لغوية كبيرة يمكنها الترجمة بين جميع اللغات بجميع أشكالها مرة واحدة، ولكننا نستخدم نماذج لغوية منفصلة لكل زوج لغوي، على سبيل المثال. الإنجليزية الألمانية. يستغرق كل طراز من هذه الطرازات من 120 إلى 300 ميجابايت.

ومن الجدير بالذكر أن اللغات المختلفة لديها كميات مختلفة من البيانات على شبكة الإنترنت، وفي حين. على سبيل المثال، بالنسبة للغة الإسبانية، يمكنك العثور على 500 مليون جملة مع ترجمات، ولكن عند تدريب نماذج للغات النادرة مثل التبتية، تحتاج إلى اختيار وحدة معالجة رسومات محددة لمهام التعلم الآلي بناءً على البيانات المتاحة. لإنشاء نموذج ترجمة من الإنجليزية إلى الإسبانية، نستخدم خادمًا مزودًا بذاكرة وصول عشوائي 4x RTX 4500 و256 جيجابايت. وفي الوقت نفسه، يمكن تدريب اللغة التبتية على RTX 2080 Ti مع ذاكرة وصول عشوائي سعة 16 جيجابايت، لأنه ليس من المنطقي زيادة تعقيد الشبكة العصبية، ونتيجة لذلك، الحصول على خادم أكثر قوة مع كمية صغيرة من البيانات.

اختيار معالجات الرسومات والأشكال النظرية

تم إجراء التدريب على نموذج اللغة على منصة Data Studio الداخلية لدينا باستخدام إطار عمل OpenNMT-tf. تضمنت هذه المرحلة إعداد البيانات والتدريب على النماذج ومقارنة النماذج مع الترجمة المرجعية. سمح لنا استخدام FP16 بدلاً من FP32 أثناء التدريب بتقليل وقت تدريب نماذج اللغة بشكل كبير دون التقليل من جودة الترجمة، ولكن لم تدعم جميع وحدات معالجة الرسومات لدينا ذلك.

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

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

الجدول 1 - معالجات الرسومات المستخدمة سابقاً ومعلماتها الفنية
 

Number of GPUsGPUVRAM, GCUDAFP16,
TFLOPS
FP32,
TFLOPS
1Tesla V100-SXM2HBM2, 167.031.3316.31
2Tesla V100-SXM2HBM2, 327.031.3315.67
1RTX 4060 TiGDDR6, 88.922.0622.06
1Nvidia A40GDDR6, 488.637.4237.42
2Nvidia A40GDDR6, 968.637.4237.42
1Nvidia A100HBM2, 408.077.9719.49
1Nvidia A100HBM2, 808.077.9719.49
1Nvidia RTX A6000GDDR6, 488.638.7138.71
1Nvidia A10GDDR6, 248.631.2431.24
8Nvidia A10GDDR6, 1928.631.2431.24
1Nvidia H100HBM3, 809.0204.951.22


ملاحظات
1. مع CUDA أكبر من 7.0، فإن استخدام FP16 سيعطي دفعة في سرعة التدريب، اعتمادًا على إصدار CUDA وخصائص بطاقة الرسومات نفسها.
2. إذا كانت مواصفات بطاقة الرسومات تشير إلى أن نسبة أداء FP16 إلى FP32 أكبر من 1 إلى 1، فسيتم ضمان استخدام الدقة المختلطة لزيادة سرعة التدريب بالمبلغ المحدد في المواصفات. على سبيل المثال، بالنسبة لـ Quadro RTX 6000، فإن قيمة FP16 TFLOPS البالغة 32.62 (2:1) ستؤدي إلى تسريع التمرين مرتين على الأقل (2.4 مرة في الممارسة العملية)

الجدول 2 - نماذج GPU المستخدمة حاليًا وخصائصها الرئيسية
 

Number of GPUs in useGPUVRAM, GCUDAFP16,
TFLOPS
FP32,
TFLOPS
1Quadro RTX 6000GDDR6, 247.532.6216.31
2Quadro RTX 6000GDDR6, 487.532.6216.31
4Quadro RTX 6000GDDR6, 967.532.6216.31
2Nvidia TITAN RTXGDDR6, 487.532.6216.31
4Nvidia RTX A4500GDDR6, 968.623.6523.65
1Nvidia GeForce RTX 3090GDDR6X, 248.635.5835.58
1Nvidia GeForce RTX 3070GDDR6, 88.620.3120.31

* - قيم FP16 وTFLOPS وFP32 وTFLOPS مأخوذة من المواصفات لكل وحدة معالجة رسومات

عملية التدريب والاختبار لوحدة معالجة الرسومات

تم تدريب النماذج باستخدام مجموعة من 18 وحدة معالجة رسومات. في عملية تدريب الشبكة العصبية، استخدمنا العديد من الأزواج اللغوية (أكثر من مائة لغة). ساعدت اختبارات GPU في تحديد الأجهزة التي تعمل بشكل أفضل لمهام محددة. أثناء تدريب أزواجنا اللغوية، تم أخذ معلمات الشبكة العصبية التالية كأساس
 

  • حجم المفردات = 30000
  • نومونيتس = 768
  • طبقات = 6
  • الرؤوس = 16
  • البعد الداخلي = 4 096


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

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

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

مع الأخذ في الاعتبار المعلمات المذكورة أعلاه للشبكة العصبية، تم عرض أفضل وقت من الجدول الأول بواسطة GPU Nvidia H100 مع وقت تعلم قدره 22 دقيقة وتم عرض الوقت المتوسط بواسطة وحدة معالجة الرسومات من نفس العلامة التجارية GeForce RTX 4060 Ti مع وقت تعلم قدره 72 دقيقة والمركز الأخير تم بواسطة وحدة معالجة الرسومات Tesla V100-SXM 2 مع وقت تعلم قدره 140 دقيقة.

كانت هناك أيضًا ثماني بطاقات Nvidia A10 في اختبار GPU بمنحنى تعلم يبلغ 20 دقيقة و28 ثانية، وبطاقتي Nvidia A40 بزمن قدره 56 دقيقة، وبطاقتي Tesla V100-SXM تم تسجيلهما في 86 دقيقة. يمكن أن يؤدي التطبيق المتزامن لبطاقات متعددة من نفس السلسلة من وحدات معالجة الرسومات إلى تسريع عملية تدريب النماذج وإظهار نفس الوقت تقريبًا مع وحدات معالجة الرسومات التي تتمتع بقدرات أعلى، ولكن مثل هذه التقنية قد لا تكون عقلانية ماليًا وإجرائيًا بدرجة كافية. ويمكن ملاحظة نتائج قياسات سرعة التعلم في الجدول رقم 3.

الجدول 3 - قياسات وقت التدريب على الخرائط الرسومية المستخدمة سابقاً
 

Using the alignment mechanism
Effective batch size = 100 000
FP 32
Number of GPUs in useGPUApproximate speed (min. sec),
1,000 steps
Batch size in use
8Nvidia A1020,286 250
1Nvidia H1002225 000
1A100 (80 Gb)4025 000
1A100 (40 Gb)5615 000
2Nvidia A405612 500
1RTX A600068,2512 500
1GeForce RTX 4060 Ti724 167
1Nvidia A4082,0812 500
2Tesla V100-SXM864 167
1Nvidia A10104,505 000
1Tesla V100-SXM21404 167


بعد ذلك، دعونا نجري تحليلًا مقارنًا لدواسات الغاز الرسومية المستخدمة حاليًا (الجدول 2). بالنسبة لهذه المجموعة من معالجات الرسومات، تم إجراء قياسات السرعة باستخدام محاذاة الآلية، وكذلك استخدام FP16 وFP32. سيتم عرض قياسات السرعة بما في ذلك هذه الآلية والدقة المختلطة أدناه في الجدولين 4 و5 على التوالي.

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

تحتل وحدة معالجة الرسومات Quadro RTX 6000 series التي تبلغ مدة تعلمها 47 دقيقة المركز الثاني. وتجدر الإشارة إلى أن سرعة التدريب هذه مشروطة عكسيا بعدد وحدات المعالج المستخدم، وهو ما يساوي أربع وحدات. إن استخدام وحدة معالجة رسومات واحدة فقط من هذا القبيل سيؤدي إلى فقدان السرعة بحوالي 3.2 مرة وبالتالي سيكون حوالي 153 دقيقة ويضعها في المركز الأخير.

تم أخذ السطر الثالث بواسطة وحدة معالجة الرسومات من سلسلة TITAN RTX بزمن قدره 75 دقيقة و 85 ثانية. ترجع درجة سرعة التعلم هذه إلى استخدام معالجين، مما أدى إلى تقليل وقت تدريب النموذج.

إن الرائد الذي لا جدال فيه من حيث سرعة التدريب في عدد وحدة واحدة سيكون بالتأكيد وحدة معالجة الرسومات من سلسلة GeForce RTX 3090 بزمن قدره 78 دقيقة و 26 ثانية. ستؤدي زيادة عدد وحدات وحدة معالجة الرسومات هذه إلى تسريع سرعة تدريب النموذج، والتي ستتجاوز بوضوح جميع نماذج وحدة معالجة الرسومات المذكورة أعلاه. يمكن الاطلاع على البيانات المتعلقة بقياسات وقت التدريب النموذجية في الجدول 4.

الجدول 4 - تحليل مقارن لسرعة التدريب على نموذج اللغة على وحدات معالجة الرسومات المستخدمة سابقًا
 

Using the alignment mechanism
Effective batch size = 100 000
FP 32
Number of GPUs in useGPUApproximate speed (min. sec),
1,000 steps
Batch size in use
4Nvidia RTX A4500315 000
4Quadro RTX 6000476 250
2Nvidia TITAN RTX75,856 250
1GeForce RTX 309078,266 250
2Quadro RTX 6000886 250
1GeForce RTX 3070104,172 000
1Quadro RTX 60001536 250


تم إجراء قياسات سرعة التدريب التالية باستخدام FP16. بالمقارنة مع FP32، يسمح نصف الدقة بتقليل كمية الذاكرة المستهلكة أثناء التدريب على النموذج وتسريع الحساب على وحدة معالجة الرسومات. ستكون دقة التمثيل أقل من استخدام FP32.

بقياس وقت تدريب النماذج باستخدام FP32 من الجدول السابق، يمكننا القول أن وقت تدريب الشبكة العصبية انخفض بمقدار مرتين تقريبًا. بناءً على نتائج قياس الأداء، يمكننا أن نلاحظ من معايير وحدة معالجة الرسومات للتعلم الآلي في الجدول 4 أن مواضع وحدات معالجة الرسومات ظلت دون تغيير إلى حد كبير. انتقلت بطاقة سلسلة Quadro RTX 6000 من المركز الخامس إلى المركز السادس، متغلبة على وحدة معالجة الرسوميات GeForce RTX 3090 بفارق 96 ثانية. وتظهر الأرقام النهائية في الجدول 5.

الجدول 5 - تحليل مقارن لسرعة التدريب على نموذج اللغة على وحدات معالجة الرسومات المستخدمة سابقًا
 

Using the alignment mechanism
Effective batch size = 100 000
FP 16
Number of GPUs in useGPUApproximate speed (min. sec),
1,000 steps
Batch size in use
4Nvidia RTX A450015,8110 000
4Quadro RTX 600020,3412 500
2Nvidia TITAN RTX32,686 250
2Quadro RTX 600037,9310 000
1GeForce RTX 309038,8910 000
1GeForce RTX 307048,512 500
1Quadro RTX 600052,5610 000

الأسئلة المتداولة (الأسئلة الشائعة)

هل يستحق شراء وحدة معالجة الرسومات للتعلم العميق؟

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

ما هي وحدة معالجة الرسومات الأفضل للتعلم العميق؟

غالبًا ما يُعتبر NVIDIA A100 الخيار الأفضل للتعلم العميق، حيث يوفر أداءً استثنائيًا وذاكرة للنماذج الكبيرة. بالنسبة للمستخدمين المهتمين بالميزانية، يوفر NVIDIA RTX 3090 إمكانات قوية لنماذج التدريب بشكل فعال.

هل AMD أو NVIDIA أفضل للتعلم العميق؟

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

هل تساعد GPU في البرمجة اللغوية العصبية؟

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

المزيد من القراءات الرائعة تنتظر

ما هو التعرف على الكلام محليًا؟

ما هو التعرف على الكلام محليًا؟

September 27, 2024

تقييم الأهمية الإحصائية في نظام الترجمة

تقييم الأهمية الإحصائية في نظام الترجمة

September 10, 2024

التعرف على الكلام في التسويق

التعرف على الكلام في التسويق

August 23, 2024

اتصل بنا

0/250
* يشير إلى الحقل المطلوب

إن خصوصيتك لها أهمية قصوى بالنسبة لنا. سيتم استخدام بياناتك لأغراض الاتصال فقط.

بريد إلكتروني

مكتمل

لقد تم ارسال طلبك بنجاح

× 
Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site.

We also use third-party cookies that help us analyze how you use this website, store your preferences, and provide the content and advertisements that are relevant to you. These cookies will only be stored in your browser with your prior consent.

You can choose to enable or disable some or all of these cookies but disabling some of them may affect your browsing experience.

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Always Active

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Always Active

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Always Active

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Always Active

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.