diff --git a/v6.0/checkpoint_100000/dataset_train.yaml b/v6.0/checkpoint_100000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_100000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_100000/dataset_val.yaml b/v6.0/checkpoint_100000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_100000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_100000/expression_space.yaml b/v6.0/checkpoint_100000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_100000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_100000/nsr.yaml b/v6.0/checkpoint_100000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_100000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_100000/skeleton_pool_train.yaml b/v6.0/checkpoint_100000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_100000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_100000/skeleton_pool_val.yaml b/v6.0/checkpoint_100000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_100000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_100000/state_dict.pt b/v6.0/checkpoint_100000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..90584167b9dab46ff857d504b1cf542665b293a9 --- /dev/null +++ b/v6.0/checkpoint_100000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db72b9b9e1769570b0169dff54a6695e37f1d24d7eddd98e4fff401e7c9ecf6e +size 108624145 diff --git a/v6.0/checkpoint_100000/train.yaml b/v6.0/checkpoint_100000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_100000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_1000000/dataset_train.yaml b/v6.0/checkpoint_1000000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_1000000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_1000000/dataset_val.yaml b/v6.0/checkpoint_1000000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_1000000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_1000000/expression_space.yaml b/v6.0/checkpoint_1000000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_1000000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_1000000/nsr.yaml b/v6.0/checkpoint_1000000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_1000000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_1000000/skeleton_pool_train.yaml b/v6.0/checkpoint_1000000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_1000000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1000000/skeleton_pool_val.yaml b/v6.0/checkpoint_1000000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_1000000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1000000/state_dict.pt b/v6.0/checkpoint_1000000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..89a313ddba939314409cfe45f40b84e81a130cdd --- /dev/null +++ b/v6.0/checkpoint_1000000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:342180d0007b5b860c50cdc3df8944a3ef4c8c3b65d9e91d4de6a5178b91e327 +size 108624145 diff --git a/v6.0/checkpoint_1000000/train.yaml b/v6.0/checkpoint_1000000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_1000000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_1100000/dataset_train.yaml b/v6.0/checkpoint_1100000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_1100000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_1100000/dataset_val.yaml b/v6.0/checkpoint_1100000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_1100000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_1100000/expression_space.yaml b/v6.0/checkpoint_1100000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_1100000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_1100000/nsr.yaml b/v6.0/checkpoint_1100000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_1100000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_1100000/skeleton_pool_train.yaml b/v6.0/checkpoint_1100000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_1100000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1100000/skeleton_pool_val.yaml b/v6.0/checkpoint_1100000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_1100000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1100000/state_dict.pt b/v6.0/checkpoint_1100000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..05f8113b21b7676a956968c6615a08d6716b2d02 --- /dev/null +++ b/v6.0/checkpoint_1100000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b612e1f3a415c6a2e981483ef2fa6df1747e30fd4fe9e61def939e3a64f801a +size 108624145 diff --git a/v6.0/checkpoint_1100000/train.yaml b/v6.0/checkpoint_1100000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_1100000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_1200000/dataset_train.yaml b/v6.0/checkpoint_1200000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_1200000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_1200000/dataset_val.yaml b/v6.0/checkpoint_1200000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_1200000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_1200000/expression_space.yaml b/v6.0/checkpoint_1200000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..01b9176053bf8d014309e89d80a5f5f8da97c30a --- /dev/null +++ b/v6.0/checkpoint_1200000/expression_space.yaml @@ -0,0 +1,287 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: +- x1 +- x2 +- x3 diff --git a/v6.0/checkpoint_1200000/nsr.yaml b/v6.0/checkpoint_1200000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_1200000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_1200000/skeleton_pool_train.yaml b/v6.0/checkpoint_1200000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_1200000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1200000/skeleton_pool_val.yaml b/v6.0/checkpoint_1200000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_1200000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1200000/state_dict.pt b/v6.0/checkpoint_1200000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..f64c0f03bb2759a14d980fbeadf8d198cc13355f --- /dev/null +++ b/v6.0/checkpoint_1200000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a417900575b48489f17c76177a687749936f809a1be1f79cc798fa11c6be4e0 +size 108624145 diff --git a/v6.0/checkpoint_1200000/train.yaml b/v6.0/checkpoint_1200000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_1200000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_1300000/dataset_train.yaml b/v6.0/checkpoint_1300000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_1300000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_1300000/dataset_val.yaml b/v6.0/checkpoint_1300000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_1300000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_1300000/expression_space.yaml b/v6.0/checkpoint_1300000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_1300000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_1300000/nsr.yaml b/v6.0/checkpoint_1300000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_1300000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_1300000/skeleton_pool_train.yaml b/v6.0/checkpoint_1300000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_1300000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1300000/skeleton_pool_val.yaml b/v6.0/checkpoint_1300000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_1300000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1300000/state_dict.pt b/v6.0/checkpoint_1300000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..e8aff331d37e22120b563ec78395d0a8c4d895c5 --- /dev/null +++ b/v6.0/checkpoint_1300000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cb6bf0f8bf840bde7a98bc641f2a434de90c5f48ddf02907b94a24fe9a4b57e +size 108624145 diff --git a/v6.0/checkpoint_1300000/train.yaml b/v6.0/checkpoint_1300000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_1300000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_1400000/dataset_train.yaml b/v6.0/checkpoint_1400000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_1400000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_1400000/dataset_val.yaml b/v6.0/checkpoint_1400000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_1400000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_1400000/expression_space.yaml b/v6.0/checkpoint_1400000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_1400000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_1400000/nsr.yaml b/v6.0/checkpoint_1400000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_1400000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_1400000/skeleton_pool_train.yaml b/v6.0/checkpoint_1400000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_1400000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1400000/skeleton_pool_val.yaml b/v6.0/checkpoint_1400000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_1400000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1400000/state_dict.pt b/v6.0/checkpoint_1400000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..56e16504c3366ca6cfd87f430a83bb0a6b261d4f --- /dev/null +++ b/v6.0/checkpoint_1400000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b07c0285399d2b9b3f0a167cd1680ff35e60287be6ce0a5ece2a0903717c7ff +size 108624145 diff --git a/v6.0/checkpoint_1400000/train.yaml b/v6.0/checkpoint_1400000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_1400000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_1500000/dataset_train.yaml b/v6.0/checkpoint_1500000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_1500000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_1500000/dataset_val.yaml b/v6.0/checkpoint_1500000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_1500000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_1500000/expression_space.yaml b/v6.0/checkpoint_1500000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_1500000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_1500000/nsr.yaml b/v6.0/checkpoint_1500000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_1500000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_1500000/skeleton_pool_train.yaml b/v6.0/checkpoint_1500000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_1500000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1500000/skeleton_pool_val.yaml b/v6.0/checkpoint_1500000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_1500000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_1500000/state_dict.pt b/v6.0/checkpoint_1500000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..0f7dbcabfc3f520518364938dc286f65961134f0 --- /dev/null +++ b/v6.0/checkpoint_1500000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de20334451ffda2d7fe4d9b3a76a5be622304733911a937a2db255a808c19073 +size 108624145 diff --git a/v6.0/checkpoint_1500000/train.yaml b/v6.0/checkpoint_1500000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_1500000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_200000/dataset_train.yaml b/v6.0/checkpoint_200000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_200000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_200000/dataset_val.yaml b/v6.0/checkpoint_200000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_200000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_200000/expression_space.yaml b/v6.0/checkpoint_200000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_200000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_200000/nsr.yaml b/v6.0/checkpoint_200000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_200000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_200000/skeleton_pool_train.yaml b/v6.0/checkpoint_200000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_200000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_200000/skeleton_pool_val.yaml b/v6.0/checkpoint_200000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_200000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_200000/state_dict.pt b/v6.0/checkpoint_200000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..a5adc734e6eb7294bd5c5b16166ca3005a0ef302 --- /dev/null +++ b/v6.0/checkpoint_200000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7961ec463097ff830dbff9a1e20b18bd38231376245c2dc5a8ef3e72fa81a5f1 +size 108624145 diff --git a/v6.0/checkpoint_200000/train.yaml b/v6.0/checkpoint_200000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_200000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_300000/dataset_train.yaml b/v6.0/checkpoint_300000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_300000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_300000/dataset_val.yaml b/v6.0/checkpoint_300000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_300000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_300000/expression_space.yaml b/v6.0/checkpoint_300000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_300000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_300000/nsr.yaml b/v6.0/checkpoint_300000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_300000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_300000/skeleton_pool_train.yaml b/v6.0/checkpoint_300000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_300000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_300000/skeleton_pool_val.yaml b/v6.0/checkpoint_300000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_300000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_300000/state_dict.pt b/v6.0/checkpoint_300000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..574800b88ec80cf26c1bece51798469a08908e05 --- /dev/null +++ b/v6.0/checkpoint_300000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec3430f65e17ba260a2e298b0284a7f527a922bd7eb90c7f63cdc4256a996dce +size 108624145 diff --git a/v6.0/checkpoint_300000/train.yaml b/v6.0/checkpoint_300000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_300000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_400000/dataset_train.yaml b/v6.0/checkpoint_400000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_400000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_400000/dataset_val.yaml b/v6.0/checkpoint_400000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_400000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_400000/expression_space.yaml b/v6.0/checkpoint_400000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_400000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_400000/nsr.yaml b/v6.0/checkpoint_400000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_400000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_400000/skeleton_pool_train.yaml b/v6.0/checkpoint_400000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_400000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_400000/skeleton_pool_val.yaml b/v6.0/checkpoint_400000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_400000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_400000/state_dict.pt b/v6.0/checkpoint_400000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..6bcca0462e218579b33f15008335d923c8c46895 --- /dev/null +++ b/v6.0/checkpoint_400000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed9e780643e31ca79f99b9ba4a6f5eac9aec1dd9e1ad20cf2c302c5820fc731a +size 108624145 diff --git a/v6.0/checkpoint_400000/train.yaml b/v6.0/checkpoint_400000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_400000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_500000/dataset_train.yaml b/v6.0/checkpoint_500000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_500000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_500000/dataset_val.yaml b/v6.0/checkpoint_500000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_500000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_500000/expression_space.yaml b/v6.0/checkpoint_500000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_500000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_500000/nsr.yaml b/v6.0/checkpoint_500000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_500000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_500000/skeleton_pool_train.yaml b/v6.0/checkpoint_500000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_500000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_500000/skeleton_pool_val.yaml b/v6.0/checkpoint_500000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_500000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_500000/state_dict.pt b/v6.0/checkpoint_500000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..1cf0adef42ff768e9e24be727958169ad3e863d0 --- /dev/null +++ b/v6.0/checkpoint_500000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cf6a9f045d9838dd0ac3a0a832386d121ee0ba3ca0f80c8e93799c9ad0c8639 +size 108624145 diff --git a/v6.0/checkpoint_500000/train.yaml b/v6.0/checkpoint_500000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_500000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_600000/dataset_train.yaml b/v6.0/checkpoint_600000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_600000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_600000/dataset_val.yaml b/v6.0/checkpoint_600000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_600000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_600000/expression_space.yaml b/v6.0/checkpoint_600000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_600000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_600000/nsr.yaml b/v6.0/checkpoint_600000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_600000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_600000/skeleton_pool_train.yaml b/v6.0/checkpoint_600000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_600000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_600000/skeleton_pool_val.yaml b/v6.0/checkpoint_600000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_600000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_600000/state_dict.pt b/v6.0/checkpoint_600000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..c1b55e809c6925b0bec24fb51293a480a262cbc1 --- /dev/null +++ b/v6.0/checkpoint_600000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66be250af587eb78f5026626b9fb8b1248de8dc15e632abecfb4ca00b78be208 +size 108624145 diff --git a/v6.0/checkpoint_600000/train.yaml b/v6.0/checkpoint_600000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_600000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_700000/dataset_train.yaml b/v6.0/checkpoint_700000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_700000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_700000/dataset_val.yaml b/v6.0/checkpoint_700000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_700000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_700000/expression_space.yaml b/v6.0/checkpoint_700000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_700000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_700000/nsr.yaml b/v6.0/checkpoint_700000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_700000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_700000/skeleton_pool_train.yaml b/v6.0/checkpoint_700000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_700000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_700000/skeleton_pool_val.yaml b/v6.0/checkpoint_700000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_700000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_700000/state_dict.pt b/v6.0/checkpoint_700000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..6cc51d8bfd3c4595b3b8aff9d36cdad7d5a49282 --- /dev/null +++ b/v6.0/checkpoint_700000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f546b4a6d91fe077074fd0d1c98a3d0a3d14610530719f4976b0a11aa40e2e8f +size 108624145 diff --git a/v6.0/checkpoint_700000/train.yaml b/v6.0/checkpoint_700000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_700000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_800000/dataset_train.yaml b/v6.0/checkpoint_800000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_800000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_800000/dataset_val.yaml b/v6.0/checkpoint_800000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_800000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_800000/expression_space.yaml b/v6.0/checkpoint_800000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_800000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_800000/nsr.yaml b/v6.0/checkpoint_800000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_800000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_800000/skeleton_pool_train.yaml b/v6.0/checkpoint_800000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_800000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_800000/skeleton_pool_val.yaml b/v6.0/checkpoint_800000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_800000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_800000/state_dict.pt b/v6.0/checkpoint_800000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..f75bd28a7279197d78df3dfe5940d57e82bf5d97 --- /dev/null +++ b/v6.0/checkpoint_800000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca62488b7f0ed61b059fec846fccaece2cbaa57e248a075d865b245d1fae9e7f +size 108624145 diff --git a/v6.0/checkpoint_800000/train.yaml b/v6.0/checkpoint_800000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_800000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/checkpoint_900000/dataset_train.yaml b/v6.0/checkpoint_900000/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/checkpoint_900000/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/checkpoint_900000/dataset_val.yaml b/v6.0/checkpoint_900000/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/checkpoint_900000/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/checkpoint_900000/expression_space.yaml b/v6.0/checkpoint_900000/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/checkpoint_900000/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/checkpoint_900000/nsr.yaml b/v6.0/checkpoint_900000/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/checkpoint_900000/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/checkpoint_900000/skeleton_pool_train.yaml b/v6.0/checkpoint_900000/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/checkpoint_900000/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_900000/skeleton_pool_val.yaml b/v6.0/checkpoint_900000/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/checkpoint_900000/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/checkpoint_900000/state_dict.pt b/v6.0/checkpoint_900000/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..4e81efd03fb70b06a38de98b1f9a2a6c5b2b9a54 --- /dev/null +++ b/v6.0/checkpoint_900000/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b1d0358ff32ebe5719e2afb7d25bb76f108fe769cace6c48a27cf361f49f549 +size 108624145 diff --git a/v6.0/checkpoint_900000/train.yaml b/v6.0/checkpoint_900000/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/checkpoint_900000/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda diff --git a/v6.0/dataset_train.yaml b/v6.0/dataset_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2baac35dd30d83b3b46bd75ec2db5389d64c7cf1 --- /dev/null +++ b/v6.0/dataset_train.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_train.yaml +padding: zero diff --git a/v6.0/dataset_val.yaml b/v6.0/dataset_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..21e5b6b0b5d55c3784c36a1ee2406acc48966147 --- /dev/null +++ b/v6.0/dataset_val.yaml @@ -0,0 +1,2 @@ +skeleton_pool: ./skeleton_pool_val.yaml +padding: zero diff --git a/v6.0/expression_space.yaml b/v6.0/expression_space.yaml new file mode 100644 index 0000000000000000000000000000000000000000..841131c05717ed3b06ea431d3f8344c26f4ccd58 --- /dev/null +++ b/v6.0/expression_space.yaml @@ -0,0 +1,284 @@ +operators: + +: + realization: + + alias: + - add + - plus + inverse: '-' + arity: 2 + weight: 10 + precedence: 1 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + '-': + realization: '-' + alias: + - sub + - minus + inverse: + + arity: 2 + weight: 5 + precedence: 1 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + neg: + realization: nsrops.neg + wolfram: Negative + alias: + - negative + inverse: neg + arity: 1 + weight: 5 + precedence: 2.5 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + '*': + realization: '*' + alias: + - mul + - times + inverse: / + arity: 2 + weight: 10 + precedence: 2 + commutative: true + symmetry: 0 + positive: false + monotonicity: 0 + /: + realization: / + alias: + - div + - divide + inverse: '*' + arity: 2 + weight: 5 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 0 + abs: + realization: abs + wolfram: Abs + alias: + - absolute + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + inv: + realization: nsrops.inv + wolfram: Inverse + alias: + - inverse + inverse: inv + arity: 1 + weight: 4 + precedence: 4 + commutative: false + symmetry: -1 + positive: false + monotonicity: -1 + pow2: + realization: nsrops.pow2 + alias: + - square + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow3: + realization: nsrops.pow3 + alias: + - cube + inverse: pow1_3 + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow4: + realization: nsrops.pow4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 1 + positive: true + monotonicity: 0 + pow5: + realization: nsrops.pow5 + alias: [] + inverse: pow1_5 + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_2: + realization: nsrops.pow1_2 + alias: + - sqrt + inverse: null + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_3: + realization: nsrops.pow1_3 + alias: [] + inverse: null + arity: 1 + weight: 2 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + pow1_4: + realization: nsrops.pow1_4 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + pow1_5: + realization: nsrops.pow1_5 + alias: [] + inverse: null + arity: 1 + weight: 1 + precedence: 3 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + sin: + realization: numpy.sin + wolfram: Sin + alias: [] + inverse: asin + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + cos: + realization: numpy.cos + wolfram: Cos + alias: [] + inverse: acos + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 1 + positive: false + monotonicity: 0 + tan: + realization: numpy.tan + wolfram: Tan + alias: [] + inverse: atan + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 0 + asin: + realization: numpy.arcsin + wolfram: ArcSin + alias: + - arcsin + inverse: sin + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + acos: + realization: numpy.arccos + wolfram: ArcCos + alias: + - arccos + inverse: cos + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + atan: + realization: numpy.arctan + wolfram: ArcTan + alias: + - arctan + inverse: tan + arity: 1 + weight: 2 + precedence: 2 + commutative: false + symmetry: -1 + positive: false + monotonicity: 1 + exp: + realization: numpy.exp + wolfram: Exp + alias: [] + inverse: log + arity: 1 + weight: 4 + precedence: 3 + commutative: false + symmetry: 0 + positive: true + monotonicity: 1 + log: + realization: numpy.log + wolfram: Log + alias: + - ln + inverse: exp + arity: 1 + weight: 4 + precedence: 2 + commutative: false + symmetry: 0 + positive: false + monotonicity: 1 +variables: 3 diff --git a/v6.0/nsr.yaml b/v6.0/nsr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9fbf7648cce6f9097cf6881c0909e917d6de0e70 --- /dev/null +++ b/v6.0/nsr.yaml @@ -0,0 +1,20 @@ +encoder_max_n_variables: 4 +size: 512 +pre_encoder_input_type: ieee-754 +pre_encoder_support_nan: false +encoder: SetTransformer +encoder_kwargs: + hidden_size: 512 + n_enc_isab: 5 + n_dec_sab: 2 + n_induce: 64 + n_heads: 8 + layer_norm: false + n_seeds: 64 +decoder_n_heads: 8 +decoder_ff_size: 512 +decoder_dropout: 0.1 +decoder_n_layers: 5 +learnable_positional_embeddings: false +max_input_length: null +expression_space: ./expression_space.yaml diff --git a/v6.0/skeleton_pool_train.yaml b/v6.0/skeleton_pool_train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6e8ee55cb3b9484ccc4d6c974b1ae6414fefb58 --- /dev/null +++ b/v6.0/skeleton_pool_train.yaml @@ -0,0 +1,31 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/v6.0/skeleton_pool_val/' +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/skeleton_pool_val.yaml b/v6.0/skeleton_pool_val.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2034c18fe71136597d2eb868a1cf0ea19bad4e8d --- /dev/null +++ b/v6.0/skeleton_pool_val.yaml @@ -0,0 +1,30 @@ +expression_space: ./expression_space.yaml +holdout_pools: +- '{{ROOT}}/data/ansr-data/test_set/soose_nc/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/feynman/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/nguyen/skeleton_pool/' +- '{{ROOT}}/data/ansr-data/test_set/hard_set/skeleton_pool/' +sample_strategy: + n_operator_distribution: length_proportional + min_operators: 0 + max_operators: 10 + power: 1 + max_length: 21 + max_tries: 1 + independent_dimensions: true +allow_nan: false +simplify: true +literal_prior: uniform +literal_prior_kwargs: + low: -5 + high: 5 +support_prior: uniform_intervals +support_prior_kwargs: + low: -10 + high: 10 +n_support_prior: uniform +n_support_prior_kwargs: + low: 16 + high: 512 + min_value: 16 + max_value: 512 diff --git a/v6.0/state_dict.pt b/v6.0/state_dict.pt new file mode 100644 index 0000000000000000000000000000000000000000..0f7dbcabfc3f520518364938dc286f65961134f0 --- /dev/null +++ b/v6.0/state_dict.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de20334451ffda2d7fe4d9b3a76a5be622304733911a937a2db255a808c19073 +size 108624145 diff --git a/v6.0/train.yaml b/v6.0/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8951288b0707adbe6284a37205f21757307e141d --- /dev/null +++ b/v6.0/train.yaml @@ -0,0 +1,25 @@ +model: ./nsr.yaml +optimizer: + name: AdamW + kwargs: + lr: 1 + weight_decay: 0.01 + amsgrad: true +lr_scheduler: + name: WarmupLinearAnnealing + kwargs: + min_lr: 0 + max_lr: 1e-4 + warmup_steps: 10000 + total_steps: 1500000 +batch_size_scheduler: + name: Constant + kwargs: + batch_size: 128 +train_dataset: ./dataset_train.yaml +val_dataset: ./dataset_val.yaml +val_batch_size: 128 +val_size: 100000 +numeric_prediction_loss_weight: 0 +steps: 1500000 +device: cuda