تعرف على كيفية تسريع الذكاء الاصطناعي بواسطة الدقة النصفية (FP16). اكتشف كيفية تحسين Ultralytics للحصول على استنتاج أسرع وتقليل الذاكرة على وحدات معالجة الرسومات (GPU) والأجهزة الطرفية.
نصف الدقة، التي غالبًا ما يشار إليها بـ FP16، هي تنسيق بيانات عائم يشغل 16 بت من ذاكرة الكمبيوتر، على عكس تنسيق الدقة المفردة القياسي (FP32) الذي يستخدم 32 بت. في سياق الذكاء الاصطناعي و التعلم الآلي، تعد نصف الدقة تقنية تحسين مهمة تُستخدم لتسريع تدريب النموذج والاستدلال مع تقليل استهلاك الذاكرة بشكل كبير. من خلال تخزين القيم الرقمية — مثل أوزان نموذج الشبكة العصبية والتدرجات — باستخدام عدد أقل من البتات، يمكن للمطورين تكييف نماذج أكبر على وحدات معالجةGPU أو تشغيل النماذج الحالية بشكل أسرع. هذا المكسب في الكفاءة ضروري لنشر بنى حديثة ومعقدة مثل YOLO26 على أجهزة محدودة الموارد دون التضحية بالدقة الكبيرة.
لفهم الدقة النصفية، من المفيد مقارنتها بالدقة الكاملة. يخصص الرقم العائم القياسي 32 بت (FP32) المزيد من البتات إلى الأس والمانتيسا، مما يوفر نطاقًا ديناميكيًا واسعًا جدًا ودقة عددية عالية . ومع ذلك، فإن نماذج التعلم العميق معروفة بمقاومتها للأخطاء العددية الصغيرة. غالبًا ما يمكن للشبكات العصبية أن تتعلم بفعالية حتى مع النطاق الديناميكي المحدود والتفاصيل الدقيقة التي يوفرها التنسيق 16 بت.
يؤدي الانتقال إلى الدقة النصفية إلى خفض متطلبات عرض النطاق الترددي للذاكرة إلى النصف. وهذا يسمح بزيادة حجم الدُفعات أثناء التدريب، مما يساهم في استقرار تحديثات التدرج وتسريع عملية التدريب بشكل عام. تم تحسين مسرعات الأجهزة الحديثة، مثل Tensor NVIDIA خصيصًا لأداء عمليات ضرب المصفوفات في FP16 بسرعات أعلى بكثير من FP32.
يوفر اعتماد الدقة النصفية العديد من المزايا الملموسة لممارسي الذكاء الاصطناعي:
تعد الدقة النصفية شائعة في أنظمة الذكاء الاصطناعي على مستوى الإنتاج. فيما يلي مثالان ملموسان:
الكشف عن الكائنات في الوقتNVIDIA علي على الأجهزة الطرفية:لنفترض أن هناك نظام كاميرات أمنية يعمل بنظام Ultralytics YOLO26 detect . يتيح نشر النموذج في FP16 تشغيله بسلاسة على شريحة مدمجة مثل NVIDIA Jetson أو Raspberry Pi AI Kit. يضمن الحمل الحسابي المنخفض قدرة النظام على معالجة موجزات الفيديو في وضع الاستدلال في الوقت الفعلي دون تأخير، وهو أمر بالغ الأهمية لإصدار التنبيهات في الوقت المناسب.
نشر نماذج اللغة الكبيرة (LLM):تحتوي نماذج الذكاء الاصطناعي التوليدي، مثل GPT-4 أو متغيرات Llama، على مليارات المعلمات. يتطلب تحميل هذه النماذج بدقة كاملة (FP32) كميات هائلة من ذاكرة الخادم التي غالبًا ما تكون باهظة التكلفة. من خلال تحويل هذه النماذج إلى FP16 (أو حتى تنسيقات أقل)، يمكن لمزودي الخدمات السحابية تقديم نماذج أساسية لآلاف المستخدمين في وقت واحد، مما يجعل خدمات مثل روبوتات الدردشة وتوليد المحتوى الآلي مجدية اقتصاديًا.
بينما تهدف كلتا التقنيتين إلى تقليل حجم النموذج، من المهم التمييز بين "نصف الدقة" و تكمية النموذج.
إن ultralytics تسهل المكتبة استخدام الدقة النصفية. أثناء التنبؤ، يمكن للنموذج
التحول تلقائيًا إلى الدقة النصفية إذا كان الجهاز يدعمها، أو يمكن طلبها بشكل صريح.
Here is a Python example demonstrating how to load a
يولو26 النموذج وإجراء الاستدلال باستخدام نصف الدقة.
لاحظ أن التشغيل في half=True يتطلب عادةً وحدة معالجة رسومات ( GPU CUDA.
import torch
from ultralytics import YOLO
# Check if CUDA (GPU) is available, as FP16 is primarily for GPU acceleration
device = "cuda" if torch.cuda.is_available() else "cpu"
# Load the latest YOLO26n model
model = YOLO("yolo26n.pt")
# Run inference on an image with half-precision enabled
# The 'half=True' argument tells the engine to use FP16
results = model.predict("https://ultralytics.com/images/bus.jpg", device=device, half=True)
# Print the device and precision status
print(f"Inference device: {results[0].orig_img.shape}, Speed: {results[0].speed}")
بالنسبة للمستخدمين الذين يديرون مجموعات البيانات وخطوط التدريب، تتولى Ultralytics العديد من عمليات التحسين هذه تلقائيًا في السحابة، مما يسهل الانتقال من التعليق التوضيحي إلى نشر النموذج المحسّن.
لمعرفة المزيد عن التنسيقات الرقمية وتأثيرها على الذكاء الاصطناعي، راجع وثائق أداء التعلمNVIDIA بشأن Tensor . لفهم أوسع لكيفية انسجام هذه التحسينات مع دورة حياة التطوير، اقرأ عن عمليات التعلم الآلي (MLOps).
بالإضافة إلى ذلك، قد يبحث المهتمون بالمفاضلات بين استراتيجيات التحسين المختلفة في التقليم، الذي يزيل الاتصالات بدلاً من تقليل دقة البتات ، أو يستكشفون معيار IEEE لعمليات الحساب العائمة (IEEE 754) للحصول على المواصفات الفنية للحساب الرقمي. يساعد فهم هذه الأساسيات في اتخاذ قرارات مستنيرة عند تصدير النماذج إلى تنسيقات مثل ONNX أو TensorRT لبيئات الإنتاج.