Generative Flow Networks (GFlowNets)
اكتشف كيف تستخدم شبكات التدفق التوليدية (Generative Flow Networks (GFlowNets)) النمذجة الاحتمالية لأخذ عينات من أجسام منفصلة متنوعة وعالية المكافأة لاكتشاف الأدوية والتعلم السببي.
تعد شبكات التدفق التوليدية، أو GFlowNets، إطار عمل قوياً لـ التعلم الآلي مصمماً للنمذجة الاحتمالية وأخذ العينات المُستهلك. وهي تتفوق في توليد كائنات منفصلة وتركيبية من خلال التعامل مع عملية التوليد كمهمة اتخاذ قرار تسلسلي. وبدلاً من مجرد تعظيم المكافأة، كما هو شائع في التعلم التعزيزي التقليدي، تتعلم GFlowNets أخذ عينات من الكائنات باحتمالية تتناسب مع دالة مكافأة محددة مسبقاً. ويسمح هذا لها باكتشاف مجموعات متنوعة من المرشحين ذوي المكافآت العالية ضمن مساحات عينات كبيرة للغاية، مما يخفف بفعالية من انهيار النموذج الذي غالباً ما يصيب بنيات توليدية أخرى مثل الشبكات التنافسية التوليدية (GANs).
Link to this sectionالمبادئ والآليات الأساسية#
تعمل GFlowNets من خلال التحرك عبر بيئة منظمة، مع إضافة وحدات بناء خطوة بخطوة لإنشاء كائن نهائي.
- سياسات التوجيه الأمامي والخلفي: تتنبأ شبكة عصبية بسياسة توجيه أمامي، تملي توزيع الاحتمالات على الإجراءات الممكنة من حالة معينة. ومن خلال تعيين المسارات عبر هذه الحالات، يتعلم النموذج "تدفق" الاحتمالية.
- خسارة توازن المسار: يعتمد التدريب غالباً على أهداف التحسين مثل خسارة توازن المسار، والتي تضمن أن احتمالية توليد كائن معين تتوافق بشكل وثيق مع مكافأته المرصودة. يعد ضبط المعلمات الفائقة أمراً ضرورياً لتحقيق استقرار دالة الخسارة هذه أثناء التدريب.
- أخذ العينات المتناسب: من خلال أخذ عينات تتناسب مع المكافأة بدلاً من مجرد السعي لتحقيق الحد الأقصى المطلق، تفرض GFlowNets التنوع بشكل طبيعي، وهو أمر بالغ الأهمية عند التنقل في مساحات توافقية معقدة.
Link to this sectionGFlowNets مقابل الذكاء الاصطناعي التوليدي الآخر#
بينما يشمل الذكاء الاصطناعي التوليدي العديد من التقنيات، تحتل GFlowNets مكانة فريدة. تقوم نماذج الانتشار القياسية أو تقنيات مثل مطابقة التدفق عادةً بتحويل توزيعات الضوضاء المستمرة إلى بيانات. في المقابل، صُممت GFlowNets صراحةً لتوليد هياكل منفصلة، مثل الرسوم البيانية أو التسلسلات. علاوة على ذلك، في حين تهدف وكلاء التعلم التعزيزي القياسية إلى إيجاد مسار أمثل واحد عبر عملية قرار ماركوف (MDP)، تقوم GFlowNets برسم مسارات متعددة ذات مكافآت عالية لضمان مجموعة متنوعة واسعة من المخرجات المولدة.
Link to this sectionتطبيقات العالم الحقيقي#
إن القدرة على توليد مرشحين متنوعين ومحسنين للغاية تجعل GFlowNets ذات قيمة خاصة في المجالات العلمية والهيكلية.
- اكتشاف الأدوية وتصميم الجزيئات: في البحوث الصيدلانية، تُستخدم GFlowNets لتوليد ببتيدات علاجية ورسوم بيانية جزيئية جديدة. تعمل التطورات الحديثة، مثل Atomic GFlowNets (A-GFN)، على بناء الجزيئات ذرة بذرة لتحسين خصائص مثل تقارب الارتباط وإمكانية التوليف الكيميائي. تخلق هذه العملية مرشحين دوائيين أكثر تنوعاً مقارنة بالطرق التي تعتمد على أجزاء محددة مسبقاً.
- تعلم الهيكل السببي: تُطبق GFlowNets أيضاً لاكتشاف هيكل الشبكات البايزية السببية. فهي تقرّب التوزيع اللاحق عبر الرسوم البيانية الموجهة غير الدورية (DAGs)، مما يساعد الباحثين في الحفاظ على رؤية واقعية لـ عدم اليقين المعرفي عند نمذجة علاقات البيانات المعقدة.
Link to this sectionتنفيذ سياسة التوجيه الأمامي#
عند بناء GFlowNet، يجب أن تتنبأ سياسة التوجيه الأمامي بتوزيع احتمالي على الخطوات التالية الممكنة. يوضح مقتطف PyTorch التالي كيفية تحديد طبقة سياسة بسيطة وأخذ عينة من إجراء. بينما يتطلب بناء نماذج الرؤية مثل Ultralytics YOLO26 التنبؤ بإحداثيات صندوق الإحاطة، تستخدم GFlowNet توزيعات فئوية لاختيار الحالة التالية في مسار توليدها.
import torch
import torch.nn as nn
from torch.distributions import Categorical
# A simple linear policy mapping a 64-dim state to 4 possible actions
policy_network = nn.Sequential(nn.Linear(64, 4), nn.Softmax(dim=-1))
# Given a random state vector, compute action probabilities and sample
state = torch.randn(1, 64)
action_probs = policy_network(state)
sampled_action = Categorical(action_probs).sample()
print(f"Sampled Action: {sampled_action.item()}")إذا كنت تقوم بتطوير حلول ذكاء اصطناعي معقدة باستخدام Python، فيمكنك تعليق مجموعات البيانات وتدريب النماذج ونشرها بسلاسة باستخدام Ultralytics Platform. سواء كنت تركز على مهام اكتشاف الكائنات عالية السرعة أو تستكشف بنيات توليدية، فإن امتلاك خط أنابيب عمليات تعلم الآلة (MLOps) قوي يعد أمراً ضرورياً لتوسيع نطاق نماذجك بفعالية.






