TPU (Tensor Processing Unit)
استكشف كيف تعمل وحدات معالجة الموتر (TPUs) على تسريع التعلم الآلي. تعرّف على كيفية تحسين Ultralytics YOLO26 لوحدات Edge TPU والتدريب السحابي لتحقيق أقصى سرعة.
وحدة معالجة الموترات (TPU) هي دائرة متكاملة خاصة بالتطبيقات (ASIC) صممتها Google خصيصًا لتسريع أعباء عمل التعلّم الآلي (ML). وعلى خلاف المعالجات ذات الأغراض العامة التي تتعامل مع نطاق واسع من مهام الحوسبة، صُممت وحدات TPU من الأساس لتحسين عمليات المصفوفات الضخمة التي تُعد جوهرية لـالشبكات العصبية. ويسمح هذا التركيز المحدد لها بتحقيق معدل نقل عالٍ للغاية وكفاءة استهلاك طاقة مرتفعة، مما يجعلها عنصرًا أساسيًا في بنية الذكاء الاصطناعي (AI) الحديثة، ولا سيما ضمن منظومة Google Cloud. وتؤدي دورًا حيويًا في تقليل الوقت اللازم لتدريب النماذج المعقدة وتشغيل الاستدلال الآني على نطاق واسع.
البنية والوظائف#
تختلف بنية وحدة TPU اختلافًا كبيرًا عن المعالجات التقليدية. ففي حين تتفوق وحدة المعالجة المركزية (CPU) القياسية في المهام التسلسلية والمنطق المعقد، وتستخدم وحدة معالجة الرسومات (GPU) أنوية متوازية للرسومات والحوسبة العامة، تستخدم وحدة TPU بنية المصفوفة الانقباضية. ويتيح هذا التصميم تدفق البيانات عبر آلاف المضاعِفات في الوقت نفسه دون الوصول إلى الذاكرة عند كل عملية. ومن خلال زيادة الكثافة الحوسبية إلى أقصى حد وتقليل زمن الاستجابة، تلائم وحدات TPU على نحو فريد الجبر الخطي المكثف الموجود في تطبيقات التعلّم العميق (DL).
تُحسَّن هذه الأجهزة المتخصصة بدرجة كبيرة للعمل مع أُطر مثل TensorFlow، وتحظى بدعم متزايد من PyTorch، مما يتيح للمطورين تدريب نماذج الأساس الضخمة أو نشر حلول فعالة على الحافة دون إعادة كتابة قواعد التعليمات البرمجية بالكامل.
تمييز وحدات المعالجة#
يُعد فهم مشهد الأجهزة أمرًا بالغ الأهمية لتحسين عمليات التعلّم الآلي (MLOps).
- CPU: «عقل» الحاسوب متعدد الأغراض، وهو مثالي للمعالجة التسلسلية، والمعالجة المسبقة للبيانات، والتعامل مع المنطق المعقد. ويُستخدم غالبًا في مسارات زيادة البيانات، لكنه أبطأ في العمليات الحسابية الثقيلة على المصفوفات.
- GPU: بُنيت وحدات GPU في الأصل لعرض الصور، وهي المعيار المتبع في المجال لـتدريب النماذج بفضل مرونتها وتوازيها الهائل. وهي ممتازة لتدريب النماذج المرنة مثل Ultralytics YOLO26.
- TPU: مُسرّع مصمم لغرض محدد، يستبدل المرونة بالسرعة الخام في عمليات الموترات. وقد صُمم لتعظيم عمليات الفاصلة العائمة في الثانية (FLOPS) تحديدًا لحسابات الشبكات العصبية، وغالبًا ما يوفر أداءً أفضل لكل واط في أعباء العمل الكبيرة المحددة.
التطبيقات الواقعية#
تُنشر وحدات TPU في بيئات متنوعة، بدءًا من العناقيد السحابية الضخمة ووصولًا إلى أجهزة الحافة الصغيرة.
-
تدريب نماذج اللغة الكبيرة: تستخدم Google عناقيد مترابطة هائلة، تُعرف باسم عُقَد TPU، لتدريب نماذج اللغة الكبيرة (LLMs) مثل PaLM وGemini. ويمكن لهذه الأنظمة معالجة بيتابايتات من بيانات التدريب في جزء من الوقت الذي تحتاج إليه الأجهزة التقليدية، مما يسرّع التطورات في الذكاء الاصطناعي التوليدي.
-
الذكاء الاصطناعي على الحافة وإنترنت الأشياء: تنقل Coral Edge TPU هذا التسريع إلى الأجهزة منخفضة الطاقة. فهي تتيح تطبيقات فعالة في الرؤية الحاسوبية (CV)، مثل تشغيل اكتشاف الأجسام على خط تصنيع لتحديد العيوب محليًا. ويسمح ذلك باتخاذ القرارات فورًا دون الاعتماد على الاتصال بالسحابة، مع الحفاظ على النطاق الترددي والخصوصية.
استخدام وحدات TPU مع Ultralytics#
يمكن للمطورين الاستفادة من تسريع TPU لنماذج Ultralytics، ولا سيما عند استخدام منصة Ultralytics للتدريب السحابي أو تصدير النماذج للنشر على الحافة. فعلى سبيل المثال، تتطلب Edge TPU تكميم النماذج وتجميعها خصيصًا وفق بنيتها.
يوضح المثال التالي كيفية تصدير نموذج Ultralytics YOLO26 إلى تنسيق TFLite، وهي خطوة مسبقة مطلوبة قبل التجميع لـ Edge TPU:
from ultralytics import YOLO
# Load the latest lightweight YOLO26 nano model
model = YOLO("yolo26n.pt")
# Export the model to TFLite format
# This creates a '.tflite' file suitable for mobile and edge deployment
# Set int8=True for quantization, which is often required for Edge TPU performance
model.export(format="tflite", int8=True)بعد التصدير، يمكن تجميع النموذج لاحقًا لـ Edge TPU باستخدام مترجم Edge TPU، مما يتيح تشغيله بكفاءة على أجهزة مثل Raspberry Pi المزودة بمسرّع Coral USB. ولمزيد من التفاصيل حول النشر، يمكن أن يكون استكشاف وثائق تكامل TFLite مفيدًا للغاية.









