PEFT 文件

多工提示調優

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

多工提示調優

多工提示調優 將每個任務的軟提示分解為一個單一的可學習、可轉移的提示,而不是為每個任務使用單獨的提示。這個單一的可學習提示可以透過乘法低秩更新來適應每個任務。

論文摘要如下:

提示調優是一種很有前途的方法,透過對學習到的提示向量進行條件化,將基礎預訓練模型適應於各個任務,從而有效地將大型語言模型適應於多個下游任務。然而,現有方法通常從頭開始學習軟提示向量,目前尚不清楚如何在多工學習設定中利用提示向量豐富的跨任務知識。我們提出了多工提示調優(MPT),它首先透過從多個特定任務的源提示中提煉知識來學習一個單一的可轉移提示。然後,我們學習對這個共享提示進行乘法低秩更新,以有效地將其適應於每個下游目標任務。在 23 個 NLP 資料集上進行的大量實驗表明,我們提出的方法優於最先進的方法,在某些情況下甚至優於全量微調的基線,儘管任務特定的引數僅調整了 0.035%。.

MultitaskPromptTuningConfig

class peft.MultitaskPromptTuningConfig

< >

( task_type: typing.Union[str, peft.utils.peft_types.TaskType, NoneType] = None peft_type: typing.Union[str, peft.utils.peft_types.PeftType, NoneType] = None auto_mapping: typing.Optional[dict] = None base_model_name_or_path: typing.Optional[str] = None revision: typing.Optional[str] = None inference_mode: bool = False num_virtual_tokens: int = None token_dim: int = None num_transformer_submodules: typing.Optional[int] = None num_attention_heads: typing.Optional[int] = None num_layers: typing.Optional[int] = None modules_to_save: typing.Optional[list[str]] = None prompt_tuning_init: typing.Union[peft.tuners.multitask_prompt_tuning.config.MultitaskPromptTuningInit, str] = <MultitaskPromptTuningInit.RANDOM: 'RANDOM'> prompt_tuning_init_text: typing.Optional[str] = None tokenizer_name_or_path: typing.Optional[str] = None tokenizer_kwargs: typing.Optional[dict] = None prompt_tuning_init_state_dict_path: typing.Optional[str] = None prompt_tuning_init_task: typing.Optional[int] = 0 num_ranks: typing.Optional[int] = 1 num_tasks: typing.Optional[int] = 1 )

MultitaskPromptEmbedding

class peft.tuners.MultitaskPromptEmbedding

< >

( config: MultitaskPromptTuningConfig word_embeddings )

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.