Giter Club home page Giter Club logo

discursos's Introduction

Discursos presidenciales chilenos

Datos originales de discursos presidenciales chilenos obtenidos desde la Web, y scripts para procesarlos (extraer texto, limpiarlo y eliminar duplicados). Actualmente contiene:

  • 575 discursos de Sebastián Piñera desde 2010 hasta 2014, obtenidos desde el sitio http://2010-2014.gob.cl/discursos/ (descargados en diciembre 2017). Todos los discursos se encuentran en archivos en formato .htm. Aproximadamente 560 son discursos únicos en español.
  • 1581 discursos de Michelle Bachelet desde 2014 hasta 2017, obtenidos desde el sitio https://prensa.presidencia.cl/discursos.aspx (descargados en diciembre 2017). Todos los discursos se encuentran en archivos en formato .html. Aproximadamente 1540 son discursos únicos en español.
  • 249 discursos de Salvador Allende desde 1970 hasta 1973, obtenidos desde el sitio https://www.marxists.org/espanol/allende/ (descargados en mayo de 2018). Todos los discursos se encuentran en archivos en formato .htm (Algunos son entrevistas).

Para descargar los datos originales y descomprimirlos (siguiendo la estructura de carpetas esperada) se debe ejecutar los siguientes comandos desde la raiz, cambianndo <presidente> por piñera_1, bachelet_2 o allende.

wget http://dcc.uchile.cl/~jperez/resources/<presidente>.tar.gz
tar zxvf <presidente>.tar.gz

Para extraer el texto crudo desde los archivos .html (o .htm) se debe ejecutar

python src/html_to_txt_plus_meta_<presidente>.py

en la raiz (requiere python 3, un par de librerías estandar y BeautifulSoup). Esto también almacena archivos (meta.txt) con algunos metadatos de cada discurso obtenidos desde los .html (o .htm) correspondientes (como fecha, títulos, subtítulos y direcciones de archivos de imágenes para ciertos discursos).

Para limpiar los datos de texto, eliminando textos con muy pocos caracteres útiles, eliminar algunos discursos duplicados (o discursos que son realmente extractos de otros), y eliminar párrafos con palabras de baja frecuencia (para borrar partes en idioma no español, por ejemplo) se debe ejecutar

python src/text_processing.py data/<presidente>/ --duplicateDeletion --frequencyCleaning 0.19 --verbose

El script tiene varias otras opciones para regular la limpieza de los textos.

Importante: la extracción de texto desde los archivos más el chequeo de duplicados puede tardar un par de minutos pues el chequeo implica encontrar el traslape máximo entre pares de discursos y eliminar el discurso de menor tamaño cuando el string comun más largo pase cierto umbral. Para modificar los valores de chequeos de duplicados se pueden usar las opciones --lookAhead y --numEquals.

Visualización de discursos por temas

Una forma amigable de visualizar algunos temas de discursos es construyendo embeddings para las frases en cada discurso. Los siguientes archivos contienen embeddings para algunas frases de los discursos de Sebastián Piñera.

Estos datos se pueden visualizar en projector.tensorflow.org. Solo se debe cargar los datos en el sitio. Luego se pueden projectar usando t-SNE o PCA. Un ejemplo de proyecciones usando t-SNE se pueden ver acá.

Actualmente me encuentro trabajando en visualizaciones basadas en Software Galaxies adaptado a texto. Pueden ver una demo de 18K+ frases de discursos de Bachelet (2014-2018) acá. El proyecto en curso de esta visualización lo pueden encontrar acá.

Bonus! discursos de presidentes argentinos

Similar a los discursos de presidentes chilenos, los siguientes son datos originales de discursos presidenciales argentinos obtenidos desde la Web, y scripts para procesarlos (extraer texto, limpiarlo y eliminar duplicados). Actualmente contiene:

Para procesarlos hay que hacer casi lo mismo que arriba. Desde la raiz ejecutar los siguientes comandos, reemplazando <presidente> por kirchner, fernandez, o macri.

wget http://dcc.uchile.cl/~jperez/resources/<presidente>.tar.gz
tar zxvf <presidente>.tar.gz
python src/html_to_txt_plus_meta_<presidente>.py
python src/text_processing.py data/<presidente>/ --duplicateDeletion --frequencyCleaning 0.19 --verbose

discursos's People

Contributors

jorgeperezrojas avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.