Home
Login

سبيكترال هو إطار عمل بايثون لشبكات الرسم البياني العصبية (GNN)، مبني على TensorFlow 2 و Keras API، ويهدف إلى تبسيط تطوير وتجربة GNN.

MITPython 2.4kdanielegrattarola Last Updated: 2024-01-21

سبيكترال: إطار عمل بايثون للشبكات العصبية الرسومية

نظرة عامة على المشروع

سبيكترال (Spektral) هو إطار عمل بايثون يعتمد على واجهة برمجة تطبيقات (API) Keras لإنشاء شبكات عصبية رسومية (GNNs). يهدف إلى تبسيط تطوير وتجربة الشبكات العصبية الرسومية، وتوفير مجموعة من الأدوات المرنة وسهلة الاستخدام للتعامل مع مجموعة متنوعة من البيانات ذات الهياكل الرسومية. يوفر سبيكترال مجموعة متنوعة من طبقات الشبكات العصبية الرسومية، وعمليات التجميع، ومولدات الرسوم البيانية، والأدوات المساعدة الأخرى، مما يمكّن الباحثين والمطورين من بناء ونشر نماذج الشبكات العصبية الرسومية بسرعة.

الخلفية

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

الميزات الأساسية

  • يعتمد على واجهة برمجة تطبيقات Keras: تم بناء سبيكترال على Keras، ويرث سهولة الاستخدام والمرونة التي تتمتع بها Keras. يمكن للمستخدمين الذين هم على دراية بـ Keras البدء بسرعة في استخدام سبيكترال.
  • طبقات شبكات عصبية رسومية غنية: يوفر سبيكترال مجموعة متنوعة من طبقات الشبكات العصبية الرسومية الشائعة، مثل شبكة الالتفاف الرسومي (GCN)، وشبكة الانتباه الرسومي (GAT)، و GraphSAGE، وما إلى ذلك.
  • معالجة مرنة لبيانات الرسوم البيانية: يدعم سبيكترال تنسيقات بيانات الرسوم البيانية المتعددة، ويوفر مولدات بيانات رسومية مريحة، مما يسهل تحميل البيانات في النموذج.
  • قابلية التوسع: تصميم سبيكترال المعياري يجعله سهل التوسع والتخصيص. يمكن للمستخدمين إضافة طبقات شبكات عصبية رسومية جديدة، أو عمليات تجميع، أو ميزات أخرى وفقًا لاحتياجاتهم.
  • سهولة الاستخدام: يوفر سبيكترال وثائق وأمثلة واضحة لمساعدة المستخدمين على البدء بسرعة وبناء نماذج الشبكات العصبية الرسومية الخاصة بهم.
  • يدعم العديد من الواجهات الخلفية: يدعم سبيكترال الواجهات الخلفية TensorFlow و PyTorch، ويمكن للمستخدمين اختيار الواجهة الخلفية المناسبة وفقًا لتفضيلاتهم.

سيناريوهات التطبيق

يمكن تطبيق سبيكترال على مجموعة متنوعة من المهام التي تتطلب معالجة البيانات ذات الهياكل الرسومية، مثل:

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

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

للحصول على جميع التفاصيل، يرجى الرجوع إلى الموقع الرسمي (https://github.com/danielegrattarola/spektral)