Opción 1: descargar los datos procesadosOpción 2: procesar los datos usted mismo - KolMitE

Opción 1: descargar los datos procesadosOpción 2: procesar los datos usted mismo

Opción 1: descargar los datos procesadosOpción 2: procesar los datos usted mismo

diciembre 1, 2022 Software en General 0

Este código produce la versión no anónima del conjunto de datos de resumen de CNN/Daily Mail, tal como se usa en el artículo de ACL 2017. Vaya al grano: resumen con redes generadoras de punteros. Procesa el conjunto de datos en el formato binario esperado por el código para el modelo Tensorflow.

Versión Python 3: Este código está en Python 2. Si desea una versión de Python 3, consulte la bifurcación de @becxer.

Opción 1: descargar los datos procesados

El usuario @JafferWilson ha proporcionado los datos procesados, que puede descargar aquí. (Vea la discusión aquí sobre por qué no lo proporcionamos nosotros mismos).

Opción 2: procesa los datos tú mismo

1. Descargar datos

Descarga y descomprime el stories directorios desde aquí para CNN y Daily Mail.

Advertencia: Estos archivos contienen algunos ejemplos (114, en un conjunto de datos de más de 300 000) para los que falta el texto del artículo; consulte, por ejemplo cnn/stories/72aba2f58178f2d19d3fae89d5f3e9a4686bc4bb.story. El código de Tensorflow se ha actualizado para descartar estos ejemplos.

2. Descarga Stanford Core NLP

Necesitaremos Stanford CoreNLP para tokenizar los datos. Descárgalo aquí y descomprímelo. Luego agregue el siguiente comando a su bash_profile:

export CLASSPATH=/path/to/stanford-corenlp-full-2016-10-31/stanford-corenlp-3.7.0.jar

reemplazando /path/to/ con la ruta a donde guardó el stanford-corenlp-full-2016-10-31 directorio. Puede verificar si está funcionando ejecutando

echo "Please tokenize this text." | java edu.stanford.nlp.process.PTBTokenizer

Deberías ver algo como:

Please
tokenize
this
text
.
PTBTokenizer tokenized 5 tokens at 68.97 tokens per second.

3. Procesar en archivos .bin y vocab

Correr

python make_datafiles.py /path/to/cnn/stories /path/to/dailymail/stories

reemplazando /path/to/cnn/stories con la ruta a donde guardó el cnn/stories directorio que descargó; de manera similar para dailymail/stories.

Este script hará varias cosas:

  • los directorios cnn_stories_tokenized y dm_stories_tokenized se creará y se completará con versiones tokenizadas de cnn/stories y dailymail/stories. Esto puede tomar algo de tiempo. Nota: puede que veas varios Untokenizable: advertencias de Stanford Tokenizer. Estos parecen estar relacionados con los caracteres Unicode en los datos; hasta ahora parece estar bien ignorarlos.
  • Para cada una de las listas de URL all_train.txt, all_val.txt y all_test.txtlas historias tokenizadas correspondientes se leen del archivo, se escriben en minúsculas y se escriben en archivos binarios serializados train.bin, val.bin y test.bin. Estos se colocarán en el recién creado finished_files directorio. Esto puede tomar algo de tiempo.
  • Además, un vocab El archivo se crea a partir de los datos de entrenamiento. Esto también se coloca en finished_files.
  • Por último, train.bin, val.bin y test.bin se dividirá en fragmentos de 1000 ejemplos por fragmento. Estos archivos fragmentados se guardarán en finished_files/chunked como por ejemplo train_000.bin, train_001.bin…, train_287.bin. Esto debería tomar unos segundos. Puede usar los archivos individuales o los archivos fragmentados como entrada para el código de Tensorflow (vea las consideraciones aquí).

Por favor Comparte y Síguenos:
RSS
Follow by Email
Facebook
Twitter

Deja una respuesta