We lifted 14 functions out of this paper's own repositories and ran 4 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.
| Repository | Role | Ran |
|---|---|---|
| tianyucuiovo/fedpgp | canonical | 4 of 14 |
| Function | Status | Where it lives |
|---|---|---|
| average_weights | Ran | tianyucuiovo/fedpgp/utils.py pointer only (licence: NONE) · get_code("ab2485d028020739") |
| basic_clean | Ran | tianyucuiovo/fedpgp/clip/simple_tokenizer.py pointer only (licence: NONE) · get_code("98f385d847636a3e") |
| get_pairs | Ran | tianyucuiovo/fedpgp/clip/simple_tokenizer.py pointer only (licence: NONE) · get_code("d919ae32e5e4e616") |
| whitespace_clean | Ran | tianyucuiovo/fedpgp/clip/simple_tokenizer.py pointer only (licence: NONE) · get_code("9542161e9640b858") |
| average_weights | Not yet run | tianyucuiovo/fedpgp/fed_utils.py pointer only (licence: NONE) · get_code("697e29e1bbc08d3d") |
| build_model | Not yet run | tianyucuiovo/fedpgp/clip/model.py pointer only (licence: NONE) · get_code("83bfcd868a539277") |
| cluster_weights | Not yet run | tianyucuiovo/fedpgp/fed_utils.py pointer only (licence: NONE) · get_code("a064a0985b120c40") |
| cosine_match_weights | Not yet run | tianyucuiovo/fedpgp/fed_utils.py pointer only (licence: NONE) · get_code("0791530eb1d82a07") |
| load | Not yet run | tianyucuiovo/fedpgp/clip/clip.py pointer only (licence: NONE) · get_code("fbf8c0143d9c48e3") |
| prepare_data_domainNet | Not yet run | tianyucuiovo/fedpgp/data_utils.py pointer only (licence: NONE) · get_code("bed6b7031114cf91") |
| prepare_data_domainNet_partition_client_train | Not yet run | tianyucuiovo/fedpgp/data_utils.py pointer only (licence: NONE) · get_code("c4ffa511340e3179") |
| prepare_data_domainNet_partition_train | Not yet run | tianyucuiovo/fedpgp/data_utils.py pointer only (licence: NONE) · get_code("235669fb66eef25a") |
| record_net_data_stats | Not yet run | tianyucuiovo/fedpgp/datasplit.py pointer only (licence: NONE) · get_code("49d5e536fa27cddc") |
| renormalize | Not yet run | tianyucuiovo/fedpgp/datasplit.py pointer only (licence: NONE) · get_code("03564ffca35b29ce") |
Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.
Federated Prompt Learning (FPL) incorporates large pre-trained Vision-Language models (VLM) into federated learning through prompt tuning. The transferable representations and remarkable generalization capacity of VLM make them highly compatible with the integration of federated learning. Addressing data heterogeneity in federated learning requires personalization, but excessive focus on it across clients could compromise the model's ability to generalize effectively. To preserve the impressive generalization capability of VLM, it is crucial to strike a balance between personalization and generalization in FPL. To tackle this challenge, we proposed Federated Prompt Learning with CLIP Generalization and low-rank Personalization (FedPGP), which employs pre-trained CLIP to provide knowledge-guidance on the global prompt for improved generalization and incorporates a low-rank adaptation term to personalize the global prompt. Further, FedPGP integrates a prompt-wise contrastive loss to achieve knowledge guidance and personalized adaptation simultaneously, enabling a harmonious balance between personalization and generalization in FPL. We conduct extensive experiments on various datasets to explore base-to-novel generalization in both category-level and domain-level scenarios with heterogeneous data, showing the superiority of FedPGP in balancing generalization and personalization.
The same record, over MCP at https://syntology.ai/mcp:
get_harvested_code_for_paper("2405.09771")
get_code_for_paper("2405.09771")
have("2405.09771")
Connect an agent — have() is free.