rlu_control_suite

  • תיאור :

RL Unplugged היא חבילת אמות מידה ללימוד חיזוק לא מקוון. ה-RL Unplugged מתוכנן סביב השיקולים הבאים: כדי להקל על השימוש, אנו מספקים למערכי הנתונים API מאוחד אשר מקל על המתרגל לעבוד עם כל הנתונים בחבילה לאחר הקמת צינור כללי.

מערכי הנתונים פועלים לפי פורמט RLDS כדי לייצג שלבים ופרקים.

DeepMind Control Suite Tassa et al., 2018 היא קבוצה של משימות בקרה המיושמת ב-MuJoCo Todorov et al., 2012 . אנו רואים תת-קבוצה של המשימות הניתנות בחבילה המכסות מגוון רחב של קשיים.

רוב מערכי הנתונים בתחום זה נוצרים באמצעות D4PG. עבור סביבות Manipulator insert ball ו-Manipulation insert peg אנו משתמשים ב-V-MPO Song et al., 2020 כדי ליצור את הנתונים מכיוון ש-D4PG אינו מסוגל לפתור את המשימות הללו. אנו משחררים מערכי נתונים עבור 9 משימות חבילת בקרה. לפרטים על אופן יצירת מערך הנתונים, עיין במאמר.

DeepMind Control Suite הוא רף מסורתי של פעולה רציפה RL. בפרט, אנו ממליצים לך לבדוק את הגישה שלך ב-DeepMind Control Suite אם אתה מעוניין להשוות מול שיטות RL לא מקוונות מתקדמות אחרות.

@inproceedings{gulcehre2020rl,
 title = {RL Unplugged: A Suite of Benchmarks for Offline Reinforcement Learning},
 author = {Gulcehre, Caglar and Wang, Ziyu and Novikov, Alexander and Paine, Thomas and G'{o}mez, Sergio and Zolna, Konrad and Agarwal, Rishabh and Merel, Josh S and Mankowitz, Daniel J and Paduraru, Cosmin and Dulac-Arnold, Gabriel and Li, Jerry and Norouzi, Mohammad and Hoffman, Matthew and Heess, Nicolas and de Freitas, Nando},
 booktitle = {Advances in Neural Information Processing Systems},
 pages = {7248--7259},
 volume = {33},
 year = {2020}
}

rlu_control_suite/cartpole_swingup (תצורת ברירת המחדל)

  • גודל ערכת נתונים : 2.12 MiB

  • שמור אוטומטי במטמון ( תיעוד ): כן

  • פיצולים :

לְפַצֵל דוגמאות
'train' 40
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(1,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'position': Tensor(shape=(3,), dtype=tf.float32),
            'velocity': Tensor(shape=(2,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (1,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
שלבים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/עמדה מוֹתֵחַ (3,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (2,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/cheetah_run

  • גודל ערכת נתונים: 36.58 MiB

  • שמור אוטומטי במטמון ( תיעוד ): כן

  • פיצולים :

לְפַצֵל דוגמאות
'train' 300
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(6,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'position': Tensor(shape=(8,), dtype=tf.float32),
            'velocity': Tensor(shape=(9,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (6,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
צעדים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/עמדה מוֹתֵחַ (8,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (9,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/finger_turn_hard

  • גודל ערכת נתונים : 47.61 MiB

  • שמור אוטומטי במטמון ( תיעוד ): כן

  • פיצולים :

לְפַצֵל דוגמאות
'train' 500
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(2,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'dist_to_target': Tensor(shape=(1,), dtype=tf.float32),
            'position': Tensor(shape=(4,), dtype=tf.float32),
            'target_position': Tensor(shape=(2,), dtype=tf.float32),
            'velocity': Tensor(shape=(3,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (2,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
צעדים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/מרחק_למטרה מוֹתֵחַ (1,) tf.float32
צעדים/תצפית/עמדה מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/מיקום_יעד מוֹתֵחַ (2,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (3,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/fish_swim

  • גודל ערכת נתונים: 32.81 MiB

  • שמור אוטומטי במטמון ( תיעוד ): כן

  • פיצולים :

לְפַצֵל דוגמאות
'train' 200
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(5,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'joint_angles': Tensor(shape=(7,), dtype=tf.float32),
            'target': Tensor(shape=(3,), dtype=tf.float32),
            'upright': Tensor(shape=(1,), dtype=tf.float32),
            'velocity': Tensor(shape=(13,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (5,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
צעדים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/זוויות_מפרק מוֹתֵחַ (7,) tf.float32
צעדים/תצפית/יעד מוֹתֵחַ (3,) tf.float32
מדרגות/התבוננות/זקוף מוֹתֵחַ (1,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (13,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/humanoid_run

  • גודל מערך נתונים : 1.21 GiB

  • שמור אוטומטי במטמון ( תיעוד ): לא

  • פיצולים :

לְפַצֵל דוגמאות
'train' 3,000
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(21,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'com_velocity': Tensor(shape=(3,), dtype=tf.float32),
            'extremities': Tensor(shape=(12,), dtype=tf.float32),
            'head_height': Tensor(shape=(1,), dtype=tf.float32),
            'joint_angles': Tensor(shape=(21,), dtype=tf.float32),
            'torso_vertical': Tensor(shape=(3,), dtype=tf.float32),
            'velocity': Tensor(shape=(27,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (21,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
שלבים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/מהירות_תנועה מוֹתֵחַ (3,) tf.float32
צעדים/תצפית/הקצנות מוֹתֵחַ (12,) tf.float32
צעדים/תצפית/גובה_ראש מוֹתֵחַ (1,) tf.float32
צעדים/תצפית/זוויות_מפרק מוֹתֵחַ (21,) tf.float32
צעדים/תצפית/טורסו_אנכי מוֹתֵחַ (3,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (27,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/manipulator_insert_ball

  • גודל מערך נתונים : 385.41 MiB

  • שמור אוטומטי במטמון ( תיעוד ): לא

  • פיצולים :

לְפַצֵל דוגמאות
'train' 1,500
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(5,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'arm_pos': Tensor(shape=(16,), dtype=tf.float32),
            'arm_vel': Tensor(shape=(8,), dtype=tf.float32),
            'hand_pos': Tensor(shape=(4,), dtype=tf.float32),
            'object_pos': Tensor(shape=(4,), dtype=tf.float32),
            'object_vel': Tensor(shape=(3,), dtype=tf.float32),
            'target_pos': Tensor(shape=(4,), dtype=tf.float32),
            'touch': Tensor(shape=(5,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (5,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
שלבים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/זרוע_פוזי מוֹתֵחַ (16,) tf.float32
צעדים/תצפית/זרוע_וול מוֹתֵחַ (8,) tf.float32
צעדים/תצפית/יד_pos מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/אובייקט_פוזי מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/אובייקט_וול מוֹתֵחַ (3,) tf.float32
צעדים/תצפית/יעד_פוזי מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/מגע מוֹתֵחַ (5,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/manipulator_insert_peg

  • גודל מערך נתונים : 385.73 MiB

  • שמור אוטומטי במטמון ( תיעוד ): לא

  • פיצולים :

לְפַצֵל דוגמאות
'train' 1,500
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(5,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'arm_pos': Tensor(shape=(16,), dtype=tf.float32),
            'arm_vel': Tensor(shape=(8,), dtype=tf.float32),
            'hand_pos': Tensor(shape=(4,), dtype=tf.float32),
            'object_pos': Tensor(shape=(4,), dtype=tf.float32),
            'object_vel': Tensor(shape=(3,), dtype=tf.float32),
            'target_pos': Tensor(shape=(4,), dtype=tf.float32),
            'touch': Tensor(shape=(5,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (5,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
צעדים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
צעדים/תצפית/זרוע_פוזי מוֹתֵחַ (16,) tf.float32
צעדים/תצפית/זרוע_וול מוֹתֵחַ (8,) tf.float32
צעדים/תצפית/יד_פוז מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/אובייקט_פוזי מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/אובייקט_וול מוֹתֵחַ (3,) tf.float32
צעדים/תצפית/יעד_פוזי מוֹתֵחַ (4,) tf.float32
צעדים/תצפית/מגע מוֹתֵחַ (5,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/walker_stand

  • גודל ערכת נתונים: 31.78 MiB

  • שמור אוטומטי במטמון ( תיעוד ): כן

  • פיצולים :

לְפַצֵל דוגמאות
'train' 200
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(6,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'height': Tensor(shape=(1,), dtype=tf.float32),
            'orientations': Tensor(shape=(14,), dtype=tf.float32),
            'velocity': Tensor(shape=(9,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (6,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
צעדים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
מדרגות/תצפית/גובה מוֹתֵחַ (1,) tf.float32
צעדים/תצפית/אוריינטציות מוֹתֵחַ (14,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (9,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64

rlu_control_suite/walker_walk

  • גודל ערכת נתונים: 31.78 MiB

  • שמור אוטומטי במטמון ( תיעוד ): כן

  • פיצולים :

לְפַצֵל דוגמאות
'train' 200
  • מבנה תכונה :
FeaturesDict({
    'episode_id': tf.int64,
    'steps': Dataset({
        'action': Tensor(shape=(6,), dtype=tf.float32),
        'discount': tf.float32,
        'is_first': tf.bool,
        'is_last': tf.bool,
        'is_terminal': tf.bool,
        'observation': FeaturesDict({
            'height': Tensor(shape=(1,), dtype=tf.float32),
            'orientations': Tensor(shape=(14,), dtype=tf.float32),
            'velocity': Tensor(shape=(9,), dtype=tf.float32),
        }),
        'reward': tf.float32,
    }),
    'timestamp': tf.int64,
})
  • תיעוד תכונה :
תכונה מעמד צוּרָה Dtype תיאור
FeaturesDict
פרק_מזהה מוֹתֵחַ tf.int64
צעדים מערך נתונים
צעדים/פעולה מוֹתֵחַ (6,) tf.float32
צעדים/הנחה מוֹתֵחַ tf.float32
צעדים/הוא_ראשון מוֹתֵחַ tf.bool
צעדים/הוא_אחרון מוֹתֵחַ tf.bool
steps/is_terminal מוֹתֵחַ tf.bool
צעדים/תצפית FeaturesDict
מדרגות/תצפית/גובה מוֹתֵחַ (1,) tf.float32
צעדים/תצפית/אוריינטציות מוֹתֵחַ (14,) tf.float32
צעדים/תצפית/מהירות מוֹתֵחַ (9,) tf.float32
צעדים/פרס מוֹתֵחַ tf.float32
חותמת זמן מוֹתֵחַ tf.int64