diff options
Diffstat (limited to 'trm/config')
| -rw-r--r-- | trm/config/arch/hrm.yaml | 24 | ||||
| -rw-r--r-- | trm/config/arch/transformers_baseline.yaml | 18 | ||||
| -rw-r--r-- | trm/config/arch/trm.yaml | 26 | ||||
| -rw-r--r-- | trm/config/arch/trm_hier6.yaml | 26 | ||||
| -rw-r--r-- | trm/config/arch/trm_singlez.yaml | 26 | ||||
| -rw-r--r-- | trm/config/cfg_pretrain.yaml | 42 |
6 files changed, 162 insertions, 0 deletions
diff --git a/trm/config/arch/hrm.yaml b/trm/config/arch/hrm.yaml new file mode 100644 index 0000000..0d183be --- /dev/null +++ b/trm/config/arch/hrm.yaml @@ -0,0 +1,24 @@ +name: recursive_reasoning.hrm@HierarchicalReasoningModel_ACTV1 +loss: + name: losses@ACTLossHead + loss_type: stablemax_cross_entropy + +halt_exploration_prob: 0.1 +halt_max_steps: 16 + +H_cycles: 2 +L_cycles: 2 + +H_layers: 4 +L_layers: 4 + +hidden_size: 512 +num_heads: 8 # min(2, hidden_size // 64) +expansion: 4 + +puzzle_emb_ndim: ${.hidden_size} + +pos_encodings: rope +forward_dtype: bfloat16 + +mlp_t: False # use mlp on L instead of transformer
\ No newline at end of file diff --git a/trm/config/arch/transformers_baseline.yaml b/trm/config/arch/transformers_baseline.yaml new file mode 100644 index 0000000..cc08ffe --- /dev/null +++ b/trm/config/arch/transformers_baseline.yaml @@ -0,0 +1,18 @@ +name: recursive_reasoning.transformers_baseline@Model_ACTV2 +loss: + name: losses@ACTLossHead + loss_type: stablemax_cross_entropy + +halt_exploration_prob: 0.1 +halt_max_steps: 16 + +H_cycles: 1 # kept for compatibility +H_layers: 8 + +hidden_size: 512 +num_heads: 12 +expansion: 4 + +puzzle_emb_ndim: ${.hidden_size} + +pos_encodings: rope
\ No newline at end of file diff --git a/trm/config/arch/trm.yaml b/trm/config/arch/trm.yaml new file mode 100644 index 0000000..e6b16fb --- /dev/null +++ b/trm/config/arch/trm.yaml @@ -0,0 +1,26 @@ +name: recursive_reasoning.trm@TinyRecursiveReasoningModel_ACTV1 +loss: + name: losses@ACTLossHead + loss_type: stablemax_cross_entropy + +halt_exploration_prob: 0.1 +halt_max_steps: 16 + +H_cycles: 3 +L_cycles: 6 + +H_layers: 0 +L_layers: 2 + +hidden_size: 512 +num_heads: 8 # min(2, hidden_size // 64) +expansion: 4 + +puzzle_emb_ndim: ${.hidden_size} + +pos_encodings: rope +forward_dtype: bfloat16 + +mlp_t: False # use mlp on L instead of transformer +puzzle_emb_len: 16 # if non-zero, its specified to this value +no_ACT_continue: True # No continue ACT loss, only use the sigmoid of the halt which makes much more sense
\ No newline at end of file diff --git a/trm/config/arch/trm_hier6.yaml b/trm/config/arch/trm_hier6.yaml new file mode 100644 index 0000000..43622ec --- /dev/null +++ b/trm/config/arch/trm_hier6.yaml @@ -0,0 +1,26 @@ +name: recursive_reasoning.trm_hier6@TinyRecursiveReasoningModel_ACTV1 +loss: + name: losses@ACTLossHead + loss_type: stablemax_cross_entropy + +halt_exploration_prob: 0.1 +halt_max_steps: 16 + +H_cycles: 3 +L_cycles: 6 + +H_layers: 0 +L_layers: 2 + +hidden_size: 512 +num_heads: 8 # min(2, hidden_size // 64) +expansion: 4 + +puzzle_emb_ndim: ${.hidden_size} + +pos_encodings: rope +forward_dtype: bfloat16 + +mlp_t: False # use mlp on L instead of transformer +puzzle_emb_len: 16 # if non-zero, its specified to this value +no_ACT_continue: True # No continue ACT loss, only use the sigmoid of the halt which makes much more sense
\ No newline at end of file diff --git a/trm/config/arch/trm_singlez.yaml b/trm/config/arch/trm_singlez.yaml new file mode 100644 index 0000000..cf16aa5 --- /dev/null +++ b/trm/config/arch/trm_singlez.yaml @@ -0,0 +1,26 @@ +name: recursive_reasoning.trm_singlez@TinyRecursiveReasoningModel_ACTV1 +loss: + name: losses@ACTLossHead + loss_type: stablemax_cross_entropy + +halt_exploration_prob: 0.1 +halt_max_steps: 16 + +H_cycles: 3 +L_cycles: 6 + +H_layers: 0 +L_layers: 2 + +hidden_size: 512 +num_heads: 8 # min(2, hidden_size // 64) +expansion: 4 + +puzzle_emb_ndim: ${.hidden_size} + +pos_encodings: rope +forward_dtype: bfloat16 + +mlp_t: False # use mlp on L instead of transformer +puzzle_emb_len: 16 # if non-zero, its specified to this value +no_ACT_continue: True # No continue ACT loss, only use the sigmoid of the halt which makes much more sense
\ No newline at end of file diff --git a/trm/config/cfg_pretrain.yaml b/trm/config/cfg_pretrain.yaml new file mode 100644 index 0000000..ec45faf --- /dev/null +++ b/trm/config/cfg_pretrain.yaml @@ -0,0 +1,42 @@ +# ARC training config + +defaults: + - arch: trm + - _self_ + +hydra: + output_subdir: null + +# Data path +data_paths: ['data/arc-aug-1000'] +data_paths_test: [] + +evaluators: + - name: arc@ARC + +# Hyperparams - Training +global_batch_size: 768 + +epochs: 100000 +eval_interval: 10000 +checkpoint_every_eval: True + +lr: 1e-4 +lr_min_ratio: 1.0 +lr_warmup_steps: 2000 + +# Standard hyperparameter settings for LM, as used in Llama +beta1: 0.9 +beta2: 0.95 +weight_decay: 0.1 +puzzle_emb_weight_decay: 0.1 + +# Hyperparams - Puzzle embeddings training +puzzle_emb_lr: 1e-2 + +seed: 0 +min_eval_interval: 0 # when to start the eval + +ema: False # use Exponential-Moving-Average +ema_rate: 0.999 # EMA-rate +freeze_weights: False # If True, freeze weights and only learn the embeddings
\ No newline at end of file |
