اكتشف كيف تعمل دالة التنشيط SiLU (Swish) على تعزيز أداء التعلُّم العميق في مهام الذكاء الاصطناعي مثل اكتشاف الأجسام والبرمجة اللغوية العصبية.
SiLU (الوحدة الخطية السيجيمية)، والمعروفة أيضًا باسم دالة Swish، هي دالة تنشيط تُستخدم في نماذج التعلّم العميق (DL )، خاصةً في الشبكات العصبية (NN). تم اقتراحها من قبل باحثين في Google واكتسبت شعبية بسبب فعاليتها في تحسين أداء النموذج مقارنةً بوظائف التنشيط التقليدية مثل ReLU و Sigmoid. تُقدَّر دالة SiLU لسلاستها وخصائصها غير الرتابة التي يمكن أن تساعد في تدفق التدرج وتحسين النموذج. لفهم أوسع، راجع نظرة عامة على دالة التنشيط العامة.
يُعرَّف SiLU بأنه حاصل ضرب المدخلات و سيني المطبقة على المدخلات. بشكل أساسي, SiLU(x) = x * sigmoid(x)
. وتسمح هذه الصيغة لوحدة القياس الخطية المستقيمة أن تعمل كآلية ذاتية التحديد، حيث يحدد المكون المنجلي مدى تأثير المدخلات الخطية x
يمر عبرها. عندما يكون الخرج السيني قريبًا من 1، يمر المدخل دون تغيير تقريبًا (على غرار ReLU للقيم الموجبة)، وعندما يكون قريبًا من 0، يتم كبح الخرج نحو الصفر. على عكس ReLU، تكون SiLU سلسة وغير رتيبة (يمكن أن تنخفض حتى عندما تزيد المدخلات)، وهي خصائص مستمدة من تفاصيل الوظيفة السينيّة المكوّن. تم تفصيل المفهوم في ورق حويش أصلي.
تقدم SiLU العديد من المزايا التي تساهم في فعاليتها في نماذج التعلم العميق:
تتميز SiLU عن دوال التنشيط الشائعة الأخرى:
max(0, x)
) وخطية للقيم الموجبة، ولكنها تعاني من مشكلة "ReLU المحتضرة" حيث يمكن أن تصبح الخلايا العصبية غير نشطة للمدخلات السالبة. انظر إلى شرح ReLU. تتميز SiLU بالسلاسة وتتجنب هذه المشكلة بسبب مخرجاتها غير الصفرية للقيم السالبة.إن SiLU متعدد الاستخدامات وقد تم تطبيقه بنجاح في مجالات مختلفة حيث يتم استخدام نماذج التعلم العميق:
يتوفر SiLU بسهولة في أطر التعلم العميق الرئيسية:
torch.nn.SiLU
رسميًا وثائق PyTorch ل SiLU متوفرة.tf.keras.activations.swish
أو tf.keras.activations.silu
الموثقة في وثائق TensorFlow ل SiLU.تدعم منصات مثل Ultralytics HUB نماذج التدريب واستكشاف خيارات النشر المختلفة للنماذج التي تستخدم مكونات متقدمة مثل SiLU. تساعد الأبحاث والموارد المستمرة من مؤسسات مثل DeepLearning.AI الممارسين على الاستفادة من هذه الوظائف بفعالية.