تعد الشبكات العصبية البيانية (GNN) بنية شبكة عصبية عميقة تحظى بشهرة كبيرة في كل من التطبيقات العملية وأبحاث التعلم الآلي المتطورة. وهي تستخدم نموذج الشبكات العصبية لتمثيل البيانات المتعلقة بالكيانات وعلاقاتها. وتعتبر مفيدة لاستخراج بيانات العالم الحقيقي، وفهم الشبكات الاجتماعية، والرسوم البيانية المعرفية، وأنظمة التوصية والمعلوماتية الحيوية.
تم استلهام تطوير الشبكات العصبية البيانية (GNN) من خوارزميات التعلم العميق مثل الشبكات العصبية التلافيفية (CNN) والشبكات العصبية المتكررة (RNN)، لكنها تختلف عنها في عدة فروقات رئيسية. فقد تم تصميم شبكات CNN للبيانات التي تحتوي على بنية تشبه الشبكة مثل وحدات البكسل في الصورة. حيث يمكن توصيل أي بكسل واحد بثمانية بكسلات أخرى على الأكثر. وعلى العكس من ذلك، تم تصميم الشبكات العصبية المتكررة (RNN) خصيصًا لهياكل التسلسل، حيث يمكن ربط كل عنصر بعنصرين آخرين على الأكثر، مثل سلسلة الكلمات في نص ما. وفي البيانات المنظمة للرسم البياني، يمكن أن يكون لأي عنصر ارتباط واحد أو أكثر وقد لا يكون له تناسق بين عدد الارتباطات لعنصر معين.
الشبكات العصبية الرسومية هي تنفيذ للتعلم العميق الهندسي1، والذي يتم تصنيفه إلى أربع فئات أساسية:
التعلم القائم على الرسم البياني، الذي يتعلم عن البيانات الشبيهة بالرسوم البيانية.
التعلم القائم على الشبكات، والذي يتعلم عن البيانات مثل الصور وأنواع البيانات الأخرى التي يمكن وصفها بواسطة الشبكات.
التعلم القائم على المجموعة، والذي يتعلم كيفية ارتباط المعلومات بالمجموعة الأم. ويكون هذا فعالًا عندما يتم الحصول على البيانات من مجموعة ذات شكل كروي، على سبيل المثال، البيانات الجيولوجية المأخوذة من مصادر مختلفة عبر الكرة الأرضية
التعلم القائم على الشبكات، والذي يتعلم كيفية انتشار المعلومات عبر شبكة غير منتظمة، مثل تحليل عناصر نموذج ثلاثي الأبعاد لجسم ما والتنبؤ بها.
تعد الشبكات العصبية البيانية (GNN) مجال بحث نشطًا في الذكاء الاصطناعي ولكنها مدعومة بشكل جيد بالمكتبات وإطار العمل ومجموعة الأدوات المضمنة في لغة Python والأطر بما في ذلك TensorFlow وPyTorch.
يمكن التعبير عن مجموعة من العناصر والارتباطات بينها على شكل رسم بياني. نجح باحثو علوم الكمبيوتر في تطوير شبكات عصبية للعمل على هياكل بيانات الرسوم البيانية.
يمثل الرسم البياني العلاقات التي تُسمَّى "الحافة" بين مجموعة من الكيانات التي تُسمَّى "العقدة". رياضيًا، يتم تعريف الرسم البياني G على أنه مجموعة من العقدة V، ومجموعة من الحواف والروابط. E:G = (V, E). كل حافة عبارة عن زوج من رأسين وتمثل ارتباطًا بينهما.
لوصف كل عقدة أو حافة أو الرسم البياني بأكمله، يمكننا تخزين المعلومات في كل جزء من هذه الأجزاء من الرسم البياني.
يمكن وصف الرسوم البيانية بشكل أكبر من خلال تعيين الاتجاه مع كل حافة. يوصف الرسم البياني بأنه إما موجَّه أو غير موجَّه. يمثل الرسم البياني غير الموجَّه علاقة ثنائية الاتجاه. إذا كان لدى Rosa شقيق اسمه Juan، فإن Juan لديه أيضًا شقيقة اسمها Rosa. العلاقة بين Rosa وشقيقها ليس لها أي اتجاه، فهي فقط تربطهما كاثنين. يمثل الرسم البياني الموجَّه العلاقات الاتجاهية. إذا كان لدى Rosa شقيق أكبر اسمه Juan، فإن العلاقة "الأخ الأكبر" تسير في اتجاه واحد فقط: من Juan إلى Rosa، وJuan ليس لديه "شقيق أكبر".
هناك طريقة لتصور ترابط الرسم البياني من خلال مصفوفة ترابطه. وهذا تمثيل قائم على المصفوفة لرؤوس التمثيل البياني الذي يمكن أن يُمثِّل كلًا من الرسوم البيانية غير الموجَّهة والموجَّهة.
تشير مصفوفة التجاور للرسم البياني الموجَّه الموضح إلى جميع الرؤوس واتجاه الحافة التي تخلقها. على سبيل المثال، تتصل العقدة 0 في الرسم البياني الموجَّه بالعقدة 1، لكن العكس غير صحيح بسبب اتجاهية الارتباط. في مصفوفة التجاور، يحتوي [الصف 0، العمود 1] على قيمة، بينما لا يحتوي [الصف 1، العمود 0] على قيمة.
يجب أن يكون لتمثيلات الرسوم البيانية ثبات في التبديل، وهو ما يعني أن تمثيلات الرسوم البيانية يجب أن تعطي النتائج نفسها إذا كانت بنية الرسم البياني هي نفسها ولكن ترتيب العُقد مختلف. يضمن هذا النهج أن تمثيل الرسم البياني له نفس خصائص الرسم البياني نفسه.
تعتمد الشبكات العصبية البيانية (GNN) عادةً على بنية "مخطط بياني كمدخل، ومخطط بياني كمخرج" وهذا يعني أن هذه الأنواع من النماذج تقبل إدخال رسمٍ بياني، مع تحميل المعلومات في العقدة والحافة وسياقها العام. تقوم النماذج بتحويل هذه التضمينات تدريجيًا دون تغيير اتصال الإدخال. وتمثل التضمينات العُقد كتضمين للعقدة، والرؤوس كتضمين للرأس. حيث تسمح هذه التضمينات للنموذج بمعرفة أنواع العُقد وأين توجد في الرسم البياني بالإضافة إلى أنواع الحواف ومواقعها.
عادةً ما يتم تدريب الشبكات العصبية عن طريق تحديث معلمات الشبكات العصبية باستخدام تدرجات يتم حسابها على مجموعة فرعية عشوائية من بيانات التدريب. وذلك لتدريب شبكات الرسوم البيانية والشبكات العصبية البيانية على إنشاء رسوم بيانية فرعية تحافظ على الخصائص الأساسية للرسم البياني الكبير الأم.
تستخدم الشبكات العصبية البيانية (GNN) آلية تمرير الرسائل لتجميع المعلومات من العقدة المجاورة، مما يسمح لها بالتقاط العلاقات المعقدة في الرسوم البيانية. ويتمثل التحدي في نمذجة البيانات المنظمة بالرسم البياني في التقاط التفاعلات بين العقدة. حيث يعالج تمرير الرسائل العصبية هذا التحدي من خلال توفير إطار العمل لنمذجة التبعيات والتفاعلات في بيانات الرسم البياني. وتتبادل العُقد المعلومات مع العُقد المجاورة لها وتجمع تلك المعلومات لتحديث تمثيلاتها الخاصة. وتشبه عملية تمرير الرسائل هذه العُقد الموجودة في الرسم البياني الذي يتبادل الرسائل أو الإشارات.
تسمح الشبكات العصبية البيانية (GNN) بعدة أنواع مختلفة من التحليل، كل منها يوفر رؤى حول عناصر مختلفة من بيانات الرسم البياني.
المهام على مستوى الرسم البياني
في مهمة على مستوى الرسم البياني، تتنبأ الشبكات العصبية البيانية (GNN) بخاصية الرسم البياني بأكمله. فبالنسبة لجزيء مركب كيميائي مثلًا يتم تمثيله على شكل رسم بياني، قد ترغب في التنبؤ بما إذا كان سيرتبط بمستقبِل من مستقبلات الأمراض. وبالنسبة لشبكة اجتماعية، قد ترغب في التنبؤ بإذا ما كان من المحتمل أن تكون مرتبطة بمؤسسة معينة كالجامعة أو الكلية مثلًا. ويمكن تأطير هذا النوع من التعرف على الأنماط كشكل من أشكال تصنيف الرسم البياني لأنه يصنف الرسم البياني بأكمله.
المهام على مستوى العقدة
تهتم المهام على مستوى العقدة بالتنبؤ بهوية أو دور كل عقدة داخل الرسم البياني. على سبيل المثال، قد تكون مشكلة تصنيف العقدة في مجموعة بيانات شبكة اجتماعية هي التنبؤ بما إذا كان من المحتمل أن يكون لدى المستخدم اهتمام معين بناءً على شبكة أصدقائه المتصلة. فوجود أصدقاء مثلًا يشتركون فقط في الاهتمام بلعبة الجولف دون وجود اهتمامات أخرى مشتركة هو مؤشر جيد على أن الصديق الجديد قد يكون من المحتمل أن يستمتع بالجولف أيضًا. ويمكن في كثير من الأحيان التنبؤ بميزات هذا النوع من العقدة باستخدام الشبكة العصبية البيانية (GNN).
مهام على مستوى الحافة
النوع الأخير من مشكلة التنبؤ في الرسوم البيانية هو التنبؤ بالحافة، ويُسمَّى أحيانًا التنبؤ بالارتباط.
أحد الأمثلة على الاستدلال على مستوى الحافة هو فهم مشهد الصورة. بعد تحديد الكائنات في الصورة، يمكن لنماذج التعلم العميق أيضًا التنبؤ بالعلاقة بينها. فهذا تصنيف على مستوى الحافة؛ لأن العُقد تمثل الأجسام الموجودة في الصورة، ويشير التنبؤ إلى أي من هذه العقدة تشترك في الحافة أو ما هي قيمة تلك الحافة. إذا كنت ترغب في اكتشاف الارتباطات بين الكيانات، فيمكنك اعتبار الرسم البياني "متصلًا بالكامل" وبناءً على قيمتها المتوقعة يمكنك تهذيب الحواف للوصول إلى رسم بياني متناثر.
الشبكات التلافيفية للرسم البياني4 (GCN): هذا النهج مخصص للتعلم شبه الخاضع للإشراف ويعتمد على نسخة متغيرة من الشبكات العصبية الالتفافية يمكنها التعلم والتنبؤ من البيانات القائمة على الرسم البياني. حيث تتوسع هذه النماذج خطيًا في عدد الحواف، مما يجعلها مناسبة لمجموعات البيانات الكبيرة. وتتعلم النماذج أيضًا بنية الرسم البياني المحلي وميزات العقدة.
المشفِّرات الذاتية للرسم البياني2: هذه المتغيرات عبارة عن نماذج شبكة عصبية قابلة للتدريب من طرف إلى طرف للتعلم غير الخاضع للإشراف والمجموعة والتنبؤ بالارتباط على الرسوم البيانية. وعادةً ما تستخدم شبكة تلافيفية بسيطة للرسم البياني (GCN) كمُشفِّر لإنشاء التضمينات ولديها أداة فك تشفير تُعيد بناء الرسم البياني من التمثيل الكامن المكتسب.
شبكات انتباه الرسم البياني3 (GAT): بنية شبكة عصبية تعمل على البيانات المنظمة للرسم البياني. تستفيد شبكات انتباه الرسم البياني (GAT) من آلية الانتباه في شكل طبقات انتباه ذاتية لمعالجة أوجه القصور في الطرق السابقة القائمة على التلافيف البيانية أو ما يقاربها. فمن خلال تكديس طبقات يمكن فيها للعُقد الانتباه إلى سمات جيرانها من نقاط البيانات القريبة، تتيح شبكة الانتباه الرسومية (GAT) تحديد أوزان مختلفة (ضمنيًا) للعُقد المختلفة في الجوار الواحد. وهذا ممكن دون حاجة إلى إجراء عمليات مصفوفة مكلفة مثل عكس المصفوفة أو الاعتماد على معرفة بنية الرسم البياني مقدمًا.
تمثيل الرسم البياني: التعلّم هو مجال بحثي يوسّع نطاق الشبكات العصبية للرسم البياني كوسيلة لإيجاد تمثيل ذي معنى، وربما منخفض الأبعاد للعقدة من العلاقات المعقدة الموجودة في الرسم البياني. ومن الأمثلة على هذا الامتداد مشروع GraphSage6، وهو مشروع تابع لجامعة ستانفورد، ينشئ تمثيلات متجهة منخفضة الأبعاد للعقدة، مما جعله مناسبًا للعمل مع البيانات حيث تمثل العقدة بيانات عالية الأبعاد.
كمثال على كيفية هيكلة الشبكة العصبية البيانية (GNN)، لك أن تضع في اعتبارك شبكة تلافيفية بسيطة للرسم البياني (GCN) لتصنيف رسم بياني كامل. تتكون أبسط شبكة تلافيفية بسيطة للرسم البياني (GCN) من ثلاث طبقات:
طبقة التلافيف - تقوم هذه الطبقة بإجراء التلافيف على كل عقدة لتعلّم ارتباطاتها.
طبقة التنشيط غير الخطي - تُطبِّق هذه الطبقة دالة تنشيط مثل ReLU على مخرجات التلافيف.
طبقة المخرجات الخطية - تجمع هذه الطبقة النهائية المخرجات لتوليد تنبؤ نهائي.
أولًا، يتم إجراء الالتفاف باستخدام كل عقدة في الرسم البياني لطبقة الالتواء. وتستخدم هذه الطبقة التلافيفية معلومات الميزات من جيران كل عقدة وتجميعها، لتحديث الأوزان المرتبطة بكل عقدة. ثم بعد ذلك، يتم تطبيق دالة تنشيط غير خطية، مثل ReLU، على إخراج طبقة الالتواء. وللوصول إلى أفضل دقة، يمكن للشبكة استخدام تلافيف متعددة وطبقات تنشيط غير خطية مكدسة معًا. وأخيرًا، يتم استخدام طبقة خطية الإخراج للتنبؤ بالفئة التي من المرجح أن ينتمي إليها الرسم البياني.
تعد الشبكات التلافيفية البسيطة للرسم البياني (GCN) بسيطة من الناحية المفاهيمية ومناسبة للرسوم البيانية واسعة النطاق وسهلة البرمجة لكن بها العديد من العيوب الرئيسية أيضًا. أولًا، نجد أن الشبكات التلافيفية البسيطة للرسم البياني (GCN) لا تدعم ميزات الحافة. بل يمكنها فقط تعلم وتوقع ميزات العقدة أو ميزات الرسم البياني الشاملة. لا توجد فكرة تمرير الرسائل مع الشبكات التلافيفية البسيطة للرسم البياني (GCN). وهذه المشكلة تجعل استخدام هذه الشبكات قاصرًا على الحالات التي تكون فيها جميع المعلومات المطلوبة موجودة في العقدة بدلًا من وجودها في الحواف.
أما الشبكة العصبية التي تمر بالرسالة (MPNN) فهي تسمح بتمثيل الحواف.5 عملية تمرير الرسائل تكون تقريبًا على النحو التالي. تتلقى كل عقدة في الرسم البياني تضمينًا أوليًا يعمل كميزات إدخال أولية للعقدة. وفي كل تكرار لتمرير الرسالة، تقوم العقدة بتجميع المعلومات من العُقد المجاورة. ثم يتم دمج هذه المعلومات المجمعة مع التضمين الحالي للعقدة باستخدام دالة تحديث. ويتم تمرير عمليات التضمين المحدثة إلى التكرار التالي لتمرير الرسالة. وبعد عدة تكرارات مناسبة لتمثيل تعقيد الرسم البياني، يتم استخدام التضمينات النهائية لتمثيل كل عقدة في الرسم البياني. وأخيرًا، يتم تنفيذ خطوات التجميع والتحديث والتكرار بواسطة الشبكات العصبية لتعلم الأنماط المعقدة في الرسم البياني بشكل عام.
ويسمح استخدام تمرير الرسائل بتصنيف أكثر تعقيدًا للعقدة أو تصنيف الحافة أو حتى التنبؤ بالمكان الذي قد تظهر فيه الحافة في الرسم البياني (يُطلق عليه التنبؤ بالرابط).
تتمتع الشبكات العصبية البيانية (GNN) بالعديد من التطبيقات في معالجة اللغة الطبيعية (NLP). على سبيل المثال، في تصنيف المستندات، يمكن استخدام الشبكة العصبية البيانية (GNN) لنمذجة العلاقات بين الكلمات أو الجمل في المستندات. وهذه القدرة تتيح تحسين تصنيف المستندات واسترجاع المعلومات. تساعد الشبكة العصبية البيانية (GNN) في مهام الإجابة عن الأسئلة من خلال تمثيل العلاقات بين الكلمات في السؤال وإجابات المرشحين داخل الرسم البياني المعرفي. حيث يمكن أن تلتقط الشبكة العصبية البيانية (GNN) المعلومات السياقية وتبعيات المشاعر في النص، مما يحسن تحليل المشاعر في المواقف ذات الغموض العالي أو علاقات الكيانات المحددة للغاية.
كما أن لديها العديد من التطبيقات في مجال رؤية الكمبيوتر. في مهام تجزئة الصور، يمكن استخدام الشبكة العصبية البيانية (GNN) لمهام تجزئة الصور على مستوى البكسل عن طريق نمذجة العلاقات بين وحدات البكسل المجاورة كرسم بياني. كما تساعد الشبكة العصبية البيانية (GNN) على اكتشاف الكائنات عن طريق التقاط المعلومات السياقية والعلاقات بين الكائنات في الصور. وفي مهام فهم المشاهد التصويرية، تستخدم الشبكات العصبية البيانية (GNN) لفهم المشاهد المعقدة وإنشاء الرسم البياني للمشهد الذي يمثل العلاقات المكانية بين الكائنات في الصورة.
تعد أدوات الشبكة العصبية البيانية (GNN) أدوات قوية في المعلوماتية الحيوية أيضًا. في مجال تحليل التسلسل الجيني، يمكن للشبكات العصبية البيانية (GNN) نمذجة العلاقات بين الجينات أو التسلسلات الجينية، مما يساعد في التنبؤ بالتعبير الجيني ومهام تصنيف التسلسل. وفي مجال اكتشاف الأدوية الحديثة، يمكن استخدام الشبكات العصبية البيانية (GNN) للتنبؤ بالتفاعل المستهدف للدواء والتنبؤ بالخصائص الجزيئية الكيميائية، وهو أمر حيوي في البحوث الصيدلانية.
1. Inductive representation learning on large graphs, Will Hamilton, Zhitao Ying, Jure Leskovec, https://papers.nips.cc/paper_files/paper/2017/hash/5dd9db5e033da9c6fb5ba83c7a7ebea9-Abstract.html
2. Variational Graph Auto-Encoders, Thomas N. Kipf, Max Welling https://arxiv.org/abs/1611.07308
3. Graph Attention Networks; Petar Veličković, et al, https://arxiv.org/abs/1710.10903
4. Semi-Supervised Classification with Graph Convolutional Networks, Thomas N. Kipf, Max Welling https://arxiv.org/abs/1609.02907
5. Hierarchical Graph Representation Learning with Differentiable Pooling, NeurIPS 2018 · Rex Ying, et al https://arxiv.org/abs/1806.08804
6. GraphSage https://snap.stanford.edu/graphsage/
تسريع تأثير الذكاء الاصطناعي التوليدي في سير العمل الأساسية وتعزيز الإنتاجية.
استفد من الذكاء الاصطناعي في عملك بالاستعانة بخبرة IBM الرائدة في مجال الذكاء الاصطناعي ومحفظة حلولها المتوفرة لك.
أعدّ ابتكار عمليات ومهام سير العمل الحساسة بإضافة الذكاء الاصطناعي لتعزيز التجارب وصنع القرارات في الوقت الفعلي والقيمة التجارية.