Answer When Needed, Forget When Not: Language Models Pretend to Forget via In-Context Knowledge Unlearning
<|reference_start|>Answer When Needed, Forget When Not: Language Models Pretend to Forget via In-Context Knowledge Unlearning: As large language models (LLMs) are applied across diverse domains, the ability to selectively unlearn specific information has become increasingly essential. For instance, LLMs are expected to provide confidential information to authorized internal users, such as employees or trusted partners, while withholding it from external users, including the general public and unauthorized entities. In response to this challenge, we propose a novel method termed ``in-context knowledge unlearning'', which enables the model to selectively forget information in test-time based on the context of the query. Our method fine-tunes pre-trained LLMs to enable prompt unlearning of target knowledge within the context, while preserving other knowledge. Experiments on the TOFU and AGE datasets using Llama2-7B/13B and Mistral-7B models show our method achieves up to 95% forgetting accuracy while retaining 80% of unrelated knowledge, significantly outperforming baselines in both in-domain and out-of-domain scenarios. Further investigation into the model's internal behavior revealed that while fine-tuned LLMs generate correct predictions in the middle layers and maintain them up to the final layer, they make the decision to forget at the last layer, i.e., ``LLMs pretend to forget''. Our findings offer valuable insights into enhancing the robustness of unlearning mechanisms in LLMs, setting a foundation for future research in the field.<|reference_end|>
@article{takashiro2024answer,
    title={Answer When Needed, Forget When Not: Language Models Pretend to Forget
  via In-Context Knowledge Unlearning},
    author={Shota Takashiro, Takeshi Kojima, Andrew Gambardella, Qi Cao, Yusuke
  Iwasawa and Yutaka Matsuo},
    journal={arXiv preprint arXiv:2410.00382},
    year={2024},
    archivePrefix={arXiv},
    eprint={2410.00382},
    primaryClass={cs.CL}
}