أخبار عربية
أحدث
الذكاء الاصطناعي والتكنولوجيا

Tensor Cores وTriton والشبكات المتبقية ومحولات الرؤية

تفصيل توضيحي لشريحة CPU من ثمانينيات القرن العشرين، وليس لوحدة GPU.
تفصيل توضيحي لشريحة CPU من ثمانينيات القرن العشرين، وليس لوحدة GPU.

بين عام 2015 واليوم، تطور التعلم العميق من شيفرة GPU بلغة C++ المضبوطة يدويا والشبكات الالتفافية إلى محركات مصفوفات مسرعة عتاديا وبنى Transformer. تحدد هذه المحطات الثلاث كيفية هندسة نماذج الذكاء الاصطناعي الحديثة وتوسيع نطاقها.

1. تطور CUDA الحديث: Tensor Cores وOpenAI Triton

في عام 2012، كتب Alex Krizhevsky شيفرة CUDA C++ منخفضة المستوى (cuda-convnet) لحساب عمليات الفاصلة العائمة المفردة عبر أنوية CUDA القياسية. اليوم، يعتمد التعلم العميق على عتاد مصفوفات متخصص ومترجمات عالية المستوى.

  • من أنوية CUDA إلى Tensor Cores. تنفذ أنوية CUDA التقليدية عملية ضرب وجمع قياسية واحدة في كل دورة ساعة. وبدءا من معمارية Volta (2017)، قدمت NVIDIA أنوية Tensor Cores التي تضرب مصفوفات صغيرة كاملة (مثل كتل 4×4 أو 16×16) في دورة ساعة واحدة. تستخدم Tensor Cores الحديثة تنسيقات مختلطة الدقة مثل FP16 وBF16 وFP8، مقدمة تسريعات بنحو رتبة مقدار في ضرب المصفوفات.
  • cuDNN والاختيار التلقائي للنواة. بدلا من أن يكتب الباحثون التفافات مخصصة بلغة C++، تحتوي مكتبة cuDNN من NVIDIA الآن على مئات نوى لغة التجميع المترجمة مسبقا. وأثناء التشغيل، تقيس أطر عمل مثل PyTorch أداء خوارزميات مختلفة لشكل الموتر المحدد لديك وتختار تلقائيا أسرع إجراء Tensor Core.
  • OpenAI Triton (برمجة GPU المعتمدة على Python). تتطلب كتابة CUDA C++ الخام إدارة فهرسة الخيوط وتعارضات بنوك الذاكرة المشتركة ومزامنة warp يدويا. يتيح Triton، الذي أصدرته OpenAI، للباحثين كتابة نوى GPU عالية الأداء مباشرة بلغة Python. تحدد العمليات على مستوى الكتلة (بلاطات البيانات)، ويتولى مترجم Triton تلقائيا تجميع عمليات الوصول إلى الذاكرة وتقسيم الذاكرة المشتركة إلى بلاطات وجدولة Tensor Core، وغالبا ما يضاهي CUDA C++ المضبوطة يدويا أو يتفوق عليها.

2. وصلات التخطي في ResNet وتدفق الانتشار العكسي

قبل ResNet (2015)، كان تكديس أكثر من ~20 طبقة التفافية يسبب ارتفاعا حادا في خطأ التدريب. فعندما تنتقل التدرجات إلى الخلف عبر عشرات خطوات الضرب، تتقلص نحو الصفر (تلاشي التدرجات) أو تصبح غير مستقرة.

  • تعلم البواقي بدلا من المخرجات الخام. في كتلة شبكة قياسية، تحاول الطبقات المكدسة تعلم تحويل مباشر H(x) من المدخل x. تقدم ResNet وصلة تخط (اختصار هوية) تضيف المدخل الأصلي x مباشرة إلى خرج الكتلة:

y=F(x)+x

هنا، تمثل F(x) الطبقات الالتفافية المكدسة. وبدلا من إعادة بناء التمثيل بأكمله من الصفر، لا تحتاج الطبقات إلا إلى تعلم الباقي (التعديل الصغير F(x) = y - x). وإذا لم تكن هناك حاجة إلى طبقة، تستطيع الشبكة دفع F(x) بسهولة نحو الصفر، تاركة مسارا نظيفا يمرر الهوية كما هي.

  • طريق متصل للتدرجات بلا انقطاع. أثناء الانتشار العكسي، تحسب قاعدة السلسلة تدرج الخسارة (L) بالنسبة إلى المدخل x:

(∂ L)/(∂ x)=(∂ L)/(∂ y)((∂ F(x))/(∂ x)+1)

بسبب الحد + 1 الذي ينشئه اختصار الهوية، يتدفق التدرج القادم من المراحل اللاحقة ((∂ L)/(∂ y)) مباشرة إلى الخلف نحو الطبقات السابقة، من دون أن تصغره مصفوفات الأوزان الصغيرة في (∂ F(x))/(∂ x). وهذا يتيح انتشار التدرجات بوضوح عبر أكثر من 100 أو حتى أكثر من 1,000 طبقة.

3. الانتقال من CNNs إلى محولات الرؤية (ViT)

طوال نحو عقد بعد AlexNet، هيمنت الشبكات العصبية الالتفافية (CNNs) على الرؤية الحاسوبية عبر تمرير مرشحات محلية صغيرة على الصور. وفي عام 2020، قدمت Google محول الرؤية (ViT)، مكيفة بنية Transformer من معالجة اللغة الطبيعية للصور.

السمةالشبكات العصبية الالتفافية (CNNs)محولات الرؤية (ViT)
معالجة المدخلاتتعالج شبكة الصورة ثنائية الأبعاد كاملة باستخدام مرشحات منزلقة (مثل 3×3).تقسم الصورة إلى رقع ثابتة الحجم (مثل 16×16 بكسلا) وتفردها إلى تسلسل من الرموز.
المجال الاستقباليمحلي أولا. لا ترى الطبقات المبكرة إلا البكسلات المجاورة؛ ويتشكل السياق الشامل ببطء في الطبقات العميقة.شامل فورا. يربط الانتباه الذاتي كل رقعة من الصورة بكل رقعة أخرى منذ الطبقة 1.
التحيز الاستقرائيمرتفع. تساعد الافتراضات المضمنة بشأن الثبات تجاه الإزاحة والمحلية المكانية ثنائية الأبعاد شبكات CNNs على التعلم جيدا من مجموعات بيانات أصغر.منخفض. تفتقر إلى قواعد مكانية ثنائية الأبعاد مضمنة (وتعتمد على التضمينات الموضعية)، مما يتطلب مجموعات بيانات هائلة لتعلم البنية البصرية.
التوسع العتاديتعتمد على نوى التفاف متخصصة وأنماط معقدة للوصول إلى الذاكرة.تعتمد تقريبا بالكامل على عمليات ضرب المصفوفات الكثيفة (GEMMs)، التي تشغل Tensor Cores في وحدات GPU الحديثة بكامل طاقتها وبأقصى كفاءة.
  • لماذا هيمنت ViTs على الذكاء الاصطناعي الحديث. مع أن CNNs تظل فعالة للأجهزة المحمولة والطرفية الخفيفة، فإن محولات الرؤية تتوسع بشكل أفضل بكثير عند تدريبها على مئات الملايين من الصور. وإضافة إلى ذلك، لأن ViTs تمثل الصور كتسلسلات رموز، وهي الصيغة نفسها تماما المستخدمة للنص والصوت، فقد مكنت نماذج الذكاء الاصطناعي الحديثة متعددة الوسائط (مثل GPT-4o وGemini) من معالجة الرؤية واللغة ضمن بنية موحدة واحدة.

المزيد من الأخبار: الذكاء الاصطناعي والتكنولوجيا