maximuspowers commited on
Commit
7d3f1f7
·
verified ·
1 Parent(s): ad3c753

Upload model, config, and documentation

Browse files
Files changed (3) hide show
  1. README.md +77 -0
  2. best_model.pt +3 -0
  3. config.yaml +106 -0
README.md ADDED
@@ -0,0 +1,77 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ tags:
3
+ - pattern-classification
4
+ - multi-label-classification
5
+ datasets:
6
+ - maximuspowers/muat-fourier-5-large
7
+ ---
8
+
9
+ # Pattern Classifier
10
+
11
+ This model was trained to classify which patterns a subject model was trained on, based on neuron activation signatures.
12
+
13
+ ## Dataset
14
+
15
+ - **Training Dataset**: [maximuspowers/muat-fourier-5-large](https://huggingface.co/datasets/maximuspowers/muat-fourier-5-large)
16
+ - **Input Mode**: signature
17
+ - **Number of Patterns**: 14
18
+
19
+ ## Patterns
20
+
21
+ The model predicts which of the following 14 patterns the subject model was trained to classify as positive:
22
+
23
+ 1. `palindrome`
24
+ 2. `sorted_ascending`
25
+ 3. `sorted_descending`
26
+ 4. `alternating`
27
+ 5. `contains_abc`
28
+ 6. `starts_with`
29
+ 7. `ends_with`
30
+ 8. `no_repeats`
31
+ 9. `has_majority`
32
+ 10. `increasing_pairs`
33
+ 11. `decreasing_pairs`
34
+ 12. `vowel_consonant`
35
+ 13. `first_last_match`
36
+ 14. `mountain_pattern`
37
+
38
+ ## Model Architecture
39
+
40
+ - **Signature Encoder**: [512, 256, 256, 128]
41
+ - **Activation**: relu
42
+ - **Dropout**: 0.2
43
+ - **Batch Normalization**: True
44
+
45
+ ## Training Configuration
46
+
47
+ - **Optimizer**: adam
48
+ - **Learning Rate**: 0.001
49
+ - **Batch Size**: 16
50
+ - **Loss Function**: BCE with Logits (with pos_weight for training, unweighted for validation)
51
+
52
+ ## Test Set Performance
53
+
54
+ - **F1 Macro**: 0.1833
55
+ - **F1 Micro**: 0.2136
56
+ - **Hamming Accuracy**: 0.7002
57
+ - **Exact Match Accuracy**: 0.0030
58
+ - **BCE Loss**: 0.5040
59
+
60
+ ### Per-Pattern Performance (Test Set)
61
+
62
+ | Pattern | Precision | Recall | F1 Score |
63
+ |---------|-----------|--------|----------|
64
+ | palindrome | 17.0% | 32.1% | 22.2% |
65
+ | sorted_ascending | 18.3% | 76.1% | 29.5% |
66
+ | sorted_descending | 10.9% | 93.1% | 19.5% |
67
+ | alternating | 13.1% | 62.6% | 21.6% |
68
+ | contains_abc | 11.6% | 98.9% | 20.7% |
69
+ | starts_with | 9.4% | 34.0% | 14.7% |
70
+ | ends_with | 81.1% | 35.3% | 49.2% |
71
+ | no_repeats | 13.3% | 8.3% | 10.3% |
72
+ | has_majority | 0.0% | 0.0% | 0.0% |
73
+ | increasing_pairs | 9.5% | 69.1% | 16.8% |
74
+ | decreasing_pairs | 13.2% | 99.1% | 23.3% |
75
+ | vowel_consonant | 0.0% | 0.0% | 0.0% |
76
+ | first_last_match | 7.1% | 3.2% | 4.4% |
77
+ | mountain_pattern | 19.7% | 32.4% | 24.5% |
best_model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2fcd49e511aef401c58f34be3dcf340ffeafb0e5367073165f55932e47545cc9
3
+ size 12838264
config.yaml ADDED
@@ -0,0 +1,106 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ dataloader:
2
+ num_workers: 0
3
+ pin_memory: true
4
+ dataset:
5
+ hf_dataset: maximuspowers/muat-fourier-5-large
6
+ input_mode: signature
7
+ max_dimensions:
8
+ max_layers: 21
9
+ max_neurons_per_layer: 15
10
+ max_sequence_length: 5
11
+ neuron_profile:
12
+ methods:
13
+ fourier:
14
+ n_frequencies: 5
15
+ patterns:
16
+ - palindrome
17
+ - sorted_ascending
18
+ - sorted_descending
19
+ - alternating
20
+ - contains_abc
21
+ - starts_with
22
+ - ends_with
23
+ - no_repeats
24
+ - has_majority
25
+ - increasing_pairs
26
+ - decreasing_pairs
27
+ - vowel_consonant
28
+ - first_last_match
29
+ - mountain_pattern
30
+ random_seed: 42
31
+ test_split: 0.1
32
+ train_split: 0.8
33
+ val_split: 0.1
34
+ device:
35
+ type: auto
36
+ evaluation:
37
+ decision_threshold: 0.5
38
+ metrics:
39
+ - accuracy_exact_match
40
+ - accuracy_hamming
41
+ - precision_macro
42
+ - recall_macro
43
+ - f1_macro
44
+ - f1_micro
45
+ per_pattern_metrics: true
46
+ hub:
47
+ enabled: true
48
+ private: false
49
+ push_frequency: epoch
50
+ push_logs: true
51
+ push_metrics: true
52
+ push_model: true
53
+ repo_id: maximuspowers/muat-fourier-5-large-classifier
54
+ token: <REDACTED>
55
+ logging:
56
+ checkpoint:
57
+ enabled: true
58
+ mode: max
59
+ monitor: val_f1_macro
60
+ save_best_only: true
61
+ tensorboard:
62
+ enabled: true
63
+ log_interval: 10
64
+ verbose: true
65
+ model:
66
+ fusion:
67
+ activation: relu
68
+ dropout: 0.2
69
+ hidden_dims:
70
+ - 128
71
+ - 64
72
+ output:
73
+ num_patterns: 14
74
+ signature_encoder:
75
+ activation: relu
76
+ dropout: 0.2
77
+ hidden_dims:
78
+ - 512
79
+ - 256
80
+ - 256
81
+ - 128
82
+ use_batch_norm: true
83
+ weight_encoder:
84
+ activation: relu
85
+ dropout: 0.2
86
+ run_dir: /Users/max/Desktop/muat/model_zoo/runs/train-classifier_fourier_5_medium_2025-12-05_13-46-40
87
+ run_log_cleanup: true
88
+ training:
89
+ batch_size: 16
90
+ early_stopping:
91
+ enabled: true
92
+ mode: min
93
+ monitor: val_loss
94
+ patience: 50
95
+ epochs: 1000
96
+ learning_rate: 0.001
97
+ loss: bce_with_logits
98
+ lr_scheduler:
99
+ enabled: true
100
+ factor: 0.5
101
+ min_lr: 1.0e-05
102
+ patience: 20
103
+ type: reduce_on_plateau
104
+ optimizer: adam
105
+ pos_weight: null
106
+ weight_decay: 0.0001