fusion-bench 0.2.11__tar.gz → 0.2.13__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/PKG-INFO +15 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/README.md +12 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/method/__init__.py +3 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/taskpool/flan_t5_glue_text_generation.py +4 -1
- fusion_bench-0.2.13/fusion_bench/constants/clip_vision.py +22 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/clip_dataset.py +10 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/gsm8k.py +2 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/__init__.py +12 -2
- {fusion_bench-0.2.11/fusion_bench/method/DOGE_TA → fusion_bench-0.2.13/fusion_bench/method/adamerging}/clip_layer_wise_adamerging.py +1 -1
- fusion_bench-0.2.13/fusion_bench/method/adamerging/clip_task_wise_adamerging.py +159 -0
- fusion_bench-0.2.13/fusion_bench/method/doge_ta/__init__.py +2 -0
- {fusion_bench-0.2.11/fusion_bench/method/adamerging → fusion_bench-0.2.13/fusion_bench/method/doge_ta}/clip_layer_wise_adamerging.py +1 -1
- fusion_bench-0.2.11/fusion_bench/method/DOGE_TA/DOGE_TA.py → fusion_bench-0.2.13/fusion_bench/method/doge_ta/doge_ta.py +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/fisher_merging/fisher_merging.py +29 -17
- fusion_bench-0.2.13/fusion_bench/method/gossip/__init__.py +3 -0
- fusion_bench-0.2.13/fusion_bench/method/gossip/clip_layer_wise_gossip.py +43 -0
- fusion_bench-0.2.11/fusion_bench/method/adamerging/clip_task_wise_adamerging.py → fusion_bench-0.2.13/fusion_bench/method/gossip/clip_task_wise_gossip.py +6 -3
- fusion_bench-0.2.13/fusion_bench/method/gossip/entropy_loss.py +25 -0
- fusion_bench-0.2.13/fusion_bench/method/gossip/flan_t5_layer_wise_gossip.py +388 -0
- fusion_bench-0.2.13/fusion_bench/method/gossip/layer_wise_gossip.py +434 -0
- fusion_bench-0.2.13/fusion_bench/method/gossip/min_norm_solvers.py +227 -0
- fusion_bench-0.2.13/fusion_bench/method/gossip/task_wise_gossip.py +265 -0
- fusion_bench-0.2.13/fusion_bench/method/gossip/utils.py +74 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/isotropic_merging/__init__.py +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/opcm/opcm.py +102 -84
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/opcm/task_arithmetic.py +35 -21
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/opcm/ties_merging.py +71 -52
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pwe_moe/module.py +1 -1
- fusion_bench-0.2.13/fusion_bench/method/pwe_moe/openclip_pwe_moe.py +476 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/regmean/regmean.py +25 -17
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/smile_upscaling/__init__.py +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/smile_upscaling/smile_upscaling.py +13 -10
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/surgery/clip_layer_wise_adamerging_surgery.py +7 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_arithmetic/task_arithmetic.py +8 -6
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/ties_merging/ties_merging.py +36 -31
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/we_moe/we_moe.py +14 -15
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/__init__.py +6 -3
- fusion_bench-0.2.13/fusion_bench/mixins/hydra_config.py +49 -0
- fusion_bench-0.2.13/fusion_bench/mixins/openclip_classification.py +11 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/simple_profiler.py +4 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/__init__.py +3 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/base_pool.py +2 -2
- fusion_bench-0.2.13/fusion_bench/modelpool/openclip_vision/__init__.py +1 -0
- fusion_bench-0.2.13/fusion_bench/modelpool/openclip_vision/modelpool.py +255 -0
- fusion_bench-0.2.13/fusion_bench/models/open_clip/__init__.py +6 -0
- fusion_bench-0.2.13/fusion_bench/models/open_clip/modeling.py +176 -0
- fusion_bench-0.2.13/fusion_bench/models/open_clip/utils.py +311 -0
- fusion_bench-0.2.13/fusion_bench/models/open_clip/variables_and_paths.py +56 -0
- fusion_bench-0.2.13/fusion_bench/models/parameter_dict.py +116 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/wrappers/layer_wise_fusion.py +1 -46
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/wrappers/layer_wise_fusion_doge_ta.py +4 -119
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/nyuv2_mtl_train.py +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/__init__.py +5 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/clip_vision/__init__.py +1 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/clip_vision/clip_rankone_moe_taskpool.py +2 -30
- fusion_bench-0.2.13/fusion_bench/taskpool/clip_vision/clip_smile_taskpool.py +102 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/clip_vision/clip_sparse_wemoe_taskpool.py +2 -30
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/clip_vision/taskpool.py +1 -2
- fusion_bench-0.2.13/fusion_bench/taskpool/clip_vision/utils/routing_analysis_utils.py +65 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/gpt2_text_classification.py +30 -1
- fusion_bench-0.2.13/fusion_bench/taskpool/openclip_vision/__init__.py +1 -0
- fusion_bench-0.2.13/fusion_bench/taskpool/openclip_vision/openclip_taskpool.py +196 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/data.py +12 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/devices.py +14 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/instantiate.py +12 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/misc.py +9 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/packages.py +14 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/parameters.py +1 -1
- fusion_bench-0.2.13/fusion_bench/utils/plot/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/tensorboard.py +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench.egg-info/PKG-INFO +15 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench.egg-info/SOURCES.txt +46 -6
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/clip-vit-base-patch32_robustness_corrupted.yaml +1 -2
- {fusion_bench-0.2.11/fusion_bench_config/dataset/image_classification/train → fusion_bench-0.2.13/fusion_bench_config/dataset/image_classification/test}/TALL20.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/emnist_letters.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/fashion_mnist.yaml +1 -1
- {fusion_bench-0.2.11/fusion_bench_config/dataset/image_classification/test → fusion_bench-0.2.13/fusion_bench_config/dataset/image_classification/train}/TALL20.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/fashion_mnist.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/auto.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/llama_ddp.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/llama_fsdp.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/llama_peft_fsdp.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/strategy/deepspeed.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/strategy/llama_peft_fsdp.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric_model_fusion.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/llama_full_finetune.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/llama_model_fusion.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/ada_svd/clip_vision.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/adamerging/layer_wise_flan_t5.yaml +0 -5
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/adamerging/layer_wise_gpt2.yaml +0 -5
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/adamerging/llama_sft.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/adamerging.yaml +2 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/analysis/task_vector_cos_similarity.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/analysis/task_vector_violin_plot.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/classification/clip_continual_finetune.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_concrete_layer_wise_adamerging.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_concrete_task_wise_adamerging.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_post_defense_AWM.yaml +1 -12
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_post_defense_SAU.yaml +1 -12
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_safe_concrete_layer_wise_adamerging.yaml +1 -10
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_safe_concrete_task_arithmetic.yaml +1 -14
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/dare/simple_average.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/dare/task_arithmetic.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/dare/ties_merging.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/dawe/dawe_for_clip.yaml +0 -3
- fusion_bench-0.2.11/fusion_bench_config/method/DOGE_TA/DOGE_TA.yaml → fusion_bench-0.2.13/fusion_bench_config/method/doge_ta/doge_ta.yaml +1 -1
- fusion_bench-0.2.13/fusion_bench_config/method/ensemble/max_model_predictor.yaml +1 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/ensemble/simple_ensemble.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/ensemble/weighted_ensemble.yaml +0 -1
- fusion_bench-0.2.13/fusion_bench_config/method/gossip/layer_wise_clip.yaml +30 -0
- fusion_bench-0.2.13/fusion_bench_config/method/gossip/layer_wise_flan_t5.yaml +25 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/isotropic_merging/iso_c.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/isotropic_merging/iso_cts.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/linear_interpolation.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/llama_expo.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/llama_expo_with_dare.yaml +0 -5
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/weighted_average.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/weighted_average_for_llama.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/lm_finetune/bradley_terry_rm.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/lm_finetune/fullfinetune_sft.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/lm_finetune/peftfinetune_sft.yaml +0 -6
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/mixtral_moe_upscaling.yaml +1 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/model_recombination.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/opcm/opcm.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/opcm/task_arithmetic.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/opcm/ties_merging.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/opcm/weight_average.yaml +0 -1
- fusion_bench-0.2.13/fusion_bench_config/method/pwe_moe/epo_for_openclip.yaml +30 -0
- fusion_bench-0.2.13/fusion_bench_config/method/pwe_moe/ls_for_openclip.yaml +30 -0
- {fusion_bench-0.2.11/fusion_bench_config/method → fusion_bench-0.2.13/fusion_bench_config/method/pwe_moe}/pwe_moe_ls_for_clip.yaml +7 -6
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/rankone_moe/rankone_moe.yaml +1 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/regmean/gpt2_regmean.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/slerp/slerp.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/sparselo_pruning/llama_iterative_sparselo.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/sparselo_pruning/llama_pcp_sparselo.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/sparselo_pruning/llama_sparselo.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/surgery/adamerging_surgery.yaml +1 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/task_arithmetic.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/task_singular_vector/TaskSingularVectorMerging.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/ties_merging.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/trust_region/clip_task_arithmetic.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/wemoe/sparse_weight_ensembling_moe.yaml +0 -8
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_cifar10.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14.yaml +1 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_oxford-iiit-pet.yaml +1 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_oxford_flowers102.yaml +1 -1
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_pcam.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_rendered-sst2.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_resisc45.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_stanford-cars.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_stl10.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_sun397.yaml +1 -0
- fusion_bench-0.2.13/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_svhn.yaml +1 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TA8_lora.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_individual.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_individual_lora.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TA8_control_task.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_individual.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_single_task_projection.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_two_tasks_control_task.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_individual.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/llama_alpaca_cleaned.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/llama_codealpaca.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/llama_for_causallm.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/llama_metamathqa.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/llama_ultrachat.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/simle_mixtral_exp_v4.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CausalLMPool/single_llama_model.yaml +0 -3
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/README.md +90 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-16_TA8.yaml +27 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA8.yaml +45 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA_cars_dtd.yaml +23 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA_sun397_cars.yaml +23 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA_sun397_dtd.yaml +23 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_individual.yaml +7 -0
- fusion_bench-0.2.13/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-L-14_TA8.yaml +26 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_lora16.yaml +0 -2
- fusion_bench-0.2.13/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_lora16_tta.yaml +66 -0
- fusion_bench-0.2.11/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_lora16_tta.yaml → fusion_bench-0.2.13/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_tta.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_individual.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-large_glue_lora16.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/SeqenceClassificationModelPool/llama_preference700k.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/SeqenceClassificationModelPool/single_reward_model.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/gpt-2_glue.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/nyuv2_config.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/_template.yaml +0 -3
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_B16.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip_rankone_wemoe_clip-vit-classification_TA8.yaml +0 -2
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip_sparse_wemoe_clip-vit-classification_TA8.yaml +0 -2
- fusion_bench-0.2.13/fusion_bench_config/taskpool/OpenCLIPVisionModelTaskPool/ViT-B-16_TA8.yaml +24 -0
- fusion_bench-0.2.13/fusion_bench_config/taskpool/OpenCLIPVisionModelTaskPool/ViT-B-32_TA8.yaml +24 -0
- fusion_bench-0.2.13/fusion_bench_config/taskpool/OpenCLIPVisionModelTaskPool/ViT-L-14_TA8.yaml +24 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/gpt-2_glue.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/reward_model_evaluation.yaml +0 -4
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/pyproject.toml +1 -1
- fusion_bench-0.2.11/fusion_bench/method/DOGE_TA/__init__.py +0 -2
- fusion_bench-0.2.11/fusion_bench/models/parameter_dict.py +0 -75
- fusion_bench-0.2.11/fusion_bench_config/method/ensemble/max_model_predictor.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_cifar10.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_pcam.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_rendered-sst2.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_resisc45.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_stanford-cars.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_stl10.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_sun397.yaml +0 -1
- fusion_bench-0.2.11/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_svhn.yaml +0 -1
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/LICENSE +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/__main__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/method/base_algorithm.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/modelpool/AutoModelForSeq2SeqLM.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/modelpool/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/modelpool/base_pool.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/modelpool/huggingface_clip_vision.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/taskpool/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/taskpool/base_pool.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/compat/taskpool/clip_image_classification.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/constants/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/constants/paths.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/arc.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/arc_agi.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/augmenters.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/messagers.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/np_cache.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/preprocess.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/arc_agi/representers.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/fer2013.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/gpt2_glue.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/image_dataset.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/imdb.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/alpaca.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/collate.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/metamathqa.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/openai.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/preference_700k.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/sharegpt.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/squad.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/stanford_shp.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/ultrachat.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/utils/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/llama/wikitext.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/dataset/nyuv2.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/ada_svd/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/ada_svd/clip_vision.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/entropy_loss.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/flan_t5_layer_wise_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/gpt2_layer_wise_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/layer_wise_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/llama_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/min_norm_solvers.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/task_wise_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/adamerging/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/analysis/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/analysis/task_vector_cos_similarity.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/analysis/task_vector_violin_plot.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/base_algorithm.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/classification/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/classification/clip_finetune.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/classification/continual_clip_finetune.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/concrete_subspace/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/concrete_subspace/clip_concrete_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/concrete_subspace/clip_concrete_task_arithmetic.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/concrete_subspace/clip_post_defense.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/concrete_subspace/clip_safe_concrete_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dare/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dare/simple_average.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dare/task_arithmetic.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dare/ties_merging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dare/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dawe/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dawe/dawe_for_clip.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dawe/warppers/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dawe/warppers/dawe_model.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/depth_upscaling/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/depth_upscaling/depth_upscaling.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/depth_upscaling/depth_upscaling_for_llama.py +0 -0
- {fusion_bench-0.2.11/fusion_bench/method/DOGE_TA → fusion_bench-0.2.13/fusion_bench/method/doge_ta}/layer_wise_adamerging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/dummy.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/ensemble.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/fisher_merging/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/fisher_merging/clip_fisher_merging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/fisher_merging/gpt2_fisher_merging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/isotropic_merging/iso.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/isotropic_merging/iso_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/linear/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/linear/expo.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/linear/linear_interpolation.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/linear/llama_expo.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/linear/simple_average_for_llama.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/linear/task_arithmetic_for_llama.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/lm_finetune/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/lm_finetune/bradley_terry_rm.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/lm_finetune/causal_lm_pretrain.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/lm_finetune/fullfinetune_sft.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/lm_finetune/peftfinetune_sft.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/mixture_of_experts/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/mixture_of_experts/mixtral_merging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/mixture_of_experts/mixtral_upcycling.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/model_recombination.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/opcm/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/opcm/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/opcm/weight_average.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/llama_magnitude_prune.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/llama_random_prune.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/llama_wanda_prune.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/magnitude_diff_pruning.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/prune_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/ablate.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/data.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/eval.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/layerwrapper.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/prune.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/prune_opt.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pruning/wanda_utils/sparsegpt.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pwe_moe/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pwe_moe/clip_pwe_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pwe_moe/phn/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pwe_moe/phn/solvers.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/pwe_moe/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/rankone_moe/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/rankone_moe/clip_rankone_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/rankone_moe/rankone_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/regmean/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/regmean/clip_regmean.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/regmean/gpt2_regmean.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/simple_average.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/slerp/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/slerp/slerp.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/slerp/slerp_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/smile_upscaling/singular_projection_merging.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/smile_upscaling/smile_mistral_upscaling.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/sparse_we_moe/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/sparse_we_moe/sparse_clip_we_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/sparse_we_moe/sparse_we_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/sparselo/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/sparselo/sparselo.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/surgery/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/tall_mask/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/tall_mask/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_arithmetic/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_singular_vector/TSVC.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_singular_vector/TSVM.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_singular_vector/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_singular_vector/utils/TSVC_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_singular_vector/utils/TSVM_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/task_singular_vector/utils/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/ties_merging/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/ties_merging/ties_merging_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/trust_region/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/trust_region/clip_task_arithmetic.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/trust_region/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/we_moe/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/we_moe/clip_we_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/weighted_average/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/weighted_average/llama.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/weighted_average/weighted_average.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/continual_learning/backward_transfer.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/nyuv2/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/nyuv2/depth.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/nyuv2/loss.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/nyuv2/noise.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/nyuv2/normal.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/nyuv2/segmentation.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/text_to_image_generation/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/text_to_image_generation/aesthetic_scorer.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/text_to_image_generation/compressibility.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/metrics/text_to_image_generation/pickscore_scorer.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/clip_classification.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/fabric_training.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/lightning_fabric.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/optim/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/optim/adamw_with_warmup.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/rich_live.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/mixins/serialization.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/PeftModelForSeq2SeqLM.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/causal_lm/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/causal_lm/causal_lm.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/clip_vision/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/clip_vision/modelpool.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/huggingface_automodel.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/huggingface_gpt2_classification.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/nyuv2_modelpool.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/seq2seq_lm/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/seq2seq_lm/modelpool.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/seq_classification_lm/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/seq_classification_lm/reward_model.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/modelpool/seq_classification_lm/seq_classification_lm.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/chat_templates/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/chat_templates/llama_3_Instruct.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/chat_templates/load_tokenizer.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/hf_clip.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/linearized/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/linearized/linearized_model_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/linearized/vision_model.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/model_utils/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/model_utils/embedding.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/model_utils/liger_kernel.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/model_utils/misc.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/model_utils/mod.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/model_utils/visual.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/patcher.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/llama/tokenizer_loader.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/masks/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/masks/mask_model.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_losparse_llama/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_losparse_llama/configuration_losparse_llama.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_losparse_llama/losparse_linear.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_losparse_llama/modeling_losparse_llama.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_losparse_llama/register.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_losparse_llama/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_smile_mistral/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_smile_mistral/configuration_smile_mistral.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_smile_mistral/modeling_smile_mistral.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/modeling_smile_mistral/register.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/nyuv2/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/nyuv2/aspp.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/nyuv2/lightning_module.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/nyuv2/resnet.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/nyuv2/resnet_dilated.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/rankone_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/separate_io.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/smile_moe/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/smile_moe/linear.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/sparse_we_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/surgery/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/surgery/surgerymodelwrapper.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/we_moe.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/wrappers/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/wrappers/ensemble.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/models/wrappers/task_wise_fusion.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/exception.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/lr_scheduler/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/lr_scheduler/linear_warmup.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/lr_scheduler/utils/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/lr_scheduler/utils/visualization.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/optim/mezo.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/programs/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/programs/base_program.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/programs/fabric_fusion_program.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/cli.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/clip/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/clip/convert_checkpoint.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/imgui.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/scripts/webui.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/base_pool.py +0 -0
- {fusion_bench-0.2.11/fusion_bench/tasks/flan_t5_text_generation → fusion_bench-0.2.13/fusion_bench/taskpool/clip_vision/utils}/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/dummy.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/llama/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/llama/reward_model.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/llama/test_generation.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/taskpool/nyuv2_taskpool.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/base_task.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/classification.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/cifar10.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/cifar100.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/clip_dataset.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/cub_200_2011.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/dtd.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/emnist_letters.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/emnist_mnist.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/eurosat.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/fashion_mnist.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/fer2013.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/flower102.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/food101.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/gtsrb.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/imagenet.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/kmnist.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/mnist.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/mongo_leaf_disease.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/oxford_iiit_pet.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/pcam.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/rendered_sst2.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/resisc45.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/stanford_cars.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/stl10.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/sun397.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/svhn.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/clip_classification/tiny_imagenet.py +0 -0
- {fusion_bench-0.2.11/fusion_bench/utils/plot → fusion_bench-0.2.13/fusion_bench/tasks/flan_t5_text_generation}/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/flan_t5_text_generation/datasets_preprocess.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/flan_t5_text_generation/glue_evaluation.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/flan_t5_text_generation/glue_load_dataset.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/flan_t5_text_generation/glue_preprocessors.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/tasks/flan_t5_text_generation/glue_prompt_templates.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/auto.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/cache_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/dict.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/dtype.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/expr.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/fabric.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/functools.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/hydra_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/json.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/lazy_imports.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/path.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/plot/color_data.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/plot/token.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/plot/token_notebook.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/pylogger.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/rich_utils.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/set.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/state_dict_arithmetic.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/strenum/__init__.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/strenum/_name_mangler.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/strenum/_version.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/timer.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/utils/type.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench.egg-info/dependency_links.txt +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench.egg-info/entry_points.txt +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench.egg-info/requires.txt +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench.egg-info/top_level.txt +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/README.md +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/README.md +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/cifar10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/cifar100.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/cub-200-2011.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/emnist_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/fer2013.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/food101.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/kmnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/mango-leaf-disease.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/oxford-iiit-pet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/oxford_flowers102.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/pcam.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/rendered-sst2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/resisc45.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/stanford-cars.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/stl10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/sun397.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/svhn.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/the_eight_tasks.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/test/tiny-imagenet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/cifar10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/cifar100.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/cub-200-2011.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/emnist_letters.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/emnist_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/fer2013.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/food101.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/kmnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/mango-leaf-disease.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/oxford-iiit-pet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/oxford_flowers102.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/pcam.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/rendered-sst2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/resisc45.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/stanford-cars.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/stl10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/sun397.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/svhn.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/the_eight_tasks.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/train/tiny-imagenet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/resisc45.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/stanford-cars.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/sun397.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/svhn.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/image_classification/val/the_eight_tasks.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/llm_sft/alpaca_cleaned.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/llm_sft/ultrachat_200k.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/question_answering/search_qa.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/question_answering/test/search_qa.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/question_answering/train/MetaMathQA.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/question_answering/train/search_qa.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/question_answering/val/search_qa.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/summarization/test/xsum.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/summarization/train/xsum.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/summarization/val/xsum.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/summarization/xsum.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/text_generation/test/gsm-hard.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/text_generation/test/gsm8k.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/text_generation/test/gsm8k_question_label.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/text_generation/train/CodeAlpaca-20k.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/text_generation/train/gsm8k.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/dataset/text_generation/train/gsm8k_question_label.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/loggers/csv_logger.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/loggers/tensorboard_logger.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/loggers/wandb_logger.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/fabric/strategy/llama_fsdp.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/hydra/default.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/hydra/help/fusion_bench_help.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/hydra/job_logging/rich_logging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/llama_magnitude_pruning.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/adamerging/clip.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/classification/clip_finetune.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/clip_finetune.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/concrete_subspace/clip_concrete_task_arithmetic.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/depth_upscaling.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/dummy.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/fisher_merging/clip_fisher_merging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/fisher_merging/fisher_merging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/fisher_merging/gpt2_fisher_merging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/expo.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/simple_average_for_llama.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/linear/task_arithmetic_for_llama.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/mixtral_moe_merging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/pruning/llama_magnitude_pruning.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/pruning/llama_random_pruning.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/pruning/llama_wanda_pruning.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/pruning/magnitude_diff_pruning.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/regmean/clip_regmean.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/regmean/regmean.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/simple_average.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/smile_upscaling/singular_projection_merging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/smile_upscaling/smile_mistral_upscaling.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/smile_upscaling/smile_upscaling.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/method/wemoe/weight_ensembling_moe.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/README.md +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_cifar100.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_eight_tasks.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_emnist_letters.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_fashion_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_fer2013.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_food101.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_kmnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_oxford-iiit-pet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_oxford_flowers102.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_pcam.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_rendered-sst2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_resisc45.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_stanford-cars.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_stl10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_sun397.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_svhn.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_cifar10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_cifar100.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_eight_tasks.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_emnist_letters.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_fashion_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_fer2013.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_food101.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_kmnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_oxford-iiit-pet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_oxford_flowers102.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_pcam.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_rendered-sst2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_resisc45.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_stanford-cars.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_stl10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_sun397.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_svhn.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_cifar10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_cifar100.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_eight_tasks.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_emnist_letters.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_fashion_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_fer2013.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_food101.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_kmnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/download_TALL20_models.sh +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/clip-vit/generate_vit_model_config.sh +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-cola.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-cola_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mnli.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mnli_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mrpc.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mrpc_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qnli.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qnli_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qqp.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qqp_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-rte.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-rte_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-sst2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-sst2_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-stsb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-stsb_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-cola_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-mnli_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-mrpc_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-qnli_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-qqp_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-rte_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-sst2_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-stsb_lora-16.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/model/flan-t5/generate_flan-t5.sh +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/_template.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TA8.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TA8_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL14_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL20_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TA8.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TA8_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL14_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL20_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_generalization_exp1.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_generalization_exp2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_mtl.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_robustness_clean.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_single_finetuned.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_svhn_and_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TA8.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TA8_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL14_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL20_model_only.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/Seq2SeqLMPool/_template.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/automodelpool.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/mixtral_moe_merging.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/mixtral_moe_upscaling.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/nyuv2_modelpool.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/smile_mistral_exp_v1.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/smile_mistral_exp_v2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/smile_mistral_exp_v3.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/modelpool/smile_mistral_exp_v4.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/nyuv2_mtl_train.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_L14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_val.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_with_control_task.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TALL14.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TALL20.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_cifar10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_cifar100.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_dtd.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_emnist_letters.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_eurosat.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_fashion_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_fer2013.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_food101.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_gtsrb.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_kmnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_oxford-iiit-pet.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_oxford_flowers102.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_oxford_flowers102_val.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_pcam.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_rendered-sst2.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_resisc45.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_stanford-cars.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_stl10.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_sun397.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_svhn.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/clip-vit-base-patch32_robustness_clean.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/clip-vit-base-patch32_svhn_and_mnist.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/dummy.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/flan-t5_glue_text_generation.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench_config/taskpool/nyuv2_taskpool.yaml +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/setup.cfg +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/tests/test_depth_upscaling.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/tests/test_simple_average.py +0 -0
- {fusion_bench-0.2.11 → fusion_bench-0.2.13}/tests/test_weighed_ensemble.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: fusion_bench
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.13
|
|
4
4
|
Summary: A Comprehensive Benchmark of Deep Model Fusion
|
|
5
5
|
Author-email: Anke Tang <tang.anke@foxmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -45,6 +45,7 @@ Requires-Dist: rich
|
|
|
45
45
|
Requires-Dist: scipy
|
|
46
46
|
Requires-Dist: h5py
|
|
47
47
|
Requires-Dist: pytest
|
|
48
|
+
Dynamic: license-file
|
|
48
49
|
|
|
49
50
|
<div align='center'>
|
|
50
51
|
|
|
@@ -69,6 +70,18 @@ FusionBench is a benchmark suite designed to evaluate the performance of various
|
|
|
69
70
|
|
|
70
71
|
Projects based on FusionBench and news from the community (descending order of date):
|
|
71
72
|
|
|
73
|
+
<details>
|
|
74
|
+
<summary>Hao Mark Chen, et al. FW-Merging: Scaling Model Merging with Frank-Wolfe Optimization. Mar 2025. https://arxiv.org/abs/2503.12649</summary>
|
|
75
|
+
|
|
76
|
+
Model merging has emerged as a promising approach for multi-task learning (MTL), offering a data-efficient alternative to conventional fine-tuning. However, with the rapid development of the open-source AI ecosystem and the increasing availability of fine-tuned foundation models, existing model merging methods face two key limitations: (i) They are primarily designed for in-house fine-tuned models, making them less adaptable to diverse model sources with partially unknown model and task information, (ii) They struggle to scale effectively when merging numerous model checkpoints. To address these challenges, we formulate model merging as a constrained optimization problem and introduce a novel approach: Frank-Wolfe Merging (FW-Merging). Inspired by Frank-Wolfe optimization, our approach iteratively selects the most relevant model in the pool to minimize a linear approximation of the objective function and then executes a local merging similar to the Frank-Wolfe update. The objective function is designed to capture the desired behavior of the target-merged model, while the fine-tuned candidate models define the constraint set. More importantly, FW-Merging serves as an orthogonal technique for existing merging methods, seamlessly integrating with them to further enhance accuracy performance. Our experiments show that FW-Merging scales across diverse model sources, remaining stable with 16 irrelevant models and improving by 15.3% with 16 relevant models on 20 CV tasks, while maintaining constant memory overhead, unlike the linear overhead of data-informed merging methods. Compared with the state-of-the-art approaches, FW-Merging surpasses the data-free merging method by 32.8% and outperforms the data-informed Adamerging by 8.39% when merging 20 ViT models.
|
|
77
|
+
</details>
|
|
78
|
+
|
|
79
|
+
<details>
|
|
80
|
+
<summary>Daniel Marczak, et al. No Task Left Behind: Isotropic Model Merging with Common and Task-Specific Subspaces. Feb 2025. https://arxiv.org/abs/2502.04959</summary>
|
|
81
|
+
|
|
82
|
+
Model merging integrates the weights of multiple task-specific models into a single multi-task model. Despite recent interest in the problem, a significant performance gap between the combined and single-task models remains. In this paper, we investigate the key characteristics of task matrices -- weight update matrices applied to a pre-trained model -- that enable effective merging. We show that alignment between singular components of task-specific and merged matrices strongly correlates with performance improvement over the pre-trained model. Based on this, we propose an isotropic merging framework that flattens the singular value spectrum of task matrices, enhances alignment, and reduces the performance gap. Additionally, we incorporate both common and task-specific subspaces to further improve alignment and performance. Our proposed approach achieves state-of-the-art performance across multiple scenarios, including various sets of tasks and model scales. This work advances the understanding of model merging dynamics, offering an effective methodology to merge models without requiring additional training.
|
|
83
|
+
</details>
|
|
84
|
+
|
|
72
85
|
<details>
|
|
73
86
|
<summary>Anke Tang, et al. Merging Models on the Fly Without Retraining: A Sequential Approach to Scalable Continual Model Merging. Jan 2025. https://arxiv.org/pdf/2501.09522</summary>
|
|
74
87
|
|
|
@@ -21,6 +21,18 @@ FusionBench is a benchmark suite designed to evaluate the performance of various
|
|
|
21
21
|
|
|
22
22
|
Projects based on FusionBench and news from the community (descending order of date):
|
|
23
23
|
|
|
24
|
+
<details>
|
|
25
|
+
<summary>Hao Mark Chen, et al. FW-Merging: Scaling Model Merging with Frank-Wolfe Optimization. Mar 2025. https://arxiv.org/abs/2503.12649</summary>
|
|
26
|
+
|
|
27
|
+
Model merging has emerged as a promising approach for multi-task learning (MTL), offering a data-efficient alternative to conventional fine-tuning. However, with the rapid development of the open-source AI ecosystem and the increasing availability of fine-tuned foundation models, existing model merging methods face two key limitations: (i) They are primarily designed for in-house fine-tuned models, making them less adaptable to diverse model sources with partially unknown model and task information, (ii) They struggle to scale effectively when merging numerous model checkpoints. To address these challenges, we formulate model merging as a constrained optimization problem and introduce a novel approach: Frank-Wolfe Merging (FW-Merging). Inspired by Frank-Wolfe optimization, our approach iteratively selects the most relevant model in the pool to minimize a linear approximation of the objective function and then executes a local merging similar to the Frank-Wolfe update. The objective function is designed to capture the desired behavior of the target-merged model, while the fine-tuned candidate models define the constraint set. More importantly, FW-Merging serves as an orthogonal technique for existing merging methods, seamlessly integrating with them to further enhance accuracy performance. Our experiments show that FW-Merging scales across diverse model sources, remaining stable with 16 irrelevant models and improving by 15.3% with 16 relevant models on 20 CV tasks, while maintaining constant memory overhead, unlike the linear overhead of data-informed merging methods. Compared with the state-of-the-art approaches, FW-Merging surpasses the data-free merging method by 32.8% and outperforms the data-informed Adamerging by 8.39% when merging 20 ViT models.
|
|
28
|
+
</details>
|
|
29
|
+
|
|
30
|
+
<details>
|
|
31
|
+
<summary>Daniel Marczak, et al. No Task Left Behind: Isotropic Model Merging with Common and Task-Specific Subspaces. Feb 2025. https://arxiv.org/abs/2502.04959</summary>
|
|
32
|
+
|
|
33
|
+
Model merging integrates the weights of multiple task-specific models into a single multi-task model. Despite recent interest in the problem, a significant performance gap between the combined and single-task models remains. In this paper, we investigate the key characteristics of task matrices -- weight update matrices applied to a pre-trained model -- that enable effective merging. We show that alignment between singular components of task-specific and merged matrices strongly correlates with performance improvement over the pre-trained model. Based on this, we propose an isotropic merging framework that flattens the singular value spectrum of task matrices, enhances alignment, and reduces the performance gap. Additionally, we incorporate both common and task-specific subspaces to further improve alignment and performance. Our proposed approach achieves state-of-the-art performance across multiple scenarios, including various sets of tasks and model scales. This work advances the understanding of model merging dynamics, offering an effective methodology to merge models without requiring additional training.
|
|
34
|
+
</details>
|
|
35
|
+
|
|
24
36
|
<details>
|
|
25
37
|
<summary>Anke Tang, et al. Merging Models on the Fly Without Retraining: A Sequential Approach to Scalable Continual Model Merging. Jan 2025. https://arxiv.org/pdf/2501.09522</summary>
|
|
26
38
|
|
|
@@ -20,9 +20,11 @@ class AlgorithmFactory:
|
|
|
20
20
|
# model merging methods
|
|
21
21
|
"clip_task_wise_adamerging": ".adamerging.clip_task_wise_adamerging.CLIPTaskWiseAdaMergingAlgorithm",
|
|
22
22
|
"clip_layer_wise_adamerging": ".adamerging.clip_layer_wise_adamerging.CLIPLayerWiseAdaMergingAlgorithm",
|
|
23
|
-
"clip_layer_wise_adamerging_doge_ta": ".
|
|
23
|
+
"clip_layer_wise_adamerging_doge_ta": ".doge_ta.clip_layer_wise_adamerging.CLIPLayerWiseAdaMergingAlgorithm",
|
|
24
24
|
"singular_projection_merging": "fusion_bench.method.smile_upscaling.singular_projection_merging.SingularProjectionMergingAlgorithm",
|
|
25
25
|
"clip_layer_wise_adamerging_surgery": ".surgery.clip_layer_wise_adamerging_surgery.CLIPLayerWiseAdaMergingSurgeryAlgorithm",
|
|
26
|
+
"clip_task_wise_gossip": ".gossip.clip_task_wise_gossip.CLIPTaskWiseGossipAlgorithm",
|
|
27
|
+
"clip_layer_wise_gossip": ".gossip.clip_layer_wise_gossip.CLIPLayerWiseGossipAlgorithm",
|
|
26
28
|
# plug-and-play model merging methods
|
|
27
29
|
"clip_concrete_task_arithmetic": ".concrete_subspace.clip_concrete_task_arithmetic.ConcreteTaskArithmeticAlgorithmForCLIP",
|
|
28
30
|
"clip_concrete_task_wise_adamerging": ".concrete_subspace.clip_concrete_adamerging.ConcreteTaskWiseAdaMergingForCLIP",
|
|
@@ -148,12 +148,13 @@ class FlanT5GLUETextGenerationTaskPool(LightningFabricMixin, TaskPool):
|
|
|
148
148
|
else:
|
|
149
149
|
raise ValueError(f"Unknown task {task_config.name}")
|
|
150
150
|
|
|
151
|
-
def evaluate(self, model: T5ForConditionalGeneration):
|
|
151
|
+
def evaluate(self, model: T5ForConditionalGeneration, name: str = None):
|
|
152
152
|
"""
|
|
153
153
|
Evaluate the model on the FlanT5 GLUE text generation tasks.
|
|
154
154
|
|
|
155
155
|
Args:
|
|
156
156
|
model (T5ForConditionalGeneration): The model to evaluate.
|
|
157
|
+
name (str, optional): The name of the model. Defaults to None. This is used to identify the model in the report.
|
|
157
158
|
|
|
158
159
|
Returns:
|
|
159
160
|
dict: A dictionary containing the evaluation results for each task.
|
|
@@ -169,6 +170,8 @@ class FlanT5GLUETextGenerationTaskPool(LightningFabricMixin, TaskPool):
|
|
|
169
170
|
"all_params": all_params,
|
|
170
171
|
"trainable_percentage": training_params / all_params,
|
|
171
172
|
}
|
|
173
|
+
if name is not None:
|
|
174
|
+
report["model_info"]["name"] = name
|
|
172
175
|
model = self.fabric.setup(model)
|
|
173
176
|
report.update(super().evaluate(model))
|
|
174
177
|
log.info(f"evaluation report: {report}")
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Constants for CLIP Vision Model Merging
|
|
2
|
+
TASK_NAMES_TA8 = [
|
|
3
|
+
"sun397",
|
|
4
|
+
"stanford-cars",
|
|
5
|
+
"resisc45",
|
|
6
|
+
"eurosat",
|
|
7
|
+
"svhn",
|
|
8
|
+
"gtsrb",
|
|
9
|
+
"mnist",
|
|
10
|
+
"dtd",
|
|
11
|
+
]
|
|
12
|
+
|
|
13
|
+
TASK_NAMES_TA8_CAP = [
|
|
14
|
+
"SUN397",
|
|
15
|
+
"Cars",
|
|
16
|
+
"RESISC45",
|
|
17
|
+
"EuroSAT",
|
|
18
|
+
"SVHN",
|
|
19
|
+
"GTSRB",
|
|
20
|
+
"MNIST",
|
|
21
|
+
"DTD",
|
|
22
|
+
]
|
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
This module provides a class to convert a dataset whose object is a list of dictionaries with keys "image" and "label" to a dataset whose object is a tuple of tensors (inputs, label) for CLIP models.
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
|
-
from typing import Optional
|
|
5
|
+
from typing import Optional, Tuple
|
|
6
6
|
|
|
7
7
|
import torch
|
|
8
8
|
from transformers import CLIPProcessor, ProcessorMixin
|
|
9
9
|
|
|
10
|
+
__all__ = ["CLIPDataset"]
|
|
11
|
+
|
|
10
12
|
|
|
11
13
|
class CLIPDataset(torch.utils.data.Dataset):
|
|
12
14
|
"""
|
|
@@ -34,7 +36,7 @@ class CLIPDataset(torch.utils.data.Dataset):
|
|
|
34
36
|
"""Returns the number of items in the dataset."""
|
|
35
37
|
return len(self.dataset)
|
|
36
38
|
|
|
37
|
-
def __getitem__(self, idx: int):
|
|
39
|
+
def __getitem__(self, idx: int) -> Tuple[torch.Tensor, int]:
|
|
38
40
|
"""
|
|
39
41
|
Retrieves and processes an item from the dataset.
|
|
40
42
|
|
|
@@ -62,6 +64,12 @@ class CLIPDataset(torch.utils.data.Dataset):
|
|
|
62
64
|
inputs = self.processor(images=[image], return_tensors="pt")[
|
|
63
65
|
"pixel_values"
|
|
64
66
|
][0]
|
|
67
|
+
elif callable(self.processor):
|
|
68
|
+
inputs = self.processor(image)
|
|
69
|
+
else:
|
|
70
|
+
raise ValueError(
|
|
71
|
+
"The processor should be a CLIPProcessor or a callable function"
|
|
72
|
+
)
|
|
65
73
|
else:
|
|
66
74
|
# if processor is None, return the raw image directly
|
|
67
75
|
inputs = image
|
|
@@ -6,7 +6,7 @@ from datasets import load_dataset
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
def load_gsm8k_question_label_data(
|
|
9
|
-
dataset_name: Literal["train", "test", "train_socratic", "test_socratic"]
|
|
9
|
+
dataset_name: Literal["train", "test", "train_socratic", "test_socratic"],
|
|
10
10
|
):
|
|
11
11
|
R"""
|
|
12
12
|
Load the GSM8K dataset and extract questions and labels.
|
|
@@ -45,7 +45,7 @@ def load_gsm8k_question_label_data(
|
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
def load_gsm8k_question_label_dataset(
|
|
48
|
-
dataset_name: Literal["train", "test", "train_socratic", "test_socratic"]
|
|
48
|
+
dataset_name: Literal["train", "test", "train_socratic", "test_socratic"],
|
|
49
49
|
):
|
|
50
50
|
"""
|
|
51
51
|
Load the GSM8K dataset and return it as a Hugging Face Dataset object.
|
|
@@ -53,7 +53,7 @@ _import_structure = {
|
|
|
53
53
|
"PWEMoExactParetoOptimalForCLIP",
|
|
54
54
|
],
|
|
55
55
|
"ada_svd": ["AdaSVDMergingForCLIPVisionModel"],
|
|
56
|
-
"
|
|
56
|
+
"doge_ta": ["DOGE_TA_Algorithm"],
|
|
57
57
|
"task_singular_vector": ["TaskSingularVectorMerging"],
|
|
58
58
|
"isotropic_merging": [
|
|
59
59
|
"ISO_C_Merge", # alias
|
|
@@ -62,6 +62,11 @@ _import_structure = {
|
|
|
62
62
|
"IsotropicMergingInCommonSubspace",
|
|
63
63
|
],
|
|
64
64
|
"opcm": ["OPCMForCLIP"],
|
|
65
|
+
"gossip": [
|
|
66
|
+
"CLIPLayerWiseGossipAlgorithm",
|
|
67
|
+
"CLIPTaskWiseGossipAlgorithm",
|
|
68
|
+
"FlanT5LayerWiseGossipAlgorithm",
|
|
69
|
+
],
|
|
65
70
|
# plug-and-play model merging methods
|
|
66
71
|
"concrete_subspace": [
|
|
67
72
|
"ConcreteTaskArithmeticAlgorithmForCLIP",
|
|
@@ -128,7 +133,7 @@ if TYPE_CHECKING:
|
|
|
128
133
|
from .dare import DareSimpleAverage, DareTaskArithmetic, DareTiesMerging
|
|
129
134
|
from .dawe import DataAdaptiveWeightEnsemblingForCLIP
|
|
130
135
|
from .depth_upscaling import DepthUpscalingAlgorithm, DepthUpscalingForLlama
|
|
131
|
-
from .
|
|
136
|
+
from .doge_ta import DOGE_TA_Algorithm
|
|
132
137
|
from .dummy import DummyAlgorithm
|
|
133
138
|
from .ensemble import (
|
|
134
139
|
MaxModelPredictorAlgorithm,
|
|
@@ -136,6 +141,11 @@ if TYPE_CHECKING:
|
|
|
136
141
|
WeightedEnsembleAlgorithm,
|
|
137
142
|
)
|
|
138
143
|
from .fisher_merging import FisherMergingForCLIPVisionModel
|
|
144
|
+
from .gossip import (
|
|
145
|
+
CLIPLayerWiseGossipAlgorithm,
|
|
146
|
+
CLIPTaskWiseGossipAlgorithm,
|
|
147
|
+
FlanT5LayerWiseGossipAlgorithm,
|
|
148
|
+
)
|
|
139
149
|
from .isotropic_merging import (
|
|
140
150
|
ISO_C_Merge,
|
|
141
151
|
ISO_CTS_Merge,
|
|
@@ -9,7 +9,7 @@ fusion_bench \
|
|
|
9
9
|
modelpool=clip-vit-base-patch32_TA8 \
|
|
10
10
|
taskpool=clip-vit-classification_TA8 \
|
|
11
11
|
fabric.loggers.root_dir=outputs/logs/ViT-B-32 \
|
|
12
|
-
fabric.loggers.name=
|
|
12
|
+
fabric.loggers.name=clip_layer_wise_adamerging_adamerging
|
|
13
13
|
```
|
|
14
14
|
"""
|
|
15
15
|
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import functools
|
|
2
|
+
import logging
|
|
3
|
+
import os
|
|
4
|
+
|
|
5
|
+
import torch
|
|
6
|
+
from omegaconf import DictConfig
|
|
7
|
+
from torch import Tensor
|
|
8
|
+
from torch.utils.data import DataLoader
|
|
9
|
+
from transformers import CLIPModel, CLIPProcessor
|
|
10
|
+
|
|
11
|
+
from fusion_bench.dataset import CLIPDataset
|
|
12
|
+
from fusion_bench.modelpool import CLIPVisionModelPool
|
|
13
|
+
from fusion_bench.models.hf_clip import HFCLIPClassifier
|
|
14
|
+
from fusion_bench.tasks.clip_classification import get_classnames_and_templates
|
|
15
|
+
from fusion_bench.utils import timeit_context
|
|
16
|
+
from fusion_bench.utils.data import InfiniteDataLoader
|
|
17
|
+
|
|
18
|
+
from .task_wise_adamerging import TaskWiseAdaMergingAlgorithm
|
|
19
|
+
|
|
20
|
+
log = logging.getLogger(__name__)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class CLIPTaskWiseAdaMergingAlgorithm(TaskWiseAdaMergingAlgorithm):
|
|
24
|
+
"""
|
|
25
|
+
A class for task-wise adaptive merging of CLIP models.
|
|
26
|
+
|
|
27
|
+
This class extends the TaskWiseAdaMergingAlgorithm to provide specific
|
|
28
|
+
functionality for CLIP models, including loading datasets, constructing
|
|
29
|
+
zero-shot classification heads, and computing logits.
|
|
30
|
+
|
|
31
|
+
Attributes:
|
|
32
|
+
modelpool (CLIPVisionModelPool): The model pool containing CLIP models.
|
|
33
|
+
_clip_processor (CLIPProcessor): The CLIP processor for preparing inputs.
|
|
34
|
+
zeroshot_weights (dict): A dictionary to store zero-shot weights for each task.
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
modelpool: CLIPVisionModelPool = None
|
|
38
|
+
_clip_processor: CLIPProcessor = None
|
|
39
|
+
zeroshot_weights = {}
|
|
40
|
+
|
|
41
|
+
def __init__(self, algorithm_config: DictConfig):
|
|
42
|
+
super().__init__(algorithm_config)
|
|
43
|
+
|
|
44
|
+
@functools.cache
|
|
45
|
+
def get_test_dataset(self, task: str):
|
|
46
|
+
"""
|
|
47
|
+
Load the test dataset for the task.
|
|
48
|
+
This method is cached, so the dataset is loaded only once.
|
|
49
|
+
|
|
50
|
+
Args:
|
|
51
|
+
task (str): The name of the task.
|
|
52
|
+
|
|
53
|
+
Returns:
|
|
54
|
+
CLIPDataset: The test dataset for the task.
|
|
55
|
+
"""
|
|
56
|
+
log.info(f"Loading test dataset: {task}")
|
|
57
|
+
dataset = self.modelpool.load_test_dataset(task)
|
|
58
|
+
dataset = CLIPDataset(dataset, self._clip_processor)
|
|
59
|
+
return dataset
|
|
60
|
+
|
|
61
|
+
@functools.cache
|
|
62
|
+
def get_shuffled_test_loader_iter(self, task: str):
|
|
63
|
+
"""
|
|
64
|
+
Get an iterator over the shuffled test DataLoader for the task.
|
|
65
|
+
|
|
66
|
+
Args:
|
|
67
|
+
task (str): The name of the task.
|
|
68
|
+
|
|
69
|
+
Returns:
|
|
70
|
+
iterator: An iterator over the shuffled test DataLoader.
|
|
71
|
+
"""
|
|
72
|
+
loader = DataLoader(
|
|
73
|
+
self.get_test_dataset(task),
|
|
74
|
+
batch_size=self.config.batch_size,
|
|
75
|
+
shuffle=True,
|
|
76
|
+
num_workers=self.config.num_workers,
|
|
77
|
+
pin_memory=True,
|
|
78
|
+
)
|
|
79
|
+
if self._fabric is not None:
|
|
80
|
+
loader = self._fabric.setup_dataloaders(loader)
|
|
81
|
+
return iter(InfiniteDataLoader(loader))
|
|
82
|
+
|
|
83
|
+
def on_test_time_adaptation_start(self):
|
|
84
|
+
"""
|
|
85
|
+
Prepare for test-time adaptation.
|
|
86
|
+
|
|
87
|
+
This method loads the CLIP processor and constructs the zero-shot
|
|
88
|
+
classification head for each task.
|
|
89
|
+
"""
|
|
90
|
+
clip_model_config = self.modelpool.get_model_config("_pretrained_")
|
|
91
|
+
pretrained_path = (
|
|
92
|
+
clip_model_config.pretrained_model_name_or_path
|
|
93
|
+
if hasattr(clip_model_config, "pretrained_model_name_or_path")
|
|
94
|
+
else clip_model_config.path
|
|
95
|
+
)
|
|
96
|
+
|
|
97
|
+
with timeit_context("Loading CLIP processor and pretrained CLIP model."):
|
|
98
|
+
self._clip_processor = CLIPProcessor.from_pretrained(pretrained_path)
|
|
99
|
+
clip_model: CLIPModel = CLIPModel.from_pretrained(pretrained_path)
|
|
100
|
+
|
|
101
|
+
clip_classifier = HFCLIPClassifier(clip_model, self._clip_processor)
|
|
102
|
+
self.visual_projection = clip_model.visual_projection.requires_grad_(False)
|
|
103
|
+
self.logit_scale_exp = clip_model.logit_scale.exp()
|
|
104
|
+
if self._fabric is not None:
|
|
105
|
+
self.visual_projection = self._fabric.to_device(self.visual_projection)
|
|
106
|
+
self.logit_scale_exp = self._fabric.to_device(self.logit_scale_exp)
|
|
107
|
+
|
|
108
|
+
for task in self.modelpool.model_names:
|
|
109
|
+
cache_file = os.path.join(
|
|
110
|
+
self.config.cache_dir,
|
|
111
|
+
f"{os.path.basename(pretrained_path)}_{task}_zeroshot_weights.pt",
|
|
112
|
+
)
|
|
113
|
+
if os.path.exists(cache_file):
|
|
114
|
+
log.info(f"Loading cached zeroshot weights for task: {task}")
|
|
115
|
+
zeroshot_weights = torch.load(cache_file, map_location="cpu")
|
|
116
|
+
else:
|
|
117
|
+
log.info(f"Construct zero shot classification head for task: {task}")
|
|
118
|
+
classnames, templates = get_classnames_and_templates(task)
|
|
119
|
+
clip_classifier.set_classification_task(classnames, templates)
|
|
120
|
+
zeroshot_weights = clip_classifier.zeroshot_weights
|
|
121
|
+
log.info(f"save zeroshot weights to {cache_file}")
|
|
122
|
+
torch.save(zeroshot_weights, cache_file)
|
|
123
|
+
self.zeroshot_weights[task] = zeroshot_weights
|
|
124
|
+
if self._fabric is not None:
|
|
125
|
+
self.zeroshot_weights[task] = self._fabric.to_device(
|
|
126
|
+
self.zeroshot_weights[task]
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
def compute_logits(self, module, batch, task: str) -> Tensor:
|
|
130
|
+
"""
|
|
131
|
+
Compute the logits for the given batch and task.
|
|
132
|
+
|
|
133
|
+
This method computes the image embeddings, normalizes them, and calculates
|
|
134
|
+
the cosine similarity with the text embeddings to produce classification logits.
|
|
135
|
+
|
|
136
|
+
Args:
|
|
137
|
+
module (nn.Module): The model module.
|
|
138
|
+
batch (tuple): A batch of input data.
|
|
139
|
+
task (str): The name of the task.
|
|
140
|
+
|
|
141
|
+
Returns:
|
|
142
|
+
Tensor: The classification logits for the batch.
|
|
143
|
+
"""
|
|
144
|
+
images, _ = batch
|
|
145
|
+
text_embeds = self.zeroshot_weights[task]
|
|
146
|
+
|
|
147
|
+
image_embeds = module(images)[1]
|
|
148
|
+
image_embeds = self.visual_projection(image_embeds)
|
|
149
|
+
|
|
150
|
+
# normalize embeddings
|
|
151
|
+
image_embeds = image_embeds / image_embeds.norm(p=2, dim=-1, keepdim=True)
|
|
152
|
+
|
|
153
|
+
# cosine similarity
|
|
154
|
+
logits_per_text = (
|
|
155
|
+
torch.matmul(text_embeds, image_embeds.t()) * self.logit_scale_exp
|
|
156
|
+
)
|
|
157
|
+
logits_per_image = logits_per_text.t()
|
|
158
|
+
|
|
159
|
+
return logits_per_image
|
|
@@ -9,7 +9,7 @@ fusion_bench \
|
|
|
9
9
|
modelpool=clip-vit-base-patch32_TA8 \
|
|
10
10
|
taskpool=clip-vit-classification_TA8 \
|
|
11
11
|
fabric.loggers.root_dir=outputs/logs/ViT-B-32 \
|
|
12
|
-
fabric.loggers.name=
|
|
12
|
+
fabric.loggers.name=clip_layer_wise_adamerging_adamerging
|
|
13
13
|
```
|
|
14
14
|
"""
|
|
15
15
|
|
{fusion_bench-0.2.11 → fusion_bench-0.2.13}/fusion_bench/method/fisher_merging/fisher_merging.py
RENAMED
|
@@ -12,6 +12,7 @@ from torch import Tensor, nn
|
|
|
12
12
|
from tqdm.autonotebook import tqdm
|
|
13
13
|
|
|
14
14
|
from fusion_bench.method import BaseAlgorithm
|
|
15
|
+
from fusion_bench.mixins import SimpleProfilerMixin
|
|
15
16
|
from fusion_bench.modelpool import BaseModelPool
|
|
16
17
|
|
|
17
18
|
log = logging.getLogger(__name__)
|
|
@@ -352,7 +353,7 @@ def filter_state_dict(
|
|
|
352
353
|
return filtered_state_dict
|
|
353
354
|
|
|
354
355
|
|
|
355
|
-
class FisherMergingAlgorithm(BaseAlgorithm):
|
|
356
|
+
class FisherMergingAlgorithm(BaseAlgorithm, SimpleProfilerMixin):
|
|
356
357
|
"""
|
|
357
358
|
Implements the Fisher Merging Algorithm.
|
|
358
359
|
|
|
@@ -432,25 +433,36 @@ class FisherMergingAlgorithm(BaseAlgorithm):
|
|
|
432
433
|
for param_name in param_names_to_merge:
|
|
433
434
|
models_to_merge_param_dict[param_name].append(param_dict[param_name])
|
|
434
435
|
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
436
|
+
with (
|
|
437
|
+
self.profile("merging models"),
|
|
438
|
+
self.profile("computing fisher weights"),
|
|
439
|
+
):
|
|
440
|
+
model_to_merge_fisher_weights = self.get_fisher_weights(
|
|
441
|
+
model_name=name,
|
|
442
|
+
model=model,
|
|
443
|
+
train_dataset=modelpool.load_train_dataset(name),
|
|
444
|
+
param_names_to_merge=param_names_to_merge,
|
|
445
|
+
)
|
|
441
446
|
|
|
442
|
-
|
|
447
|
+
models_to_merge_fisher_weights_list.append(
|
|
448
|
+
model_to_merge_fisher_weights
|
|
449
|
+
)
|
|
443
450
|
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
+
with self.profile("merging models"):
|
|
452
|
+
merged_params = merging_with_fisher_weights(
|
|
453
|
+
models_to_merge_param_dict=models_to_merge_param_dict,
|
|
454
|
+
models_to_merge_fisher_weights_list=models_to_merge_fisher_weights_list,
|
|
455
|
+
fisher_scaling_coefficients=torch.ones(len(modelpool)) / len(modelpool),
|
|
456
|
+
normalize_fisher_weight=self.config.get(
|
|
457
|
+
"normalize_fisher_weight", True
|
|
458
|
+
),
|
|
459
|
+
minimal_fisher_weight=self.config.get("minimal_fisher_weight", 1e-6),
|
|
460
|
+
)
|
|
461
|
+
|
|
462
|
+
merged_model = modelpool.load_model("_pretrained_")
|
|
463
|
+
merged_model.load_state_dict(merged_params, strict=False)
|
|
451
464
|
|
|
452
|
-
|
|
453
|
-
merged_model.load_state_dict(merged_params, strict=False)
|
|
465
|
+
self.print_profile_summary()
|
|
454
466
|
return merged_model
|
|
455
467
|
|
|
456
468
|
def get_fisher_weights(
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Example Usage:
|
|
3
|
+
|
|
4
|
+
```bash
|
|
5
|
+
fusion_bench \
|
|
6
|
+
method=adamerging \
|
|
7
|
+
method.name=clip_layer_wise_adamerging \
|
|
8
|
+
method.save_merging_weights=merging_weights.pt \
|
|
9
|
+
modelpool=clip-vit-base-patch32_TA8 \
|
|
10
|
+
taskpool=clip-vit-classification_TA8 \
|
|
11
|
+
fabric_logger.root_dir=outputs/logs/ViT-B-32 \
|
|
12
|
+
fabric_logger.name=clip_layer_wise_adamerging_adam
|
|
13
|
+
```
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
import functools
|
|
17
|
+
import logging
|
|
18
|
+
|
|
19
|
+
from fusion_bench.mixins import CLIPClassificationMixin
|
|
20
|
+
|
|
21
|
+
from .layer_wise_gossip import LayerWiseGossipAlgorithm
|
|
22
|
+
|
|
23
|
+
log = logging.getLogger(__name__)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class CLIPLayerWiseGossipAlgorithm(
|
|
27
|
+
CLIPClassificationMixin,
|
|
28
|
+
LayerWiseGossipAlgorithm,
|
|
29
|
+
):
|
|
30
|
+
def on_test_time_adaptation_start(self):
|
|
31
|
+
"""
|
|
32
|
+
Here we load the CLIP processor and construct the zero-shot classification head for each task.
|
|
33
|
+
"""
|
|
34
|
+
if self.whether_setup_zero_shot_classification_head == False:
|
|
35
|
+
self.setup_zero_shot_classification_head()
|
|
36
|
+
|
|
37
|
+
@functools.cache
|
|
38
|
+
def get_shuffled_test_loader_iter(self, task: str):
|
|
39
|
+
return super().get_shuffled_test_loader_iter(
|
|
40
|
+
task,
|
|
41
|
+
batch_size=self.config.batch_size,
|
|
42
|
+
num_workers=self.config.num_workers,
|
|
43
|
+
)
|
|
@@ -14,7 +14,7 @@ from fusion_bench.models.hf_clip import HFCLIPClassifier
|
|
|
14
14
|
from fusion_bench.tasks.clip_classification import get_classnames_and_templates
|
|
15
15
|
from fusion_bench.utils import timeit_context
|
|
16
16
|
|
|
17
|
-
from .
|
|
17
|
+
from .task_wise_gossip import TaskWiseGossipAlgorithm
|
|
18
18
|
|
|
19
19
|
log = logging.getLogger(__name__)
|
|
20
20
|
|
|
@@ -48,11 +48,11 @@ class InfiniteDataLoader:
|
|
|
48
48
|
return data
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
class
|
|
51
|
+
class CLIPTaskWiseGossipAlgorithm(TaskWiseGossipAlgorithm):
|
|
52
52
|
"""
|
|
53
53
|
A class for task-wise adaptive merging of CLIP models.
|
|
54
54
|
|
|
55
|
-
This class extends the
|
|
55
|
+
This class extends the TaskWiseGossipAlgorithm to provide specific
|
|
56
56
|
functionality for CLIP models, including loading datasets, constructing
|
|
57
57
|
zero-shot classification heads, and computing logits.
|
|
58
58
|
|
|
@@ -115,6 +115,9 @@ class CLIPTaskWiseAdaMergingAlgorithm(TaskWiseAdaMergingAlgorithm):
|
|
|
115
115
|
This method loads the CLIP processor and constructs the zero-shot
|
|
116
116
|
classification head for each task.
|
|
117
117
|
"""
|
|
118
|
+
if self._clip_processor is not None and self.zeroshot_weights is not None:
|
|
119
|
+
return # this can be reused in Gossip
|
|
120
|
+
|
|
118
121
|
clip_model_config = self.modelpool.get_model_config("_pretrained_")
|
|
119
122
|
pretrained_path = (
|
|
120
123
|
clip_model_config.pretrained_model_name_or_path
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import torch
|
|
2
|
+
from torch import Tensor
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def entropy_loss(logits: Tensor, eps: float = 1e-8) -> Tensor:
|
|
6
|
+
"""
|
|
7
|
+
Compute the entropy loss of a set of logits.
|
|
8
|
+
|
|
9
|
+
Args:
|
|
10
|
+
logits (Tensor): The logits to compute the entropy loss of.
|
|
11
|
+
eps (float): A small value to avoid log(0). Default is 1e-8.
|
|
12
|
+
|
|
13
|
+
Returns:
|
|
14
|
+
Tensor: The entropy loss of the logits.
|
|
15
|
+
"""
|
|
16
|
+
# Ensure the logits tensor has 2 dimensions
|
|
17
|
+
assert (
|
|
18
|
+
logits.dim() == 2
|
|
19
|
+
), f"Expected logits to have 2 dimensions, found {logits.dim()}, {logits.size()=}"
|
|
20
|
+
|
|
21
|
+
# Compute the softmax probabilities
|
|
22
|
+
probs = torch.softmax(logits, dim=-1)
|
|
23
|
+
|
|
24
|
+
# Compute the entropy loss
|
|
25
|
+
return -torch.sum(probs * torch.log(probs + eps), dim=-1).mean()
|