GPT-4O UPDATED // CLAUDE 3.5 SONNET TRENDING // NEW VECTOR DB RELEASED: CHROMA V0.5 // CURSOR RAISED $60M // GEMINI 1.5 PRO AVAILABLE // GPT-4O UPDATED // CLAUDE 3.5 SONNET TRENDING // NEW VECTOR DB RELEASED
Score: 95/100
Open Source
LANG: AR

الشبكات العصبونية البيانية (GNNs)

"أطلق العنان للقوة الخفية للبيانات المترابطة"

ما هي الشبكات العصبونية البيانية (GNNs)؟

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

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

الميزات الرئيسية

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

حالات الاستخدام

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

البدء

إليك مثال “أهلاً بالعالم” للشبكات العصبونية البيانية باستخدام مكتبة PyTorch Geometric الشهيرة. يقوم هذا الرمز بتدريب شبكة تلافيفية بيانية (GCN) بسيطة لإجراء تصنيف للعقد على مجموعة بيانات Cora، وهي معيار قياسي لشبكات الاستشهاد.

أولاً، تأكد من تثبيت PyTorch و PyG: ```bash

قم بتثبيت PyTorch أولاً

pip install torch

قم بتثبيت PyTorch Geometric

pip install torch-geometric

الآن، يمكنك تعريف وتدريب نموذج GNN الخاص بك: ```python import torch import torch.nn.functional as F from torch_geometric.datasets import Planetoid from torch_geometric.nn import GCNConv

تحميل مجموعة بيانات Cora

dataset = Planetoid(root=’/tmp/Cora’, name=’Cora’) data = dataset[0]

تعريف نموذج GCN بسيط

class GCN(torch.nn.Module): def init(self): super().init() # طبقة GCN الأولى: ميزات الإدخال -> 16 ميزة مخفية self.conv1 = GCNConv(dataset.num_node_features, 16) # طبقة GCN الثانية: 16 ميزة مخفية -> عدد الفئات self.conv2 = GCNConv(16, dataset.num_classes)

def forward(self, data):
    x, edge_index = data.x, data.edge_index

    x = self.conv1(x, edge_index)
    x = F.relu(x)
    x = F.dropout(x, training=self.training)
    x = self.conv2(x, edge_index)

    return F.log_softmax(x, dim=1)

إعداد للتدريب

device = torch.device(‘cuda’ if torch.cuda.is_available() else ‘cpu’) model = GCN().to(device) data = data.to(device) optimizer = torch.optim.Adam(model.parameters(), lr=0.01, weight_decay=5e-4)

حلقة التدريب

model.train() for epoch in range(200): optimizer.zero_grad() out = model(data) loss = F.nll_loss(out[data.train_mask], data.y[data.train_mask]) loss.backward() optimizer.step() if epoch % 20 == 0: print(f’الحقبة {epoch}, الخسارة: {loss.item():.4f}’)

تقييم النموذج

model.eval() pred = model(data).argmax(dim=1) correct = (pred[data.test_mask] == data.y[data.test_mask]).sum() acc = int(correct) / int(data.test_mask.sum()) print(f’الدقة على مجموعة الاختبار: {acc:.4f}’)

التسعير

الشبكات العصبونية البيانية هي بنية نموذج مفتوحة المصدر. التكلفة الأساسية المرتبطة باستخدامها هي الموارد الحاسوبية (CPU/GPU) المطلوبة للتدريب والاستدلال، خاصة على الرسوم البيانية الكبيرة جدًا. مكتبات مثل PyTorch Geometric و DGL و Spektral مجانية للاستخدام بموجب تراخيص مفتوحة المصدر متساهلة مثل ترخيص MIT.

System Specs

License
MIT License
Release Date
2026-01-22
Social
N/A
Sentiment
إيجابي للغاية في مجتمع البحث؛ يعتبر لبنة أساسية للذكاء الاصطناعي القائم على الرسوم البيانية.

Tags

شبكة عصبونية بيانية / تعلم عميق / بيانات بيانية / تصنيف العقد / توقع الروابط / pytorch geometric

Alternative Systems

  • Deep Graph Library (DGL)
    إطار عمل منافس رئيسي للشبكات العصبونية البيانية، يدعم PyTorch و TensorFlow و MXNet.
  • Spektral
    مكتبة بايثون للتعلم العميق على الرسوم البيانية، مبنية على Keras و TensorFlow.
  • NetworkX
    حزمة بايثون أساسية لإنشاء الشبكات المعقدة والتعامل معها ودراستها.
  • Neo4j
    قاعدة بيانات بيانية أصلية، غالبًا ما تستخدم لتخزين والاستعلام عن البيانات البيانية التي تتدرب عليها الشبكات العصبونية البيانية.
  • PyTorch
    إطار عمل التعلم العميق الذي بنيت عليه مكتبات GNN الشهيرة مثل PyTorch Geometric.