TPU (Tensor Processing Unit)
استكشف كيف تسرع وحدات معالجة الموتر (TPUs) تعلم الآلة. تعلم تحسين Ultralytics YOLO26 لـ Edge TPUs والتدريب السحابي لأقصى سرعة.
وحدة معالجة الموثوقية Tensor Processing Unit (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 Pods لتدريب نماذج اللغات الكبيرة (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 Accelerator. لمزيد من التفاصيل حول نشر، يمكن أن يكون استكشاف وثائق تكامل TFLite مفيداً للغاية.






