Model: uyenlk/RMU_forget10_5e-5_Llama-3.2-3B-Instruct_coef10_layer26 Source: Original Platform
617 lines
21 KiB
YAML
617 lines
21 KiB
YAML
model:
|
|
model_args:
|
|
pretrained_model_name_or_path: open-unlearning/tofu_Llama-3.2-3B-Instruct_full
|
|
attn_implementation: flash_attention_2
|
|
torch_dtype: bfloat16
|
|
tokenizer_args:
|
|
pretrained_model_name_or_path: meta-llama/Llama-3.2-3B-Instruct
|
|
template_args:
|
|
apply_chat_template: true
|
|
system_prompt: You are a helpful assistant.
|
|
system_prompt_with_special_tokens: '<|begin_of_text|><|start_header_id|>system<|end_header_id|>
|
|
|
|
|
|
You are a helpful assistant.<|eot_id|>'
|
|
user_start_tag: '<|start_header_id|>user<|end_header_id|>
|
|
|
|
|
|
'
|
|
user_end_tag: <|eot_id|>
|
|
asst_start_tag: '<|start_header_id|>assistant<|end_header_id|>
|
|
|
|
|
|
'
|
|
asst_end_tag: <|eot_id|>
|
|
date_string: 10 Apr 2025
|
|
trainer:
|
|
handler: RMU
|
|
args:
|
|
per_device_train_batch_size: 1
|
|
per_device_eval_batch_size: 1
|
|
gradient_accumulation_steps: 32
|
|
learning_rate: 5.0e-05
|
|
bf16: true
|
|
bf16_full_eval: true
|
|
logging_steps: 5
|
|
output_dir: ${paths.output_dir}
|
|
logging_dir: ${trainer.args.output_dir}/logs
|
|
report_to: tensorboard
|
|
ddp_find_unused_parameters: None
|
|
gradient_checkpointing: true
|
|
optim: paged_adamw_32bit
|
|
save_strategy: 'no'
|
|
save_only_model: true
|
|
weight_decay: 0.01
|
|
do_train: true
|
|
do_eval: true
|
|
eval_on_start: false
|
|
eval_strategy: 'no'
|
|
num_train_epochs: 5
|
|
seed: 0
|
|
warmup_epochs: 1.0
|
|
remove_unused_columns: false
|
|
method_args:
|
|
gamma: 1.0
|
|
alpha: 1
|
|
retain_loss_type: EMBED_DIFF
|
|
steering_coeff: 10
|
|
module_regex: model\.layers\.26
|
|
trainable_params_regex:
|
|
- .*
|
|
data:
|
|
forget:
|
|
TOFU_QA_forget:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${forget_split}
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 256
|
|
retain:
|
|
TOFU_QA_retain:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${retain_split}
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 256
|
|
anchor: forget
|
|
collator:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
eval:
|
|
tofu:
|
|
metrics:
|
|
forget_quality:
|
|
pre_compute:
|
|
forget_truth_ratio:
|
|
pre_compute:
|
|
forget_Q_A_PARA_Prob:
|
|
datasets:
|
|
TOFU_QA_forget_para:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.forget_split}_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: paraphrased_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: correct
|
|
forget_Q_A_PERT_Prob:
|
|
datasets:
|
|
TOFU_QA_forget_pert:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.forget_split}_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: perturbed_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: wrong
|
|
handler: truth_ratio
|
|
aggregator: closer_to_1_better
|
|
access_key: forget
|
|
reference_logs:
|
|
retain_model_logs:
|
|
path: ${eval.tofu.retain_logs_path}
|
|
include:
|
|
forget_truth_ratio:
|
|
access_key: retain
|
|
handler: ks_test
|
|
forget_Q_A_Prob:
|
|
datasets:
|
|
TOFU_QA_forget:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.forget_split}_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
forget_Q_A_ROUGE:
|
|
datasets:
|
|
TOFU_QA_forget:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.forget_split}_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: answer
|
|
max_length: 512
|
|
predict_with_generate: true
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: left
|
|
index: index
|
|
generation_args:
|
|
do_sample: false
|
|
top_p: null
|
|
temperature: null
|
|
max_new_tokens: 200
|
|
use_cache: true
|
|
handler: rouge
|
|
rouge_type: rougeL_recall
|
|
batch_size: ${eval.tofu.batch_size}
|
|
model_utility:
|
|
pre_compute:
|
|
retain_Q_A_Prob:
|
|
datasets:
|
|
TOFU_QA_retain_eval:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: retain_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
retain_Q_A_ROUGE:
|
|
datasets:
|
|
TOFU_QA_retain_eval:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: retain_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: answer
|
|
max_length: 512
|
|
predict_with_generate: true
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: left
|
|
index: index
|
|
generation_args:
|
|
do_sample: false
|
|
top_p: null
|
|
temperature: null
|
|
max_new_tokens: 200
|
|
use_cache: true
|
|
handler: rouge
|
|
rouge_type: rougeL_recall
|
|
batch_size: ${eval.tofu.batch_size}
|
|
retain_Truth_Ratio:
|
|
pre_compute:
|
|
retain_Q_A_PARA_Prob:
|
|
datasets:
|
|
TOFU_QA_retain_para:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: retain_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: paraphrased_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: correct
|
|
retain_Q_A_PERT_Prob:
|
|
datasets:
|
|
TOFU_QA_retain_pert:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: retain_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: perturbed_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: wrong
|
|
handler: truth_ratio
|
|
aggregator: true_better
|
|
ra_Q_A_Prob_normalised:
|
|
pre_compute:
|
|
ra_Q_A_Prob:
|
|
datasets:
|
|
TOFU_QA_ra:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: real_authors_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: correct
|
|
ra_Q_A_PERT_Prob:
|
|
datasets:
|
|
TOFU_QA_ra_pert:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: real_authors_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: perturbed_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: wrong
|
|
handler: probability_w_options
|
|
ra_Q_A_ROUGE:
|
|
datasets:
|
|
TOFU_QA_ra:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: real_authors_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
predict_with_generate: true
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: left
|
|
index: index
|
|
generation_args:
|
|
do_sample: false
|
|
top_p: null
|
|
temperature: null
|
|
max_new_tokens: 200
|
|
use_cache: true
|
|
handler: rouge
|
|
rouge_type: rougeL_recall
|
|
batch_size: ${eval.tofu.batch_size}
|
|
ra_Truth_Ratio:
|
|
pre_compute:
|
|
ra_Q_A_Prob:
|
|
datasets:
|
|
TOFU_QA_ra:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: real_authors_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: correct
|
|
ra_Q_A_PERT_Prob:
|
|
datasets:
|
|
TOFU_QA_ra_pert:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: real_authors_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: perturbed_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: wrong
|
|
handler: truth_ratio
|
|
aggregator: true_better
|
|
wf_Q_A_Prob_normalised:
|
|
pre_compute:
|
|
wf_Q_A_Prob:
|
|
datasets:
|
|
TOFU_QA_wf:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: world_facts_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: correct
|
|
wf_Q_A_PERT_Prob:
|
|
datasets:
|
|
TOFU_QA_wf_pert:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: world_facts_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: perturbed_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: wrong
|
|
handler: probability_w_options
|
|
wf_Q_A_ROUGE:
|
|
datasets:
|
|
TOFU_QA_wf:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: world_facts_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
predict_with_generate: true
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: left
|
|
index: index
|
|
generation_args:
|
|
do_sample: false
|
|
top_p: null
|
|
temperature: null
|
|
max_new_tokens: 200
|
|
use_cache: true
|
|
handler: rouge
|
|
rouge_type: rougeL_recall
|
|
batch_size: ${eval.tofu.batch_size}
|
|
wf_Truth_Ratio:
|
|
pre_compute:
|
|
wf_Q_A_Prob:
|
|
datasets:
|
|
TOFU_QA_wf:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: world_facts_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: correct
|
|
wf_Q_A_PERT_Prob:
|
|
datasets:
|
|
TOFU_QA_wf_pert:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: world_facts_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: question
|
|
answer_key: perturbed_answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: probability
|
|
batch_size: ${eval.tofu.batch_size}
|
|
access_key: wrong
|
|
handler: truth_ratio
|
|
aggregator: true_better
|
|
handler: hm_aggregate
|
|
privleak:
|
|
pre_compute:
|
|
mia_min_k:
|
|
datasets:
|
|
TOFU_QA_forget:
|
|
access_key: forget
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.forget_split}_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: answer
|
|
max_length: 512
|
|
TOFU_QA_holdout:
|
|
access_key: holdout
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.holdout_split}
|
|
path: locuslab/TOFU
|
|
split: train
|
|
question_key: question
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
batch_size: ${eval.tofu.batch_size}
|
|
handler: mia_min_k
|
|
k: 0.4
|
|
access_key: forget
|
|
reference_logs:
|
|
retain_model_logs:
|
|
path: ${eval.tofu.retain_logs_path}
|
|
include:
|
|
mia_min_k:
|
|
access_key: retain
|
|
handler: privleak
|
|
ref_value: 0.5
|
|
extraction_strength:
|
|
datasets:
|
|
TOFU_QA_forget:
|
|
handler: QADataset
|
|
args:
|
|
hf_args:
|
|
name: ${eval.tofu.forget_split}_perturbed
|
|
split: train
|
|
path: locuslab/TOFU
|
|
question_key: ${eval.tofu.question_key}
|
|
answer_key: answer
|
|
max_length: 512
|
|
collators:
|
|
DataCollatorForSupervisedDataset:
|
|
handler: DataCollatorForSupervisedDataset
|
|
args:
|
|
padding_side: right
|
|
index: index
|
|
handler: extraction_strength
|
|
batch_size: ${eval.tofu.batch_size}
|
|
handler: TOFUEvaluator
|
|
output_dir: ${paths.output_dir}
|
|
overwrite: true
|
|
forget_split: ${forget_split}
|
|
holdout_split: ${holdout_split}
|
|
retain_logs_path: ${retain_logs_path}
|
|
question_key: ${question_key}
|
|
batch_size: 16
|
|
paths:
|
|
root_dir: .
|
|
data_dir: ${paths.root_dir}/data/
|
|
datasets: ${paths.root_dir}/configs/data/datasets
|
|
output_dir: ${paths.root_dir}/saves/${mode}/${task_name}
|
|
work_dir: ${hydra:runtime.cwd}
|
|
forget_split: forget10
|
|
retain_split: retain90
|
|
holdout_split: holdout10
|
|
retain_logs_path: null
|
|
question_key: question
|
|
task_name: RMU_forget10_5e-5_Llama-3.2-3B-Instruct_coef10_layer26
|
|
mode: unlearn
|