facebook/sam2.1-hiera-tiny
Original31.4Mparameters
Fixture1.9Mparameters
Layer stacks3compared
Findings4to review
⚠ To review
- model: RoPE type axial became None
- model: model_type sam2_video became sam2
- prompt_encoder_config: model_type sam2_video_prompt_encoder became sam2_prompt_encoder
- mask_decoder_config: model_type sam2_video_mask_decoder became sam2_mask_decoder
Layer stacks
One square per layer, colored by kind: the layer's module classes and type attributes. Hover a square for its index and kind.
vision_encoder.backbone.blocks
Original · 12
Fixture · 5
| Kind | Original | Fixture | |
|---|---|---|---|
| MultiScaleBlock | 12 | 5 | ✓ kept |
mask_decoder.transformer.layers
Original · 2
Fixture · 2
| Kind | Original | Fixture | |
|---|---|---|---|
| TwoWayAttentionBlock | 2 | 2 | ✓ kept |
mask_decoder.output_hypernetworks_mlps
Original · 4
Fixture · 4
| Kind | Original | Fixture | |
|---|---|---|---|
| ReLU | 4 | 4 | ✓ kept |
Where the parameters are
Share of each model's parameters per component. Vocabulary and patch sizes are kept, so embeddings usually take a larger share of the fixture.
Original
Fixture
| Component | Original | Share | Fixture | Share |
|---|---|---|---|---|
| vision_encoder.backbone.blocks | 26.8M | 85.3% | 1.2M | 61.2% |
| mask_decoder.transformer.layers | 3.2M | 10.0% | 398.3K | 21.0% |
| mask_decoder.output_hypernetworks_mlps | 559.2K | 1.8% | 140.4K | 7.4% |
| vision_encoder.neck | 369.7K | 1.2% | 62.0K | 3.3% |
| mask_decoder.iou_prediction_head | 132.6K | 0.4% | 33.5K | 1.8% |
| mask_decoder.transformer | 132.2K | 0.4% | 33.3K | 1.8% |
| mask_decoder.pred_obj_score_head | 131.8K | 0.4% | 33.2K | 1.7% |
| 14 others | 131.7K | 0.4% | 37.3K | 2.0% |
Preserved properties
| Config | Property | Original | Fixture | |
|---|---|---|---|---|
| model | RoPE type | axial | None | ⚠ changed |
| model | model_type | sam2_video | sam2 | ⚠ changed |
| model | image_size | 1024 | 1024 | ✓ kept |
| vision_config | model_type | sam2_vision_model | sam2_vision_model | ✓ kept |
| vision_config | hidden_act | gelu | gelu | ✓ kept |
| vision_config.backbone_config | model_type | sam2_hiera_det_model | sam2_hiera_det_model | ✓ kept |
| vision_config.backbone_config | tie_word_embeddings | True | True | ✓ kept |
| vision_config.backbone_config | hidden_act | gelu | gelu | ✓ kept |
| vision_config.backbone_config | image_size | [1024, 1024] | [1024, 1024] | ✓ kept |
| vision_config.backbone_config | num_channels | 3 | 3 | ✓ kept |
| prompt_encoder_config | model_type | sam2_video_prompt_encoder | sam2_prompt_encoder | ⚠ changed |
| prompt_encoder_config | hidden_act | gelu | gelu | ✓ kept |
| prompt_encoder_config | image_size | 1024 | 1024 | ✓ kept |
| prompt_encoder_config | patch_size | 16 | 16 | ✓ kept |
| mask_decoder_config | model_type | sam2_video_mask_decoder | sam2_mask_decoder | ⚠ changed |
| mask_decoder_config | hidden_act | gelu | gelu | ✓ kept |
Module classes
Instances of each class in the built model (prefix Sam2 omitted).
| Class | Original | Fixture |
|---|---|---|
| Linear | 101 | 73 |
| LayerNorm | 33 | 19 |
| ModuleList | 24 | 17 |
| FeedForward | 20 | 13 |
| GELUActivation | 13 | 6 |
| MultiScaleAttention | 12 | 5 |
| MultiScaleBlock | 12 | 5 |
| Conv2d | 10 | 10 |
| ReLU | 8 | 8 |
| Attention | 7 | 7 |
| Embedding | 6 | 6 |
| LayerNorm | 3 | 3 |
| ConvTranspose2d | 2 | 2 |
| PositionalEmbedding | 2 | 2 |
| TwoWayAttentionBlock | 2 | 2 |
| GELU | 1 | 1 |
| HieraDetModel | 1 | 1 |
| MaskDecoder | 1 | 1 |
| MaskEmbedding | 1 | 1 |
| Model | 1 | 1 |
| PatchEmbeddings | 1 | 1 |
| PromptEncoder | 1 | 1 |
| SinePositionEmbedding | 1 | 1 |
| TwoWayTransformer | 1 | 1 |
| VisionModel | 1 | 1 |
| VisionNeck | 1 | 1 |
Config changes
18 fields changed, 134 unchanged.
| Field | Original | Fixture |
|---|---|---|
| mask_decoder_config.hidden_size | 256 | 128 |
| mask_decoder_config.iou_head_hidden_dim | 256 | 128 |
| mask_decoder_config.mlp_dim | 2048 | 256 |
| mask_decoder_config.model_type | sam2_video_mask_decoder | sam2_mask_decoder |
| mask_decoder_config.num_attention_heads | 8 | 4 |
| max_cond_frame_num | -1 | — |
| memory_attention_rope_theta | — | 10000 |
| model_type | sam2_video | sam2 |
| prompt_encoder_config.hidden_size | 256 | 128 |
| prompt_encoder_config.model_type | sam2_video_prompt_encoder | sam2_prompt_encoder |
| rope_parameters | {"rope_theta": 10000, "rope_type": "axial"} | — |
| vision_config.backbone_channel_list | [768, 384, 192, 96] | [256, 128, 64, 32] |
| vision_config.backbone_config.blocks_per_stage | [1, 2, 7, 2] | [1, 1, 2, 1] |
| vision_config.backbone_config.embed_dim_per_stage | [96, 192, 384, 768] | [32, 64, 128, 256] |
| vision_config.backbone_config.global_attention_blocks | [5, 7, 9] | [3] |
| vision_config.backbone_config.hidden_size | 96 | 32 |
| vision_config.backbone_config.num_attention_heads | 1 | 4 |
| vision_config.fpn_hidden_size | 256 | 128 |