SNN4Agents: إطار عمل لتطوير الشبكات العصبية النبضية ثلاثية الأبعاد ذات الكفاءة العالية في استهلاك الطاقة للوكلاء المستقلين

Rachmad Vidya Wicaksana Putra, Alberto Marchisio, Muhammad Shafique

مُلخّص

أظهرت الاتجاهات الحديثة أن الوكلاء المستقلين، مثل المركبات الأرضية المستقلة (AGVs)، والطائرات بدون طيار (UAVs)، والروبوتات المتنقلة، تساهم في تحسين إنتاجية الإنسان في تنفيذ المهام المتنوعة. ومع ذلك، ونظرًا لأن هذه الوكلاء غالبًا ما تعمل ببطاريات محمولة، فهي تتطلب استهلاكًا منخفضًا جدًا للطاقة/القدرة لتحقيق عمر تشغيلي طويل. لمعالجة هذا التحدي، ظهرت الحوسبة العصبية المستوحاة من الأحياء كحل واعد، حيث تُستخدم الشبكات العصبية النبضية (SNNs) لمعالجة النبضات القادمة من الكاميرات القائمة على الأحداث أو تحويل البيانات قبل المعالجة لأداء الحسابات الموزعة بكفاءة. ومع ذلك، فإن دراسات نشر SNN للوكلاء المستقلين لا تزال في مراحلها المبكرة. وبالتالي، لم يتم تحديد مراحل التحسين لتمكين نشر SNN ثلاثية الأبعاد بكفاءة للوكلاء المستقلين بشكل منهجي. بناءً على ذلك، نقترح إطار عمل جديد يُسمى SNN4Agents يتكون من مجموعة من تقنيات التحسين لتصميم الشبكات العصبية النبضية ثلاثية الأبعاد ذات الكفاءة العالية في استهلاك الطاقة والموجهة لتطبيقات الوكلاء المستقلين. يستخدم SNN4Agents تقنيات تقليل الأوزان، وتقليل الخطوات الزمنية، وتقليل نافذة الانتباه لتحسين كفاءة استهلاك الطاقة، وتقليل بصمة الذاكرة، وتحسين زمن المعالجة، مع الحفاظ على دقة عالية. في التقييم، نحقق في حالات استخدام التعرف على السيارات القائمة على الأحداث، ونستكشف الموازنة بين الدقة، والزمن، والذاكرة، واستهلاك الطاقة. تظهر النتائج التجريبية أن إطار العمل المقترح يمكن أن يحافظ على دقة عالية (84.12%) مع توفير في الذاكرة بنسبة 68.75%، وتسريع بمقدار 3.58 مرة، وتحسين في كفاءة استهلاك الطاقة بمقدار 4.03 مرة مقارنة بالعمل الرائد في مجال مجموعة بيانات NCARS، مما يمكّن من نشر SNN ثلاثي الأبعاد عالي الكفاءة في استهلاك الطاقة للوكلاء المستقلين.

الكلمات المفتاحية:

الحوسبة العصبية الشكلية، الشبكات العصبية النبضية، الوكلاء المستقلون، بيانات السيارات، المعالج العصبي الشكلي، كفاءة الطاقة.

مقدمة

في السنوات الأخيرة، ازداد الاهتمام بتطبيق الذكاء الاصطناعي العصبي المستوحى من الشبكات العصبية النبضية للوكلاء المستقلين (المعروفين بـ الوكلاء المستقلين المعتمدين على الشبكات العصبية النبضية) بشكل متسارع. السبب هو أن الشبكات العصبية النبضية يمكن أن تقدم دقة عالية بفضل آلية التعلم الفعالة (Ref_Rathi_SNNsurvey_CSUR23, Ref_Putra_SpikeDyn_DAC21)، وزمن حساب منخفض بفضل ترميز النبضات الفعال (Ref_Guo_NeuralCoding_FNINS21)، واستهلاك طاقة/قدرة منخفض جدًا بفضل العمليات القائمة على النبضات المتفرقة (Ref_Putra_FSpiNN_TCAD20). لتحقيق مثل هذه الأنظمة في الحياة الواقعية، تتطلب القدرات على حل مهام تعلم الآلة مثل تصنيف الصور (Ref_Putra_SparkXD_DAC21, Ref_Putra_EnforceSNN_FNINS22, Ref_Putra_RescueSNN_FNINS23)، وكشف الأجسام (Ref_Viale_CarSNN_IJCNN21, Ref_Cordone_ObjDetSNN_IJCNN22)، أو تجزئة الأجسام (Ref_Li_SpiCalib_arXiv22) من الصور/الفيديوهات. بالإضافة إلى هذه الوظائف، تتطلب الوكلاء المستقلين المعتمدين على الشبكات العصبية النبضية أيضًا (١) بصمة ذاكرة صغيرة لأنها غالبًا ما تُستخدم على منصات أجهزة محدودة الموارد، (٢) استهلاك طاقة/قدرة منخفض للحفاظ على عمر البطارية لأنها غالبًا ما تعمل ببطاريات محمولة، و(٣) إخراج في الوقت الحقيقي بدقة عالية لتوفير قرار سريع (Ref_Bonnevie_DynamicEnv_ICARA21, Ref_Putra_lpSpikeCon_IJCNN22, Ref_Putra_TopSpark_IROS23). لتعظيم فوائد العمليات المتفرقة للشبكات العصبية النبضية، يمكن استخدام البيانات القائمة على الأحداث لأنها توفر تنسيق بيانات متوافق مباشرة لمعالجة الشبكات العصبية النبضية وتقلل من مرحلة المعالجة المسبقة، مثل تحويل البيانات إلى نبضات (مثلاً، بيانات البكسل إلى قطار نبضات) وترميز النبضات. لذلك، يجب أن تأخذ تطويرات الوكلاء المستقلين المعتمدين على الشبكات العصبية النبضية في الاعتبار البيانات القائمة على الأحداث، مثل مجموعة بيانات NCARS (Ref_Sironi_HATS_CVPR18, Ref_Putra_NeuromorphicAI4Robotics_arXiv24, Ref_Bano_StudySNNParams_arXiv24).

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

أعمال الحالة الفنية وقيودها

لا تزال دراسة تطوير الوكلاء المستقلين المعتمدين على الشبكات العصبية النبضية في مراحلها الأولى. تم تلخيص الأعمال الفنية الحالية في الجدول [Tab_SOTA]. هنا، نلاحظ أن معظم الأعمال القائمة تركز على اقتراح الأطر و/أو التقنيات لتحقيق دقة عالية (Ref_Putra_lpSpikeCon_IJCNN22, Ref_Putra_Mantis_ICARA23, Ref_Putra_TopSpark_IROS23, Ref_Putra_SpikeNAS_arXiv24). ومع ذلك، لم تأخذ هذه الأعمال في الاعتبار عبء البيانات القائمة على الأحداث، مما يتطلب مرحلة معالجة مسبقة معقدة نسبيًا، تشمل تحويل البيانات إلى تدفقات وترميز التدفقات. تستكشف أعمال أخرى تقنيات لتحقيق دقة عالية مع الأخذ في الاعتبار بيانات السيارات القائمة على الأحداث (Ref_Viale_CarSNN_IJCNN21, Ref_Viale_LaneSNN_IROS22, Ref_Cordone_ObjDetSNN_IJCNN22). ومع ذلك، لم تأخذ هذه الأعمال في الاعتبار تحسين حجم النموذج ليتناسب مع الوكلاء المستقلين المقيدين بالموارد. تكشف جميع القيود المذكورة أعلاه للأعمال الفنية الحالية أنه لم يتم تحديد مراحل التحسين لتمكين نشر الشبكات العصبية النبضية بكفاءة للوكلاء المستقلين بشكل منهجي.

دراسة حالة تحفيزية

لتوضيح إمكانات تحسين الشبكات العصبية النبضية للوكلاء المستقلين مقارنة بالحالة الراهنة للفن، نقوم بدراسة حالة تجريبية نبحث فيها تطبيق مستويات مختلفة من تقليل الأوزان (أي الدقة) على نموذج شبكة عصبية نبضية من عمل (Ref_Viale_CarSNN_IJCNN21) باستخدام مجموعة بيانات NCARS القائمة على الأحداث. سيتم مناقشة تفاصيل الإعداد التجريبي بشكل أكبر في القسم [Sec_Eval]. تظهر النتائج التجريبية عدة ملاحظات رئيسية كما هو موضح فيما يلي.

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

مساهماتنا الجديدة

لمعالجة المشكلة البحثية المستهدفة والتحديات المتعلقة بها، نقترح إطار عمل جديد يُسمى SNN4Agents لتطوير الشبكات العصبية النبضية الموفرة للطاقة للوكلاء المستقلين. يتم وصف الخطوات الرئيسية لإطار عمل SNN4Agents بإيجاز فيما يلي.

المقدمات

الشبكات العصبية النبضية

نظرة عامة

تُعد الشبكات العصبية النبضية (Spiking Neural Networks) الجيل الثالث من الشبكات العصبية (Ref_Maass_SNN_NeuNet97). توضح النظرة العامة لوظائف الشبكات العصبية النبضية كيفية معالجة قطارات النبضات الداخلة بواسطة الخلايا العصبية النبضية وانتقال المعلومات إلى الخلايا العصبية في الطبقات التالية. من أشهر نماذج الخلايا العصبية النبضية، يبرز نموذج الخلية العصبية النبضية المتسربة (Leaky-Integrate-and-Fire) (Wang_2014EMBC_LeakyIntegrateAndFire) كتوازن فعال بين التعقيد والواقعية. يُعرف الوقت التشغيلي للخلية العصبية لمعالجة قطار نبضات من بيانات إدخال واحدة (مثلاً، بكسل صورة) بـ"الخطوة الزمنية" (Ref_Putra_TopSpark_IROS23). في كل خطوة زمنية، يزداد الجهد الكهربائي \(V_m\) للخلية العصبية مع كل نبضة إدخال قادمة. عندما يتجاوز \(V_m\) عتبة الجهد \(V_{th}\)، تصدر الخلية العصبية نبضة خرج (Ref_Putra_SoftSNN_DAC22). بهذه الطريقة، تنتقل النبضات من الإدخال إلى الإخراج وعبر طبقات متعددة من الخلايا العصبية النبضية في الشبكة.

بينما تتبع الشبكات العصبية النبضية موجة نجاح الشبكات العصبية العميقة التقليدية (غير النبضية)، فإنها تقدم المزايا التالية:

بالإضافة إلى هذه المزايا، من الصعب فعليًا تدريب الشبكات العصبية النبضية بكفاءة بسبب عدم قابلية تفاضل دالة الخسارة النبضية (Ruckauer_2019arxiv_NonDifferentiableLossFunctionSNN). لذلك، للتغلب على هذا التحدي، تم اقتراح تقنيتين ممكنتين في الأدبيات. (١) نهج تحويل الشبكة العصبية العميقة إلى شبكة عصبية نبضية (Ref_Hao_ANNtoSNNCalibration_ICLR23, Ref_Bu_ANNtoSNNConversion_ICLR22) حيث يتم تدريب شبكة عصبية عميقة ثم تحويل النموذج إلى نظيره النبضي. (٢) نهج تدريب الشبكة العصبية النبضية مباشرة (Ref_Neftci_SurrogateSNNs_IEEEMSP19) باستخدام دالة تدرج بديلة لتقريب دالة الخسارة النبضية، بحيث يمكن تفاضلها ودمجها في تدفق الانتشار العكسي. نظرًا لأن النهج-(١) يتطلب تدريب الشبكة العصبية العميقة، فلا يمكن استخدامه مباشرة عند التعامل مع البيانات القائمة على الأحداث (Massa_2020IJCNN_EfficientSNNGestures). بالإضافة إلى ذلك، فإنه يتطلب عادة عددًا أكبر من الخطوات الزمنية مقارنة بالنهج-(٢) (Ref_Chowdhury_OneTimestepIsAllYouNeed_arxiv21). لذلك، في هذا العمل، نعتمد تدريب الشبكة العصبية النبضية مباشرة، أي قاعدة التعلم بالانتشار الخلفي الزمكاني (Spatio-Temporal Back-Propagation)، التي تستفيد من المعلومات المكانية والزمانية ضمن تدفق النبضات (Ref_Wu_STBP_FNINS18, Ref_Viale_CarSNN_IJCNN21).

التكميم

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

أنظمة التكميم: هناك نظامان شائعان لتكميم الشبكات العصبية المتقدمة: التكميم بعد التدريب (PTQ)، والتدريب المدرك للتكميم (QAT) (Ref_Putra_QSpiNN_IJCNN21). في PTQ يتم عادة تدريب الشبكة المعطاة بدقة نقطة عائمة، مثل نقطة عائمة 32-بت (FP32)، ثم يتم تطبيق التكميم على نموذج الشبكة العصبية المتقدمة المدربة بمستوى الدقة المعطى، مما ينتج عنه نموذج شبكة عصبية متقدمة مكمم لمرحلة الاستدلال. في المقابل، يؤدي QAT عادة التكميم للشبكة المعطاة بمستوى الدقة المعطى خلال مرحلة التدريب، مما ينتج عنه نموذج شبكة عصبية متقدمة مدرب ومكمم يمكن استخدامه مباشرة لمرحلة الاستدلال. عملية PTQ عادة ما تكون أبسط وأكثر كفاءة من QAT لأنها تؤدي التكميم مرة واحدة بعد انتهاء مرحلة التدريب.

أنظمة التقريب: يتطلب تنفيذ التكميم عادة نظام تقريب محدد لتحديد كيفية تقليص القيمة. من الأدبيات، هناك ثلاثة أنظمة تقريب شائعة الاستخدام لنماذج الشبكات العصبية المتقدمة: التقطيع (TR)، التقريب إلى الأقرب (RN)، والتقريب العشوائي (SR) (Ref_Putra_QSpiNN_IJCNN21). من بين هذه الأنظمة، يمتلك TR أبسط عملية حيث يحتفظ فقط بعدد المعنويات الأكثر أهمية ويتجاهل البتات المتبقية.

في هذا العمل، نستخدم نظام PTQ مع نظام تقريب TR لأن تركيبهما يمكن أن يوفر بسرعة نتائج تمثيلية لإعدادات التكميم المختلفة، مما يمكّن من استكشاف سريع لمساحة التصميم (DSE)، وهو أمر مهم لدراستنا.

بيانات السيارات القائمة على الأحداث

مجموعة بيانات Prophesee NCARS (Ref_Sironi_HATS_CVPR18): تحتوي هذه المجموعة القائمة على الأحداث على مجموعة من 24K عينة، كل منها بمدة 100 مللي ثانية، تم تسجيلها باستخدام كاميرا الاستشعار الزمني غير المتزامن (ATIS) (Posch_2011JSSC_ATISSensor). كل عينة مصنفة إما كـ"سيارة" أو "خلفية"، ومشفرة كتسلسل من الأحداث التي تحتوي على المعلومات التالية:

تم تقسيم البيانات إلى 15,422 عينة للتدريب و 8,607 عينة للاختبار. كل عينة لها أحجام متغيرة ويمكن قصها. بناءً على توزيع الأحداث، يمكننا تحديد نافذة انتباه، أي منطقة يتركز فيها الأحداث بشكل أكبر. الأحجام النموذجية لنوافذ الانتباه المستخدمة في الأعمال الرائدة (Ref_Viale_CarSNN_IJCNN21) يمكن أن تصغر إلى 100 \(\times\) 100 أو 50 \(\times\) 50 وتقلل بشكل كبير من متطلبات الحوسبة والذاكرة للشبكة العصبية النبضية، دون التأثير كثيرًا على الدقة.

هندسة الشبكة العصبية النبضية

تتكون هندسات الشبكة العصبية النبضية من تسلسل طبقات من الخلايا العصبية النبضية. يحدد هيكلها واتصالاتها نوع الطبقات. في هذا العمل، نستخدم هندسات الشبكة العصبية النبضية للسيارات (Ref_Viale_CarSNN_IJCNN21) التي تنفذ التعرف على السيارات بكفاءة باستخدام قاعدة التعلم المبنية على STBP. نقوم بتنفيذ هندستين للشبكة العصبية النبضية مبنيتين بأحجام مختلفة لنافذة الانتباه. كلا النموذجين مكونان من تسلسل متداخل من طبقتين تلافيفيتين وثلاث طبقات تجميع متوسط، يليهما طبقتان متصلتان بالكامل. الهندسة الأولى للشبكة العصبية النبضية، الموصوفة في الجدول [Tab_SNNarch_100x100]، لديها نافذة انتباه بحجم \(100 \times 100\)، بينما الهندسة الثانية للشبكة العصبية النبضية، الموصوفة في الجدول [Tab_SNNarch_50x50]، لديها نافذة انتباه بحجم \(50 \times 50\). لاحظ أن أحجام نوافذ الانتباه المختلفة تؤثر على أحجام خرائط الميزات لكل طبقة من طبقات الشبكة العصبية النبضية. وبالتالي، تمتلك هذه الهندسات عددًا مختلفًا من قنوات الإدخال والإخراج في الطبقات المتصلة بالكامل مقارنة بالأخرى.

إطار عمل SNN4Agents

نظرة عامة

يستخدم إطار عملنا SNN4Agents مجموعة من تقنيات التحسين التي تستهدف جوانب تصميم مختلفة، بما في ذلك ضغط النموذج من خلال تكميم الأوزان، تحسين الكمون من خلال تقليل الخطوات الزمنية، تحسين بيانات الإدخال من خلال تقليل نافذة الانتباه؛ ثم ينفذ استراتيجية التحسين المشترك لتعظيم الفوائد من تقنيات التحسين الفردية. يتم توضيح سير عمل إطار SNN4Agents في الشكل [Fig_SNN4Agents]، ويتم تقديم مناقشة مفصلة لخطواته في القسم [Sec_Frame_Quantize] - القسم [Sec_Frame_Joint].

ضغط النموذج من خلال التكميم

لضغط حجم النموذج بكفاءة، نقوم بتكميم الأوزان من خلال PTQ مع نظام تقريب TR. للقيام بذلك، نقوم أولاً بتدريب الشبكة المعطاة بدون تكميم، مع استخدام الإعدادات الأساسية للخطوة الزمنية، نافذة الانتباه، وعدد عصور التدريب. في هذا السيناريو، نستخدم دقة 32-بت، 20 خطوة زمنية، نافذة انتباه 100x100، و200 عصر تدريب. بمجرد انتهاء مرحلة التدريب، نقوم بعملية التكميم للشبكة المدربة. بعد ذلك، نقوم بتنفيذ DSE تحت مستويات دقة الأوزان المختلفة (32، 16، 12، 10، 8، 6، و4 بت) لتقييم تأثيرها على الدقة؛ انظر إعدادات المعلمات لـ DSE في الجدول [Tab_Setting_Quantize].

نتائج التجربة لـ DSE تظهر في القائمة التالية:

هذه الملاحظات تكشف عن عدة إرشادات تصميم رئيسية يجب أن نأخذها في الاعتبار عند تطبيق التكميم. أولاً، يجب اختيار مستوى الدقة بعناية، بحيث لا يؤدي إلى تدهور كبير في الدقة يقلل من فوائد التكميم. ثانيًا، يقدم مستوى الدقة 10-بت توازنًا جيدًا بين الدقة وبصمة الذاكرة حيث يمكنه تحقيق دقة مماثلة لتلك المستويات الأعلى بعد تشغيل ما لا يقل عن 80 عصر تدريب.

تحسين الكمون من خلال تقليل الخطوات الزمنية

لتقليل وقت المعالجة بكفاءة، نقوم بتقليل الخطوات الزمنية. للقيام بذلك، نقلل عدد الخطوات الزمنية لمعالجة الشبكات العصبية المتقدمة من الإعداد الأساسي، مما يقلل من نافذة الزمن لعرض قطارات النبضات. هنا، ننظر في إعدادات خطوات زمنية مختلفة (أي 20، 15، 10، و 5) لاستكشاف تأثيرها على الدقة. بمجرد تقليل الخطوة الزمنية، يتم تدريب الشبكة تحت الإعداد الأساسي لمستوى الدقة (بدون تكميم)، نافذة الانتباه، وعدد عصور التدريب. لهذا السيناريو، نستخدم دقة 32-بت، نافذة انتباه 100x100، و 200 عصر تدريب. إذا لم نلاحظ اختلافات ملحوظة في الدقة الأساسية، فقد نستخدم مستوى دقة أصغر، مثل أوزان 16- و 4-بت، لتحفيز تغير الدقة. يتم توفير إعدادات المعلمات لتقييم النظام الديناميكي في الجدول [Tab_Setting_Timestep].

نتائج التجارب لتقييم النظام الديناميكي تظهر في القائمة التالية:

توضح هذه الملاحظات أنه يمكننا تطبيق تقليل الخطوة الزمنية بشكل عدواني نسبيًا (مثل الخطوة الزمنية 5) دون فقدان كبير في الدقة، طالما نستخدم أيضًا مستوى دقة مناسب، مما يستوعب المعلومات الزمنية والمكانية لمجموعة البيانات المعطاة (مثل NCARS).

تقليل نافذة الانتباه لعينات الإدخال

نهدف أيضًا إلى تقليل حجم نافذة الانتباه لعينات الإدخال لتحسين متطلبات الحساب، وبالتالي تقليل الزمن المستغرق واستهلاك الطاقة. لتحقيق ذلك، ندرس أحجام نوافذ انتباه مختلفة (أي 100x100 و 50x50)، مع استخدام إعدادات أساسية لمستوى الدقة والخطوة الزمنية وعدد عصور التدريب؛ انظر إعدادات المعاملات لـ DSE في الجدول [Tab_Setting_Window].

[Tab_Setting_Window]

إعدادات المعاملات لاستكشاف تأثير أحجام نوافذ الانتباه المختلفة.
الدقة (بت) الخطوة الزمنية نافذة الانتباه عصر التدريب
32 20 100x100 و 50x50 0-200

تظهر النتائج التجريبية لـ DSE أن الدقة التي يمكن الحصول عليها بواسطة نافذة انتباه أصغر (50x50) يمكن أن تتشبع بشكل أسرع من النافذة الأكبر (100x100) مما يوفر وقت تدريب أسرع؛ انظر . في الوقت نفسه، توفر نافذة انتباه أكبر دقة أفضل من النافذة الأصغر؛ انظر . السبب هو أن نافذة الانتباه الأصغر توفر معلومات أقل، وبالتالي تتطلب وقتًا أقصر لتدريب الشبكة لكنها تحد من الدقة التي يمكن تحقيقها. تشير هذه الملاحظات إلى أن تقليل نافذة الانتباه ممكن طالما تم تحقيق الدقة المستهدفة.

استراتيجية التحسين المشترك

لقد أظهرت كل خطوة تحسين فردية من الأقسام الفرعية السابقة إمكانية تقليل بصمة الذاكرة والتأخير، مع الحفاظ على دقة عالية. لذلك، لتعظيم فوائد هذه التحسينات، نقترح استراتيجية لدمج خطوات التحسين الفردية معًا. هنا، نستفيد من الملاحظات الرئيسية وإرشادات التصميم من التحليلات السابقة في القسم [Sec_Frame_Quantize]-القسم [Sec_Frame_AttWindow] لوضع الاستراتيجية التالية.

منهجية التقييم

لتقييم إطار عملنا SNN4Agents، نقوم ببناء واستخدام التجهيز التجريبي الموضح في الشكل [Fig_ExpSetup]، مع الأخذ بعين الاعتبار نفس شروط التقييم المستخدمة على نطاق واسع في مجتمع الشبكات العصبية المتقدمة للوكلاء المستقلين (Ref_Putra_Mantis_ICARA23, Ref_Viale_CarSNN_IJCNN21). نستخدم تنفيذًا مبنيًا على لغة Python ونقوم بتشغيله على أجهزة Nvidia RTX 6000 Ada GPU لتقييم مختلف مقاييس الأداء لإطار عملنا SNN4Agents، بما في ذلك الدقة، وزمن المعالجة، واستهلاك الطاقة. ثم يتم استخدام زمن المعالجة واستهلاك الطاقة لتقدير استهلاك الطاقة. في الوقت نفسه، يتم تقدير بصمة الذاكرة من خلال الاستفادة من مستوى الدقة وعدد الأوزان في بنية الشبكة العصبية المتقدمة المقابلة. في حالة نافذة الانتباه 100x100، نأخذ بعين الاعتبار بنية الشبكة من الجدول [Tab_SNNarch_100x100]؛ بينما في حالة 50x50، نأخذ بعين الاعتبار بنية الشبكة من الجدول [Tab_SNNarch_50x50]. بالنسبة للحمل العملي، نأخذ بعين الاعتبار مجموعة بيانات NCARS (Ref_Sironi_HATS_CVPR18). لغرض تقييم النظام، نأخذ بعين الاعتبار إعدادات المعلمات الموضحة في الجدول [Tab_ExpSetup]، بالإضافة إلى العمل الرائد CarSNN (Ref_Viale_CarSNN_IJCNN21) كأساس مرجعي.

علاوة على ذلك، نستخدم عدة مصطلحات لتمثيل نموذج الشبكة للاختصار، كما يلي.

النتائج التجريبية والمناقشة

الحفاظ على دقة عالية

تقدم النتائج التجريبية للدقة في الشكل [Fig_Result_Accuracy]. تظهر هذه النتائج أن النموذج الأساسي (32b_20t) يمكن أن يحقق دقة بنسبة 85.95%، بينما يمكن لنماذج الشبكة العصبية النبضية المحسنة مع نافذة انتباه 100x100 تحقيق دقة تتراوح بين 84.12% و 85.76%، وتحقق نماذج الشبكة العصبية النبضية المحسنة مع نافذة انتباه 50x50 دقة تتراوح بين 76.81% و 78.56%. في حالة نافذة الانتباه 100x100، نلاحظ أن مستويات الدقة 10-bit تؤدي عمومًا إلى جودة تعلم أقل (أي دقة) عبر جميع فترات التدريب مقارنة بمستويات الدقة الأخرى؛ انظر و . تشير هذه الملاحظات إلى أن مستويات الدقة الأصغر لها قدرات تمثيل قيمة أقل من تلك الأكبر، وبالتالي تتطلب فترة تدريب أطول لتحقيق دقة مماثلة. على سبيل المثال، يمكن لمستويات الدقة 10-bit تحقيق دقة تقارب 80% في 40 فترة تدريب، بينما يمكن لمستويات الدقة الأخرى تحقيق ذلك في 20 فترة تدريب. لنفس السبب، تلاحظ أنماط مماثلة في حالة نافذة الانتباه 50x50؛ انظر و . ومع ذلك، في هذه الحالة، لا تختلف درجات الدقة الناتجة عن مستويات الدقة المختلفة كثيرًا، حيث تقع ضمن نطاق دقة يبلغ حوالي 2%؛ انظر . السبب هو أن نافذة انتباه أصغر تعني معلومات أقل لنقلها ومعالجتها بواسطة مستويات الدقة المختلفة، مما يحد من الدقة النهائية.

توفير الذاكرة

تقدم النتائج التجريبية لبصمة الذاكرة في الشكل [Fig_Result_Memory]. تظهر هذه النتائج أن خطوة تكميم الوزن لدينا تقلل بشكل فعال من بصمة الذاكرة حتى 68.75% بسبب مستويات الدقة الأصغر لتمثيل قيم الوزن. على سبيل المثال، في حالة نافذة الانتباه 100x100، يؤدي تكميم الوزن لدينا إلى توفير حوالي 50% من الذاكرة لـ 16b_100w، وتوفير 62.50% من الذاكرة لـ 12b_100w، وتوفير 68.75% من الذاكرة لـ 10b_100w؛ انظر . في الوقت نفسه، في حالة نافذة الانتباه 50x50، يؤدي تكميم الوزن لدينا إلى توفير حوالي 91.42% من الذاكرة لـ 32b_50w، وتوفير 95.71% من الذاكرة لـ 16b_50w، وتوفير 96.78% من الذاكرة لـ 12b_50w، وتوفير 97.32% من الذاكرة لـ 10b_50w؛ انظر . تأتي المدخرات الكبيرة في الذاكرة في حالة نافذة الانتباه 50x50 من التكميم بالإضافة إلى تقليل عدد الأوزان بسبب الاختلافات المعمارية في الشبكة كما هو موضح في الجدول [Tab_SNNarch_100x100] والجدول [Tab_SNNarch_50x50].

تسريع وقت المعالجة

تظهر النتائج التجريبية لزمن المعالجة أن خطوة تقليل الخطوات الزمنية لدينا تقلل بفعالية من زمن المعالجة مقارنة بالنموذج الأساسي (32b_20t). على سبيل المثال، في حالة نافذة الانتباه 100x100، يؤدي تقليل الخطوات الزمنية لدينا إلى تسريعات بمقدار 1.27x - 1.31x لإعداد 15 خطوة زمنية (أي 32b_15t, 16b_15t, 12b_15t، و10b_15t)؛ بمقدار 1.86x - 2.02x لإعداد 10 خطوات زمنية (أي 32b_10t, 16b_10t, 12b_10t، و10b_10t)؛ وكذلك بمقدار 3.58x - 3.69x لإعداد 5 خطوات زمنية (أي 32b_5t, 16b_5t, 12b_5t، و10b_5t)؛ كما هو موضح بواسطة . بينما في حالة نافذة الانتباه 50x50، يؤدي تقليل الخطوات الزمنية لدينا إلى تسريعات بمقدار 1.28x - 1.32x لإعداد 15 خطوة زمنية (أي 32b_15t, 16b_15t, 12b_15t، و10b_15t)؛ بمقدار 2.04x - 2.11x لإعداد 10 خطوات زمنية (أي 32b_10t, 16b_10t, 12b_10t، و10b_10t)؛ وكذلك بمقدار 3.85x - 3.95x لإعداد 5 خطوات زمنية (أي 32b_5t, 16b_5t, 12b_5t، و10b_5t)؛ كما هو موضح بواسطة . تأتي هذه التسريعات الكبيرة من تقليل الخطوات الزمنية التي تقلل من زمن المعالجة لقطارات النبضات.

تحسينات كفاءة الطاقة

تظهر النتائج التجريبية لاستهلاك الطاقة أن تقنيات التحسين لدينا تقلل بفعالية من استهلاك الطاقة مقارنة بالنموذج الأساسي (32b_20t). على سبيل المثال، في حالة نافذة الانتباه 100x100، أدت تحسيناتنا إلى تحسينات في الطاقة بمقدار 1.36x - 1.41x للإعدادات 16b_15t، 12b_15t، و10b_15t؛ بمقدار 1.94x - 2.08x للإعدادات 16b_10t، 12b_10t و10b_10t؛ وكذلك بمقدار 3.82x - 4.03x للإعدادات 16b_5t، 12b_5t، و10b_5t؛ كما هو موضح بواسطة . في حالة نافذة الانتباه 50x50، أدت تحسيناتنا إلى تحسينات في الطاقة بمقدار 1.35x - 1.54x للإعدادات 16b_15t، 12b_15t، و10b_15t؛ بمقدار 2.24x - 2.48x للإعدادات 16b_10t، 12b_10t و10b_10t؛ وكذلك بمقدار 4.32x - 4.66x للإعدادات 16b_5t، 12b_5t، و10b_5t؛ كما هو موضح بواسطة . تأتي هذه التحسينات الكبيرة في كفاءة الطاقة من الفوائد المشتركة من تقليل دقة الوزن، تقليل الخطوات الزمنية، وتقليل نافذة الانتباه التي تقلل من قدرة المعالجة وزمن الاستجابة، وبالتالي استهلاك الطاقة.

تحليل التوازن

لتحديد النموذج المناسب من الشبكة العصبية النبضية للقيود المحددة للذاكرة والتأخير، نقوم بتحليل التوازن. لهذا، نحلل العلاقة بين الدقة وبصمة الذاكرة، الدقة والتأخير، وكذلك الدقة واستهلاك الطاقة. لتحليل الدقة-الذاكرة، نلاحظ أن الدقة تقل كلما قلت بصمة الذاكرة، وهذا ما يُشار إليه بمستويات دقة البتات الأقل مع أحجام نوافذ الانتباه الأصغر؛ انظر الشكل [Fig_Result_TradeOff](a). يعني ذلك أننا بحاجة لاختيار نموذج الشبكة المناسب الذي تتناسب بصمة ذاكرته مع القيد المحدد للذاكرة. على سبيل المثال، إذا كان القيد المحدد للذاكرة هو 8MB، فيمكننا اختيار نماذج الشبكة بدقة 12- و 10-bit تحت نافذة انتباه 100x100، وكذلك جميع نماذج الشبكة تحت نافذة انتباه 50x50. لتحليل الدقة-التأخير، نلاحظ أن الدقة تقل كلما قل التأخير، وهذا ما يُشار إليه بفترات الزمن الأقصر؛ انظر الشكل [Fig_Result_TradeOff](b). يعني ذلك أننا بحاجة لاختيار نموذج الشبكة المناسب الذي يتناسب تأخيره مع القيد المحدد للذاكرة. على سبيل المثال، إذا كان القيد المحدد للتأخير هو 0.25x من التأخير الأساسي، فيمكننا اختيار نماذج الشبكة بـ 5 خطوات زمنية تحت كل من نوافذ الانتباه 100x100 و 50x50. لتحليل الدقة-الطاقة، نلاحظ أن الدقة تقل أيضًا كلما قل استهلاك الطاقة، وهذا ما يُشار إليه بمستويات دقة البتات الأقل مع فترات الزمن الأقصر وأحجام نوافذ الانتباه الأصغر؛ انظر الشكل [Fig_Result_TradeOff](c). على سبيل المثال، إذا كانت القيود المحددة هي 8MB للذاكرة مع 0.25x التأخير من التأخير الأساسي، فيمكننا اختيار نموذج الشبكة بإعداد 10b_5t_100w، الذي يحقق 84.12% مع توفير 68.75% في الذاكرة وتسريع بمقدار 3.58x، وتحسين كفاءة الطاقة بمقدار 4.03x من النموذج الأساسي؛ انظر . علاوة على ذلك، إذا كان القيد المحدد للذاكرة أصغر بكثير (مثلاً، 1MB للذاكرة) مع 0.25x التأخير من التأخير الأساسي، فيمكننا اختيار نموذج الشبكة بإعداد 10b_5t_50w، الذي يحقق 77.10% مع توفير 97.32% في الذاكرة وتسريع بمقدار 4x، وتحسين كفاءة الطاقة بمقدار 5.85x من النموذج الأساسي؛ .

باختصار، جميع هذه النتائج التجريبية تظهر أن إطار عملنا SNN4Agents يحسن بفعالية كفاءة استهلاك الطاقة لنماذج الشبكة العصبية النبضية لتطبيقات الوكلاء الذاتيّة. علاوة على ذلك، يمكن لإطار العمل الخاص بنا مساعدة المستخدمين في إيجاد واختيار النموذج المناسب من الشبكة العصبية النبضية لتلبية القيود المحددة للذاكرة والتأخير، أي من خلال تعديل إعدادات التحسين لتكميم الوزن، إعداد الخطوة الزمنية، وحجم نافذة الانتباه.

الخلاصة

في هذا العمل، نقترح إطار عمل SNN4Agents الذي يستخدم مجموعة من تقنيات التحسين لتطوير الشبكات العصبية النبضية الموفرة للطاقة والموجهة لتطبيقات الوكلاء المستقلين. هنا، يقوم إطار عمل SNN4Agents بضغط نموذج SNN من خلال تكميم الأوزان، ويحسن وقت المعالجة من خلال تقليل الخطوات الزمنية، ويحسن عينات الإدخال من خلال تقليل نافذة الانتباه. تظهر النتائج التجريبية أن الإطار المقترح يحسن كفاءة استخدام الطاقة بفعالية، ويقلل من بصمة الذاكرة والتأخير، مع الحفاظ على دقة عالية. إذا اعتبرنا نطاق تسامح بنسبة 2% أقل دقة من الأساس، يمكننا تحقيق دقة 84.12% مع توفير 68.75% في الذاكرة، وتسريع 3.58x، وتحسين كفاءة الطاقة بمقدار 4.03x. بهذه الطريقة، يمكن لإطار عمل SNN4Agents تطوير وكلاء مستقلين فعالين يعتمدون على SNN.

بيان توافر البيانات

تم استخدام مجموعات بيانات متاحة للعامة في هذه الدراسة. يمكن العثور على هذه المجموعات في الموقع التالي: https://www.prophesee.ai/2018/03/13/dataset-n-cars/ (مجموعة بيانات NCARS).

مساهمات المؤلفين

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

الشكر والتقدير

تم دعم هذا العمل جزئيًا من قبل مركز جامعة نيويورك أبوظبي للأمن السيبراني (CCS)، الممول من تمكين تحت جائزة معهد أبحاث جامعة نيويورك أبوظبي G1104، ومركز الذكاء الاصطناعي والروبوتات (CAIR)، الممول من تمكين تحت جائزة معهد أبحاث جامعة نيويورك أبوظبي CG010.