Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

شبكات التدفق التوليدي (GFlowNets)

اكتشف كيف تستخدم شبكات التدفق التوليدي (GFlowNets) النمذجة الاحتمالية لأخذ عينات من كائنات منفصلة متنوعة وذات عائد مرتفع لأغراض اكتشاف الأدوية والتعلم السببي.

شبكات التدفق التوليدية (Generative Flow Networks)، أو GFlowNets، هي إطار عمل قوي للتعلم الآلي مصمم من أجل النمذجة الاحتمالية وأخذ العينات المُعَوضة. وهي تتميز بقدرتها على توليد كائنات منفصلة وقابلة للتركيب من خلال التعامل مع عملية التوليد على أنها مهمة متسلسلة لاتخاذ القرار . بدلاً من مجرد تعظيم المكافأة، كما هو شائع في التعلم المعزز التقليدي، تتعلم شبكات GFlowNets أخذ عينات من الكائنات باحتمال يتناسب مع دالة مكافأة محددة مسبقًا. وهذا يسمح لها باكتشاف مجموعات متنوعة من المرشحين ذوي المكافآت العالية ضمن مساحات عينات كبيرة للغاية، مما يخفف بشكل فعال من انهيار النموذج الذي غالبًا ما يعاني منه البنى التوليدية الأخرى مثل الشبكات التنافسية التوليدية (GANs).

المبادئ والآليات الأساسية

تعمل شبكات GFlowNets من خلال التنقل في بيئة منظمة، وإضافة العناصر الأساسية خطوة بخطوة لبناء كائن نهائي.

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

شبكات GFlowNets مقارنةً بأنظمة الذكاء الاصطناعي التوليدية الأخرى

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

تطبيقات واقعية

إن القدرة على توليد مرشحين متنوعين ومُحسَّنين للغاية تجعل شبكات GFlowNets ذات قيمة خاصة في المجالات العلمية والهيكلية.

تنفيذ سياسة "فوروارد"

عند بناء شبكة GFlowNet، يجب أن تتنبأ السياسة الأمامية بتوزيع احتمالي للخطوات التالية المحتملة. ما يلي PyTorch يوضح كيفية تعريف طبقة سياسة بسيطة و أخذ عينة من إجراء. في حين أن بناء نماذج الرؤية مثل Ultralytics يتطلب توقع إحداثيات الصندوق المحيط ، فإن 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 . سواء كنت تركز على مهام الكشف عن الأجسام بسرعة عالية أو تستكشف البنى التوليدية، فإن وجود مسار عمليات تعلم آلي (MLOps) قوي أمر ضروري لتوسيع نطاق نماذجك بفعالية.

لنبني مستقبل الذكاء الاصطناعي معًا!

ابدأ رحلتك مع مستقبل تعلم الآلة