Genrl هي مكتبة تعلم تعزيز Pytorch تتمحور حول تطبيقات الخوارزمية القابلة للتكرار والقابلة للتعميم وتحسين إمكانية الوصول في التعرف على التعزيز
إصدار Genrl الحالي في V0.0.2. توقع كسر التغييرات
أبحاث التعلم التعزيز تتحرك بشكل أسرع من أي وقت مضى. من أجل مواكبة الاتجاه المتزايد والتأكد من أن أبحاث RL تظل قابلة للتكرار ، تهدف Genrl إلى مساعدة أسرع من التكاثر والورق من خلال توفير الميزات الرئيسية التالية:
من خلال دمج هذه الميزات في Genrl ، نهدف إلى دعم أي تطبيق خوارزمية جديد في أقل من 100 خط .
إذا كنت مهتمًا بالمساهمة ، فلا تتردد في المرور بالمشكلات وفتح PRS للحصول على التعليمات البرمجية والمستندات والاختبارات وما إلى ذلك في حالة وجود أي أسئلة ، يرجى مراجعة المبادئ التوجيهية المساهمة
Genrl متوافق مع Python 3.6 أو أحدث ويعتمد أيضًا على pytorch
و openai-gym
. أسهل طريقة لتثبيت Genrl هي مع PIP ، مثبت الحزمة المفضل لدى Python.
$ pip install genrl
لاحظ أن Genrl هو مشروع نشط وينشر بشكل روتيني إصدارات جديدة. من أجل ترقية Genrl إلى أحدث إصدار ، استخدم PIP على النحو التالي.
$ pip install -U genrl
إذا كنت تنوي تثبيت أحدث إصدار من المكتبة (أي من المصدر) ، يمكنك ببساطة القيام:
$ git clone https://github.com/SforAiDl/genrl.git
$ cd genrl
$ python setup.py install
لتدريب نموذج ممثل ناعم من الصفر على بيئة الصالة الرياضية Pendulum-v0
ومكافآت السجل على Tensorboard
import gym
from genrl . agents import SAC
from genrl . trainers import OffPolicyTrainer
from genrl . environments import VectorEnv
env = VectorEnv ( "Pendulum-v0" )
agent = SAC ( 'mlp' , env )
trainer = OffPolicyTrainer ( agent , env , log_mode = [ 'stdout' , 'tensorboard' ])
trainer . train ()
لتدريب نموذج dyna-Q جدولي من نقطة الصفر على بيئة الصالة الرياضية FrozenLake-v0
ومكافآت المؤامرة:
import gym
from genrl . agents import QLearning
from genrl . trainers import ClassicalTrainer
env = gym . make ( "FrozenLake-v0" )
agent = QLearning ( env )
trainer = ClassicalTrainer ( agent , env , mode = "dyna" , model = "tabular" , n_episodes = 10000 )
episode_rewards = trainer . train ()
trainer . plot ( episode_rewards )