Este repositorio contiene el código para reproducir los resultados reportados en el siguiente documento:
Orhan AE (2023) Reconocimiento, retiro y retención de recuerdos de pocos disparos en modelos de idiomas grandes. ARXIV: 2303.17557.
El repositorio contiene tres archivos de Python train.py , test.py , generate.py (todos modificados desde el ejemplo de modelado de lenguaje causal de Huggingface aquí) para entrenar (o finetune) un modelo, ejecutar una prueba de reconocimiento y ejecutar una prueba de recuperación, respectivamente.
Algunos ejemplos de uso para estos archivos se dan a continuación.
gpt-j-6B con las oraciones de estudio en seen_data_0.json para 1 época (1 exposición) en 4 GPU (con un tamaño de lote total de 4x4 = 16 oraciones) utilizando el marco Acelerate de Huggingface (consulte el archivo de configuración de ejemplo aquí): accelerate launch - - config_file accelerate_config . yaml - - num_cpu_threads_per_process 4 train . py
- - model_name_or_path "EleutherAI/gpt-j-6B"
- - train_file "data/llm-experiment-data/expt1/seen_data_0.json"
- - per_device_train_batch_size 4
- - learning_rate 0.00001
- - output_dir OUTPUT_DIR
- - save_prefix INFORMATIVE_SAVE_PREFIX
- - block_size 128
- - num_train_epochs 1
- - overwrite_cacheseen_data_0.json y Foils en unseen_data_0.json : python - u test . py
- - model_name_or_path MODEL_PATH
- - seen_file "data/llm-experiment-data/expt1/seen_data_0.json"
- - unseen_file "data/llm-experiment-data/expt1/unseen_data_0.json"
- - per_device_eval_batch_size 1
- - output_dir OUTPUT_DIR
- - save_prefix INFORMATIVE_SAVE_PREFIX
- - block_size 128
- - overwrite_cacheseen_data_0.json : python - u generate . py
- - model_name_or_path MODEL_PATH
- - seen_file "data/llm-experiment-data/expt1/seen_data_0.json"
- - per_device_eval_batch_size 1
- - output_dir OUTPUT_DIR
- - save_prefix INFORMATIVE_SAVE_PREFIX
- - block_size 128
- - overwrite_cache La carpeta scripts contiene scripts de shurm para reproducir todos los experimentos informados en el documento, utilizando estos tres archivos. La carpeta data contiene todos los datos experimentales utilizados en los experimentos. La carpeta utils contiene funciones de utilidad que se utilizaron para generar los datos experimentales. Los resultados de todos los experimentos de reconocimiento, recuperación y retención informados en el documento están disponibles en este repositorio de conjuntos de datos Huggingface.