Los detectores de texto actuales generados por LLM carecen de solidez contra los ataques: degradan la precisión de la detección simplemente parafraseando los textos generados por LLM. Además, existe el riesgo inexplorado de que usuarios malintencionados puedan aprovechar los LLM para crear textos diseñados específicamente para evadir la detección.
En este artículo, proponemos OUTFOX , un marco que mejora la solidez de los detectores LLM al permitir que tanto el detector como el atacante consideren la salida de cada uno . En este marco, el atacante usa las etiquetas de predicción del detector como ejemplos de aprendizaje en contexto y genera ensayos que son más difíciles de detectar, mientras que el detector usa los ensayos generados de manera adversa como ejemplos de aprendizaje en contexto para aprender a detectar ensayos de un atacante fuerte.
Los experimentos en el ámbito de los ensayos de los estudiantes muestran que...
$ python -m venv env
$ source env/bin/activate
$ pip install -r requirements.txt
Ejecute cualquier script en el directorio scripts
.
scripts/detection.sh
es un script para nuestra detección OUTFOX y detecciones de referencia.
scripts/attacking.sh
es un script para nuestro ataque OUTFOX y ataque de paráfrasis básica.
Creamos nuestro conjunto de datos basado en el Premio Kaggle FeedBack, y nuestro conjunto de datos contiene 15,400 tripletes de enunciados de problemas de ensayo, ensayos escritos por humanos (estudiantes nativos) y ensayos generados por LLM. Los estudiantes nativos van del 6º al 12º grado en EE.UU.
Instruimos a tres LM para que generen ensayos: ChatGPT ( gpt-3.5-turbo-0613
), GPT-3.5 ( text-davinci-003
) y FLAN-T5-XXL
. Dividimos el conjunto de datos en tres partes: entrenamiento/validación/prueba con 14400/500/500 ejemplos, respectivamente.
Esta es información complementaria sobre los nombres de archivos que componen nuestro conjunto de datos.
Nombre del archivo | Contenido |
---|---|
(train|valid|test)_problem_statements.pkl | Enunciados de problemas de ensayo en cada conjunto. |
(train|valid|test)_humans.pkl | Ensayos escritos por humanos en cada conjunto. |
(train|valid|test)_lms.pkl | Ensayos generados por LLM en cada conjunto. |
Además, (train|valid|test)_contexts.pkl
incluye las indicaciones utilizadas para generar ensayos en cada conjunto. Los utilizamos para calcular la probabilidad en detectores de valores atípicos estadísticos.
También proporcionamos los ensayos atacados por nuestro atacante OUTFOX en data/chatgpt/test/test_outfox_attacks.pkl
y los ensayos atacados por DIPPER en data/dipper/(chatgpt|text_davinci_003|flan_t5_xxl)/test_attacks.pkl
.
@InProceedings{Koike:OUTFOX:2024,
author = {Ryuto Koike and Masahiro Kaneko and Naoaki Okazaki},
title = {OUTFOX: LLM-Generated Essay Detection Through In-Context Learning with Adversarially Generated Examples},
booktitle = {Proceedings of the 38th AAAI Conference on Artificial Intelligence},
year = {2024},
month = {February},
address = {Vancouver, Canada}
}