sábado, 12 de diciembre de 2015

Machine learning con programas electorales: ¿qué partidos son de izquierda y derecha?

En el anterior post he probado unsupervised machine learning para organizar (cluster) los programas políticos. Para ello al programa solo le dábamos los textos, no le aportábamos más información sobre si algunos partidos eran de derechas o de izquierdas. Esa falta de información es lo que hace que el método sea unsupervised. En este post voy a hacer lo contrario.

Supervised machine learning

Supervised machine learning  se utiliza cuando tenemos un conjunto de elementos que estamos seguros que pertenecen a una clase concreta. El programa aprende (por eso se llama machine learning) qué características son propias a esas clases; posteriormente se le pide al programa que aplique ese conocimiento a otros nuevos elementos.

¿Muy abstracto? Vamos a por un ejemplo sobre autoría literaria: escogemos un grupo de textos de dos autores cuya autoría está clara. Hacemos que el programa aprenda qué rasgos distinguen los textos de un autor y los textos del otro. Una vez realizado, le entregamos al programa otro texto cuyo autor creemos que es uno de los dos analizados y vemos qué nos responde. 

Supervised Machine learning con programas políticos


Vamos a aplicar el mismo método a programas políticos; y en vez de buscar a un autor, vamos a preguntarnos por la orientación ideológica de cada programa. El eje tradicional de la política izquierda-derecha ha sido puesto en duda tanto por los votantes (PSOE, PP, la misma mierda es) como por los nuevos partidos como Ciudadanos, UPyD o Podemos. ¿Pero realmente ya no podemos ordenar a los partidos en ese eje?

Creo que tanto los partidos como los votantes están de acuerdo en que el PP es de derechas y que IU es de izquierdas, ¿cierto? A nadie se le caen los anillos por decir eso. Es decir, tenemos elementos cuya clase no está discutida. Pues esos partidos van a representar el conjunto de datos de los que nuestro programa va a aprender qué rasgos son típicos de izquierdas y de derechas.

Los rasgos sobre los que lo va a aprender son desde las 1000 hasta las 5000 palabras más frecuentes, de nuevo voy a implementarlo con stylo, mediante la función classify y he utilizado Support Vector Machines .

Comprobando el método


Antes de aplicar ese conocimiento a los otros partidos, vamos a hacer una prueba para ver si el programa hace el trabajo de manera aceptable. Vamos a darle los programas de UP y del PP 2015 (programas que no formaban el conjunto de datos de los que ha aprendido) para ver si los clasifica correctamente. El resultado es el siguiente:

1000 MFW , culled @ 0%,  2 of 2    (100%)
2000 MFW , culled @ 0%,  2 of 2    (100%)
3000 MFW , culled @ 0%,  2 of 2    (100%)
4000 MFW , culled @ 0%,  2 of 2    (100%)
5000 MFW , culled @ 0%,  2 of 2    (100%)

¿Qué significa esto? Pues que tanto en las 5 pruebas desde las 1000 hasta las 5000 palabras, tanto el programa de UP como el de PP han sido reconocidos correctamente como izquierda y derecha. Es decir, hay un acierto de 2 de 2, 100%.

(Sé que probarlo con dos programas de los mismos partidos no sería suficiente para demostrar que el experimento funciona de manera totalmente científica, pero creo que es una aproximación válida si queremos poder publicar algo antes de las elecciones.)

Resultados con 1000 palabras más frecuentes

Ahora que  ya tenemos algún dato de que el programa ha hecho  bien 2 tareas, vamos a ponerlo a prueba con los programas de los otros partidos. ¿A qué partido pondrá en la izquierda? ¿A cuál en la derecha? Los resultados son los siguientes, según las 1000 palabras más frecuentes:

CS_2008_Generales     -->     izquierda
CS_2015_Generales     -->     izquierda
Podemos_2015_Generales     -->     izquierda
PSOE_2004_Generales     -->     izquierda
PSOE_2008_Generales     -->     derecha
PSOE_2011_Generales     -->     derecha
PSOE_2015_Generales     -->     izquierda
UPyD_2008_Generales     -->     izquierda
UPyD_2011_Generales     -->     izquierda
UPyD_2015_Generales     -->     izquierda

1000 MFW , culled @ 0%,  2 of 2    (100%)

Por ahora el programa solo localiza los programas del PSOE_2008 y 2011 en la derecha. Hay que tener en cuenta que de los cuatro programas electorales del PSOE presentes en este análisis, los de 2008 y los 2011 son los que el PSOE escribió desde el gobierno, los de 2004 y los de 2015 desde la oposición. O sea, que con las 1000 palabras más frecuentes, el programa localiza al PSOE como derecha cuando gobierna. Al resto de partidos en la izquierda.

Resultados hasta 5000 palabras más frecuentes

Vamos a ver ahora qué pasa si hacemos los mismos análisis hasta las 5000 palabras más frecuentes:

CS_2008_Generales     -->     izquierda
CS_2015_Generales     -->     izquierda
Podemos_2015_Generales     -->     izquierda
PSOE_2004_Generales     -->     izquierda
PSOE_2008_Generales     -->     derecha
PSOE_2011_Generales     -->     derecha
PSOE_2015_Generales     -->     izquierda
UPyD_2008_Generales     -->     izquierda
UPyD_2011_Generales     -->     izquierda
UPyD_2015_Generales     -->     izquierda

2000 MFW , culled @ 0%,  2 of 2    (100%)



CS_2008_Generales     -->     izquierda
CS_2015_Generales     -->     izquierda
Podemos_2015_Generales     -->     izquierda
PSOE_2004_Generales     -->     izquierda
PSOE_2008_Generales     -->     derecha
PSOE_2011_Generales     -->     derecha
PSOE_2015_Generales     -->     izquierda
UPyD_2008_Generales     -->     izquierda
UPyD_2011_Generales     -->     izquierda
UPyD_2015_Generales     -->     izquierda

3000 MFW , culled @ 0%,  2 of 2    (100%)



CS_2008_Generales     -->     izquierda
CS_2015_Generales     -->     izquierda
Podemos_2015_Generales     -->     izquierda
PSOE_2004_Generales     -->     derecha
PSOE_2008_Generales     -->     derecha
PSOE_2011_Generales     -->     derecha
PSOE_2015_Generales     -->     izquierda
UPyD_2008_Generales     -->     izquierda
UPyD_2011_Generales     -->     izquierda
UPyD_2015_Generales     -->     izquierda

4000 MFW , culled @ 0%,  2 of 2    (100%)



CS_2008_Generales     -->     izquierda
CS_2015_Generales     -->     derecha
Podemos_2015_Generales     -->     izquierda
PSOE_2004_Generales     -->     derecha
PSOE_2008_Generales     -->     derecha
PSOE_2011_Generales     -->     derecha
PSOE_2015_Generales     -->     derecha
UPyD_2008_Generales     -->     izquierda
UPyD_2011_Generales     -->     izquierda
UPyD_2015_Generales     -->     izquierda

5000 MFW , culled @ 0%,  2 of 2    (100%)

General attributive success:  10 of 10 (100%)

Como vemos, algunos programas han ido pasando de la izquierda a la derecha según ampliábamos la cantidad de palabras por analizar. Vemos algo que ya habíamos visto en el post anterior: en primer lugar, el PSOE pasa a ser considerado siempre de derechas, da igual si en la oposición o en el gobierno. En segundo lugar, Ciudadanos_2015 pasa también a ser parte de la derecha.

Interpretación

En primer lugar hay que señalar que el método ha sabido no solo detectar correctamente la tendencia política de los programas actuales del PP y de UP, sino que también ha sabido ordenar correctamente a Podemos, cuya orientación política es clara. En segundo lugar, el método llega a conclusiones similares a opiniones muy extendidas y que encajan con opiniones extendidas:
  • UPyD es de izquierda
  • Ciudadanos era de izquierda, hoy en día es de derechas
  • El PSOE ha abandonado la izquierda; es obvio cuando está en el gobierno, hay que ir más al fondo del programa cuando están en la oposición
En tercer lugar, el método consigue llegar a diferenciaciones más sutiles según recoge más palabras. Parece que según más cantidad de programa electoral tiene en cuenta, mejor sabe calar a los partidos.

Seguir leyendo este post...

viernes, 11 de diciembre de 2015

Estilometría políticas: elecciones generales 2004-2015

Como os podíais imaginar no iba a dejar pasar estas elecciones sin hacer algunas pruebas estilométricas sobre los programas electorales. ¡Vamos allá!

¿Qué es esto de la estilometría?

Como he comentado en otros posts en elecciones anteriores, la estilometría es el estudio de la frecuencia de palabras en textos con el objetivo de encontrar similitudes entre ellos. Principalmente se ha utilizado para investigar autoría literaria, aunque también se ha aplicado para estudiar las diferencias de estilos entre hombres y mujeres, la época que fue escrito o el género literario. La idea general es que los textos que pertenecen a un clase común (textos de tal autor, textos de tal género) comparten ciertas características léxicas que pueden observarse estadísticamente. Estas similitudes son encontradas y visualizadas mediante diferentes métodos de unsupervised machine learning.

¿Por qué estilometría en programas políticos?

Los programas políticos son textos fácilmente comparables ya que comparten características concretas con valores muy claros: un programa político es de un partido, de un año y para un  ámbito (generales, europeas...). Después de unas pocas pruebas se observa que los textos aparecen organizados por partidos políticos, pero que también se observa información sobre tendencia política, temporal e incluso de líder político.

Método


En este caso he utilizado trigramas, es decir unidades del tipo "las comunidades autónomas", "común para españa", "acceso a la", "a través de"... Es decir, fragmentos de tres (tri+) palabras (+gramas). La idea detrás de utilizar trigramas en vez de palabras únicas (o unigramas), es que con los trigramas se recogen además de aspectos léxicos, ciertos aspectos sintácticos.

Lo he implementado con stylo (of course) y he utilizado una medida de distancia muy utilizada en las Humanidades Digitales llamada Delta, propuesta por Burrow pero en la versión de Maciej Eder ya que hay estudios que señalan  que esta funciona mejor para lenguas flexionantes como el español. Los datos los visualizo a través de un dendograma, es decir, una estructura que imita un estructura de árbol. La distancia en el eje horizontal señala la similitud del estilo entre los textos. Veamos los resultados utilizando los 1000 trigramas más frecuentes

Resultados: dendogramas


Antes de pasar hablar de los resultados, asegurémonos de todos estamos interpretando la imagen de la misma manera; vamos a observar solo los resultados del PP y del PSOE. Como vemos, los textos del PSOE aparecen organizado; el PSOE_2011 y el PSOE_2008 serían textos muy similares entre sí; el siguiente más similar a estos dos es el PSOE_2015; y el siguiente más similar a estos tres es el PSOE_2004. Hasta aquí de acuerdo, ¿verdad? Si seguimos la dirección de la rama hacia la izquierda veremos que los textos más similares a los del PSOE son los del PP_2015 y PP_2008. El siguiente más similar a estos 6 es el PP_2004; el siguiente más similar a estos 7 es el PP_2011.


Si echamos un vistazo al árbol en su conjunto, veremos que hay dos grandes ramas: una con el PP y el PSOE; la otra con el resto de partidos (UPyD y Ciudadanos más juntitos; IU y Podemos arrimados). Por ahora no hay resultados demasiado extraños como que Ciudadanos, IU y PP forman una rama, ¿verdad?

Pero ¿qué pasa esi en vez de utilizar los 1000 trigramas más frecuentes utilizados los 5000? Pues:

Como vemos la imagen ha cambiado bastante; UPyD_2015 y 2011 ahora forman su propia rama exiliada; los textos del PP ahora forman un grupo más homogéneo y ¡Ciudadanos_2015 se mete entre el PSOE (y el PP)!

¿Qué resultados elegimos: el de los 1000 trigramas o el de los 5000?

Más resultados: árbol de consenso


Una manera de resolver este problema es combinar los resultados en un árbol de consenso que refleje diferentes dendogramas. La siguiente imagen es un árbol de consenso que recoge 5 dendogramas diferentes, desde los 1000 hasta los 5000 trigramas más frecuentes:


Aquí el punto de mayor división no está a la izquierda como hasta ahora habíamos visto. En el árbol de consenso se encuentra en el centro. Y del centro de este arbolito salen tres ramas:
  1. UPyD_2011 y 2015
  2. PP, PSOE y CS_2015
  3. IU-UP, Podemos, Cs_2008 y UPyD_2008
Dentro de esas grandes ramas, observamos que el método tiende a agrupar de manera bastante correcta los textos de los partidos. Y dentro de las ramas por partidos (en las divisiones más sutiles) observamos que el método tiende a agrupar los textos por cercanía cronológica. En fin, que el método, sin saber nada de política, ni de español, ni de historia, ha sabido distinguir bastante bien tendencias políticas, partidos y años. ¿Qué más pedirle?

Interpretación


Vale José, el método es la pera, pero ¿qué aporta esto de manera práctica? Pues creo que otra mirada sobre los programas y los partidos. Está habiendo mucha discusión sobre el grado de renovación del PSOE, si Ciudadanos es de centro derecha o de centro izquierda, si Podemos se está moderando... Creo que estos resultados pueden aportar algo más de luz desde un sitio que ni los partidos ni los medios controlan. Personalmente estos resultados me hacen pensar varias cosas:
  • Hay una rama izquierda-centro izquierda donde está IU, Podemos y donde estaban Cuidadanos y UPyD
  • Hay una rama tradicional donde se encuentran el PSOE, el PP y Ciudadanos
Por partidos, observo:
  • PP: el partido con menos variación. Conservadores en el estilo y en la política
  • PSOE: a diferencia de los análisis realizados en las europeas, es un partido más cercano al PP que la izquierda; la marcha de Zapatero y la llegada de Sánchez no ha traído ningún cambio notable
  • IU-UP: Garzón parece haber modificado el discurso de su partido y de hecho ahora aparece más relacionado con nuestro siguiente partido
  • Podemos: es difícil saber si se ha moderado, pero desde luego el texto más similar al de Podemos es el de IU
  • Ciudadanos: un caso interesante ya que en 2011 no se presentó. Ciudadanos ha pasado del centro izquierda en el que estaba en 2008 al centro derecha en 2015. Nada sorprendente, según la percepción de los electores y su reciente afiliación europea al Partido Liberal
  • UPyD: en 2008 UPyD tenía un discurso de centro izquierda muy similar a Ciudadanos. Posteriormente encontró una manera radicalmente diferente de expresarse que ha mantenido en estas elecciones. Un caso muy interesante para mayor estudio, lástima que le queden dos telediarios
Hasta aquí mis análisis y mis interpretaciones. Si la idea os atrae pero mi manera no os convence, descarga stylo, los programas electorales y déjame un comentario para que comparemos resultados ;)

Actualización

Los mismos datos hasta ahora comentados los he convertido en una tabla de relaciones de tipo grafo y lo he visualizao a través de Gephi. Es decir, la siguiente imagen se basa en los mismos datos que el anterior árbol de consenso; la diferencia es que en el árbol de consenso aparecían solamente señalada la relación de un texto con otro(s) texto(s) más cercano. En el árbol de consenso no veíamos por ejempo si algún programa electoral de IU tenía alguna relación (por ínfima que fuese) con el PSOE. La siguiete imagen sí reproduce esas relaciones de caracter terciario:


 Anexo: enlaces a los programas electorales:

  • https://www.ciudadanos-cs.org/nuestras-ideas
  • http://unpaiscontigo.es/wp-content/uploads/2015/12/Programa-Elecciones-Generales-Podemos-2015.pdf
  • www.psoe.es/media-content/2015/11/PSOE_Programa_Electoral_2015.pdf
  • http://www.pp.es/sites/default/files/documentos/programa_electoral_20d.pdf
  • http://www.unidadpopularvalladolid.org/component/jdownloads/send/6-programa/66-porgrama-unidad-popular
  • http://www.eaj-pnv.eus/adjuntos/pnvDocumentos/17970_archivo.pdf
  • upyd2015.es/wp-content/uploads/2015/12/Programa_UPYD_Elecciones_Generales_2015.pdf

Seguir leyendo este post...

sábado, 23 de mayo de 2015

Más estilometría sobre programas autonómicos españoles 2015

Después de que la semana pasada publicase algunos resultados sobre comparaciones textuales estilométricas sobre los programas electorales de la Comunidad de Madrid, decidí seguir por el mismo camino. En vez de 10 programas de una sola comunidad, decidí ampliar a 50 de 7 comunidades autónomas más los programas marcos. No he podido conseguir todos los programas: algunos son imposibles de encontrar, algunos no he podido descargarlos (por ejemplo Ciudadanos en Asturias). Las comunidades autónomas son:
  • Andalucía
  • Aragón
  • Asturias
  • Castilla la Mancha
  • Navarra
  • Madrid
  • Valencia
En este caso he realizado de nuevo un consensus tree y con esos mismos datos una visualización de tipo network analysis.

El resultado del consensus tree es:
Observamos:
  • Con excepción de un par de textos (PP y PSOE), los partidos quedan separados en dos grandes ramas
  • Dentro de esas ramas, los partidos tienden a agruparse de manera bastante clara en subramas, aunque no hay correspondencia perfecta
Si interpretamos algunos aspectos (habría muchísimo más que decir) estos datos, podremos decir que:
  • Hay dos ramas principales de la política: una que agrupa la mayor parte de programas electorales de centro-derecha y derecha (principalmente PP, UPyD y Cs); la otra agrupa a los partido de centro-izquierda e izquierda (principalmente IU, PSOE y Podemos)
  • Los partidos que solo están representados por un programa programa (Foro, Compromís, UPN, Bildu, Partido Andalucista) quedan bien representandos ideológicamente.
  • Los programas marcos muestran resultados extraños. Quizás esto se deba a que no son las formaciones autonómicas quienes los realizan, sino sus direcciones nacionales
  • Con más datos, UPyD deja de tener resultados tan anómalos: aparecen emparentados con Cs y de manera más lejana con el resto de partidos de la derecha
Si observamos el network analysis vemos resultados algo similares

Si interpretamos los resultados generales, observamos:
  • De nuevo vemos que se refleja la clásica división derecha-izquierda (más esperable que la obtenida en la CA de Madrid)
  • Aunque ambas representaciones están basadas en los mismos datos, aquí se visualiza mejor la cercanía y relación entre PSOE y PP. De hecho en esta visualización Cs y PSOE aparecen casi en el mismo eje horizontal
  • UPyD vuelve a mostrar resultados algo sorprendentes: en esta imagen aparece más cercano a partidos de izquierda, principalmente IU
  • Foro y UPN aparecen perfectamente integrados entre los textos del PP
  • Bildu y Compromis aparecen integrados entre los programas de IU
  • Podemos forma un grupo bastante homogeneo de textos (ya se observaba en el consensus tree)
Algunos datos generales que me han llamado la atención:
  • PSOE - Castilla la Mancha aparece como programa netamente de derechas
  • El marco del PP aparece entre los programas del PSOE
  • Cs Madrid es el programa más a la derecha de ese partido, integrado entre los programas del PP
  • PSOE Valencia y IU Aragón son los dos textos que más relaciones comparten con otros (qué significa esto es algo a lo que no puedo responder)
  • Los programas de Podemos Valencia y PSOE Valencia están fuertemente relacionados
  • El programa de Cs Castilla la Mancha tiene mayor relación con los textos de UPyD que con los de Cs
  • UPyD Asturias aparece sorprendentemente cerca a Foro

Seguir leyendo este post...

domingo, 17 de mayo de 2015

Estilometría: comparación de los programas electorales de CA Madrid 2015

En una semana habrá elecciones municipales y autonómicas, entre ellas en la Comunidad de Madrid. De la misma manera que realicé varios análisis estilométricos con los programas políticos de Andalucía, he recogido algunos programas políticos autonómicos de los partidos que se presentan en estas elecciones autonómicas madrileñas y he realizado algunas pruebas de comparación cuantitativa de textos entre ellos. En concreto de los partidos madrileños (con los candidatos a las elecciones de la semana que viene entre paréntesis):
  • Ciudadanos (Cs) (Ignacio Aguado)
  • IU (Luis García Montero)
  • Podemos (José Manuel López)
  • PP (Cristina Cifuentes)
  • PSOE (Ángel Gabilondo)
  • UPyD (Ramón Marcos)
Además, para el análisis resulte más consistente, he recogido los programas electorales de aquellos partidos que se presentaron en 2011. Me hubiese gustado utilizar también el de 2007, pero me ha resultado imposible encontrar los programas políticos (y eso que en ese año solo había tres partidos con representación en la Comunidad de Madrid...). Hay que recordar que durante el post hablaré de partidos, aunque en realidad hay que entender que me refiero a los textos de los programas electorales de esas formaciones en dos citas electorales. Agradezco a Miguel Ortega la ayuda para conseguir algunos programas políticos. Y reconozco la inspiración de los artículos de Regional Manifestos Project en eldiario.es.

Para quien necesite una introducción a esto de la estilometría y los tratamientos cuantitativos de textos, sugiero la guía a Humanidades Digitales, la específica sobre literatura, Macroanalysis de Jockers (2013) o Graphs, maps, trees de Moretti (2005). La política no es mi campo de conocimiento, sino la filología. Estaría encantado de colaborar con politólogos o periodistas para profundizar de manera conjunta en este ámbito.

Para este análisis he vuelto a trabajar con la estupenda herramienta stylo para realizar el análisis. En este caso he preferido utilizar todas las unidades que stylo permite analizar (las 5000 más frecuentes), para no tener que tomar ninguna decisión.

Cluster analysis

En primer lugar he realizado un cluster analysis, es decir, le pedimos al programa que vaya agrupando todos los textos según las 5000 palabras (tokens en realidad, aunque para que sea más comprensible utilizaré en el post palabras) más frecuentes:

(Nota sobre los colores: no los elijo yo, es aleatorio; sé que ver el PSOE como amarillo o Podemos de azul no es lo más intuitivo, qué se le va a hacer...)

Resultados:
  • Los programas electorales aparecen dividas en dos grandes ramas: en una PP y Cs; en la otra el resto de partidos.
  • Podríamos interpretar, claro, ambas ramas como derecha e izquierda
  • Los partidos quedan identificados casi perfectamente; solo un único caso cambia: el IU de 2011 es más similar a Podemos que a IU de 2015. En mi opinión, revelador.
  • Los partidos parecen graduados ideológicamente; los más a la izquierda son IU y Podemos, después vendría PSOE, posteriormente UPyD. Cs representa una derecha menos radical que el PP.

Consensus tree

Además del cluster analysis, he realizado también un consensus tree de los cluster analysis desde las 100 palabras más frecuentes hasta las 5000, incrementando cada vez 100 palabras. Es decir, un montón de cluster analysis hechos a la vez (por eso se llama consensus), mostrados en representación arbórea (por eso se llama tree). Este análisis es más robusto que el anterior:

El resultado son tres ramas principales, ocupadas por:
  1. PP y Cs
  2. UPyD
  3. PSOE, IU y Podemos
Es decir, que el consensus tree aparta a UPyD del resto de partidos de la izquierda. Las otras relaciones se mantiene: gradación ideológica, acierto de partidos, excepción de IU2011 y Podemos.

Si interpretamos estos resultados de manera ideológica, señalaríamos que:
  • PP y Cs son de derecha
  • IU, Podemos y PSOE de izquierda
  • UPyD se desmarca de ambos, probablemente localizándose en el centro

Principal Component Analysis

Pero esto no es lo único que podemos hacer con la estilometría y stylo, uno de los tipos de análisis más utilizados es el llamado Principal Component Analysis o PCA. Para quien quiera saber más, recomiendo el libro de Jackson, A user's guide to principal components (2003). De manera muy reducida y simplista, este análisis entiende cada palabra como una dimensión diferente; cada texto recibe un valor para cada dimensión, por lo que cada texto termina definido por valores de 5000 dimensiones (que son las palabras con las que nosotros hemos decidido trabajar, eligiendo las más frecuentes). Para posibilitar una visualización, el análisis rota esas dimensiones en dos principal components que terminan representados en clásicas coordenadas cartesianas. Lo interesante de este resultado es que se consigue visualizar una cantidad enorme de información; la desventaja es que esa rotación pierde información. Vamos a ver un ejemplo:

 
Como vemos, los programas electorales son puntos en coordenadas cartesianas. Es importante tener en cuenta que el eje de x (el horizontal) tiene un valor de 28,2%, frente a la y (o vertical) que tiene un 18,6%. ¿Qué quiere decir eso en cristiano? Que las diferencias que vemos en la horizontal son más importantes que las que vemos en la vertical.

¿Y qué vemos en este PCA?
  • PP y Cs se localizan muy cercanos, de nuevo
  • PSOE, IU y Podemos son muy cercanos
  • UPyD está aislado
Es decir, observamos resultados muy similares a los que el consensus tree nos señalaba. Aunque UPyD y PP-Cs aparecen alineados en la vertical (los tres partidos están entre valores de -1 y -0,5 de la x), en la horizontal sus valores son radicalmente diferentes: PP-Cs están entre -1 y -2, UPyD está entre 1 y 2.

Otro aspecto que hay que tener en cuenta es que aunque PP y PSOE parecen muy separados, en el valor x tienen valores casi idénticos, principalmente en el año 2011: ambos están en -1. En los programas electorales de este año la diferencia ha aumentado: el PP se ha ido al extremo, mientras que el PSOE se ha acercado a IU y Podemos.

En general este análisis resulta muy interesante ya que parece mostrar que el principal component 1 diferencia a los partidos en cuatro grupos:
  1. PP 2015
  2. PP 2011, Cs y PSOE
  3. IU y Podemos
  4. UPyD
Mientras que el  principal component 2 separa los partidos en dos grupos:
  1. UPyD, Cs y PP
  2. PSOE, IU y Podemos
Si interpretamos el PC1, diría que nos muestra la diferencia izquierda-derecha, aunque UPyD en ese caso aparece como extrema izquierda, algo que es difícil de tragar. Pero el PC2 parece indicar claramente centralismo vs. no-centralismo. Esperaría esos resultados en los programas autonómicos de Cataluña o País Vasco (entre otras comunidades), no en el de la Comunidad de Madrid.

Network analysis

Por último, realicé un Network analysis utilizando los datos del consensus tree. De esta manera conseguimos la robustez del consensus tree, pero nos permite visualizar las relaciones entre cualquiera de los textos entre ellos. Cada texto es un nodo y los nodos tienen relaciones entre ellos; cuanto más ancha sea la línea que los une, más intensa es la relación.
En este caso, claro, los colores no son aleatorios, Gephi me ha permitido elegirlos. Probablemente esta visualización es una de las más completas e intuitivas de todas las vistas hasta ahora.

Algunos datos generales de la visualización:
  • Las relaciones internas entre los programas de un partido son las más fuertes (con una excepción)
  • Los partidos parecen diferenciarse en un eje ideológico derecha-izquierda
  • Si eso fuese así, UPyD quedaría como un partido de extrema izquierda
Analizando las relaciones por partidos, observamos:
  • PP: No cambia apenas entre 2011 y 2015; sus mayores relaciones son con el PSOE2011 y con Cs
  • PSOE: En el 2011 aparecía localizado como partido de la derecha, mientras que el texto de 2015 mantiene relaciones intensas con Podemos y también (aunque menos) con IU
  • Cs: Sus principales relaciones son en primer lugar con el PSOE y en segundo lugar con el PP
  • IU: Es el único partido cuyas relaciones internas no son las más intensas: IU2011 tiene mayor relación con Podemos que con IU2015. Mantiene importantes relaciones con PSOE y UPyD
  • Podemos: parece el heredero de IU2011; tiene importantes relaciones con el PSOE, ligeras con UPyD y Cs y nulas con PP
  • UPyD: Está en las antípodas del PP. Tiene cierta relación con Podemos pero principalmente con IU2011

Conclusiones

Después de tantos dibujitos con colores y de tantos números, vamos a intentar sacar algunas cosas en claro. De nuevo, en las conclusiones hablo de partidos, y en realidad debería hablar de textos. Permitidme la metonimia:
  1. La estilometría tiene mucho que decir y que analizar sobre los programas políticos
  2. Los diferentes análisis realizados (cluster analysis, consensus tree, PCA y Network analysis) muestran resultados bastante similares, aunque con algunos matices
  3. Aunque es fácilmente observable cierta relación entre espacio ideológico (derecha vs. izquierda) en las representaciones, no parece que sea solo eso lo que vemos, a menos que se acepte que UPyD Madrid es de extrema izquierda (cosa que ni UPyD aceptaría, ni tampoco la extrema izquierda)
  4. La principal diferencia entre partidos sigue siendo derecha-izquierda (frente a otros posibles ejes como nuevo-viejo o gobierno-oposición)
  5. El eje centralista-no centralista también divide los partidos en la política madrileña
  6. Cs de Madrid y PP constituyen la derecha política, siendo Cs más moderado que el PP. El PP se ha ido más a la derecha que en las anteriores elecciones
  7. Podemos, IU y PSOE hoy en día se agrupan en la izquierda
  8. El PSOE de Madrid era muy cercano al PP en 2011, pero en estas elecciones se ha acercado a Podemos e IU
  9. La principal relación de IU Madrid 2011 no es con IU Madrid 2015, sino con Podemos. ¿Podemos entender Podemos como un heredero textual de IU?
  10. UPyD Madrid es un partido raro. No parece tan relacionado con Cs como podría pensarse. En cierta manera está relacionado con la izquierda, en cierta manera con la derecha, en cierta manera está aislado. Es una lástima que sea dudoso que se mantengan mucho tiempo. Es posible que estos resultados extraños se deban a un error sistemático en los textos
  11. Los resultados difieren algo de los que publiqué sobre las elecciones andaluces (de nuevo, UPyD) y difieren también de las pruebas que he hecho y que aún no he publicado con los programas a las elecciones europeas y nacionales de las últimas décadas
  12. Es decir, hay que seguir trabajando e investigando para tener resultados más sólidos. Con este post me gustaría invitar a politólogos y periodistas a colaborar

Seguir leyendo este post...

viernes, 20 de marzo de 2015

Estilometría sobre los programas políticos andaluces 2015

¿PSOE, PP, la misma mierda es? ¿Podemos se acerca al PSOE o a IU? ¿Ciudadanos y UPyD son lo mismo aunque no lo sepan? ¿Esos partidos son de derechas, de centro o de izquierdas? ¿El eje nuevo-viejo tiene más importancia que derecha-izquierda? Los intereses partidistas, las diferencias de discursos y el márketing político aportan respuestas alambicadas a preguntas sencillas.

Por eso, para intentar buscar respuestas sencillas y lo menos contaminadas, he hecho unas pruebas de comparación del estilo de los programas electorales. En concreto un análisis de clusters sobre las 2000 palabras más frecuentes (una cantidad de léxico utilizada en numerosos estudios estilométricos literarios) con stylo. El resultado es el siguiente:

 El resultado son dos claras ramas de la política:
  • En la primera UPyD, Cs y PP
  • En la segunda, Podemos, IU, PSOE y el Partido Andalucista
¿Cómo podemos interpretar estos datos?
  • Los partidos políticos andaluces se organizan en dos grupos: derecha e izquierda
  • Dentro de la derecha, UPyD y Cs serían más similares entre ellos
  • Podemos e IU serían los partidos más similares de la izquierda, estos mantienen una relación cercana con el PSOE y por último estos tres juntos se parecen al PA
Claro que si usamos las 2000 palabras más frecuentes nos podemos estar dejando controlar por los conceptos utilizados por unos partidos y no por otros. ¿Qué obtenemos si utilizamos solamente las 200 palabras más frecuentes (entre las que casi solo encontraremos determinantes, preposiciones, conjunciones, verbos auxiliares, etcétera)? Palabras como y, de, con, el, la, es, que... Es decir, ¿qué pasa si comparamos aquellas palabras cuyo uso es más difícilmente controlable? Los resultados: 
 Pues los resultados no cambian radicalmente:
  • El uso de esas palabras gramaticales también diferencia un grupo de derechas y otro de izquierdas
  • Aumenta la diferencia entre el PP con relación a UPyD y Cs
  • UPyD y Cs siguen siendo muy similares
  • Podemos e IU siguen siendo similares
  • El PSOE y el PA pasan a formar un grupo unidos
Como conclusión final, basándonos en los programas electorales andaluces para 2015 y en un análisis de clusters, se puede constatar que:
  • El eje izquierda-derecha continúa siendo la principal diferencia política, por mucho que muchos partidos traten de deshacerse de él
  • El eje nuevo-viejo no acaba de demostrarse en los análisis textuales
(Actualización: al revisar el post me di cuenta que la segunda imagen no era sobre las 200 palabras más frecuentes sino sobre los 200 bigramas de palabras más frecuentes. Ahora mismo se puede ver la nueva imagen, en la que han cambiado las relaciones entre IU-Podemos y PA-PSOE. Siento el error.)

Seguir leyendo este post...

jueves, 1 de enero de 2015

Conceptos básicos para criar de manera bilingüe

La derecha populista bávara en el poder tuvo la ocurrencia de sugerir como medida política prohibir que se hable en casa o en la calle otra idioma que no sea alemán. La propuesta recuerda a la opresión lingüística franquista contra vasco, catalán y gallego. No se llevará a cabo, evidentemente: es una sonrisita hacia la ultra derecha al mismo tiempo que un escupitajo contra cualquiera que tenga presente en su casa un idioma diferente al alemán. Al margen del ridículo, creo que puede ser visto como indicador del rechazo germano contra la crianza bilingüe.

Prejuicios que encuentras de manera constante en Alemania señalan que un niño que se cría con dos idiomas: es probable que tenga problemas en la escuela; su desarrollo lingüístico y cognitivo será más lento;  se sentirá confuso; hablará los dos idiomas de manera parcial (halbsprachig) y con errores; probablemente tartamudeará; aprenderá a hablar más tarde...

El bilingüismo infantil es ampliamente observado de manera negativa (no así el adulto), parcialmente también por parte de profesores, pediatras e incluso investigadores sobre el tema. Al buscar bibliografía en alemán sobre el tema, el concepto bilingüismo (Bilinguismus o Zweisprechigkeit) suele aparecer asociado a otras palabras como problema, reto, retraso o incluso afasia (es decir 'enfermedad del habla').

Cada cultura tiene sus fantasmas y sus obsesiones y los alemanes tienen sus problemas históricos con la emigración, principalmente turca. Criar un hijo de manera bilingüe en Alemania es un reto, por lo que he intentado leer literatura científica sobre el tema, también en alemán para formarme. Este post pretende ser un resumen de algunos conceptos que deberían estar claros al plantearse este reto:
  • La crianza bilingüe no trae ninguna desventaja ni cognitiva ni lingüística. Rechaza de raíz cualquier prejuicio de ese tipo.
  • Si el niño adquiere suficiente competencia en varias lenguas, el bilingüismo tiene ventajas tanto cognitivas (capacidad de abstracción más temprana) como lingüísticas (mayor sensibilidad lingüística).
  • Las personas señalarán que el niño comete errores en ambos idiomas y que es debido al bilingüismo. Cualquier niño comete errores al aprender un idioma; cuando un monolingüe los comete, se percibe con humor ("qué gracioso, ha dicho..."). Cuando un plurilingüe los comete, es un indicador de retraso y problemas.
  • Todos conocemos el concepto de lengua madre. En realidad ese concepto no es tan importante como se tiende a pensar. Es más importante el concepto de lengua de entorno.
  • Pongamos una familia de españoles en Alemania. Su hijo tendrá el español como lengua madre (o lengua familiar), pero en realidad es el alemán su lengua de entorno y será su idioma dominante o más fuerte, ya que es el que utiliza la sociedad donde vive.
  • En general, la lengua de entorno tiende a ser la más fuerte; la familiar es la lengua débil. A un par de españoles viviendo en Alemania no les tiene que preocupar si su hijo hablará bien alemán, porque lo hará con toda seguridad. Lo que les debe preocupar es si su hijo hablará español y cómo.
  • El niño, principalmente en la entrada a la guardería o a la escuela, tenderá a dejar de hablar la lengua familiar y solo utilizar la lengua de entorno. El niño puede hacerlo de manera inconsciente (no se da cuenta que no la utiliza) o de manera consciente y activa ("no quiero hablar vuestra estúpida lengua").
  • La mayoría de los niños (76%) dejan de utilizar la lengua familiar durante una época. Depende de los padres conseguir que vuelvan a hablarla.
  • En la lengua dominante el niño aprenderá a jugar con otros niños, a hablar con otros niños, a hablar en las tiendas; en la escuela aprenderá a contar, a leer muchos tipos diferentes de textos, escuchar a personas cultas explicar cosas complicadas...  Todas esas funciones el niño las podrá hacer más cómodamente en la lengua dominante que en la lengua familiar. En general la lengua de entorno será con la que más seguridad y creatividad utilizará el niño.
  • Las lenguas tienen diferentes grados de prestigio social: todo el mundo ve como muy positivo aprender inglés; por contra, el turco o el búlgaro (por ejemplo) se ven como poco útiles. El niño percibe ese rechazo o refuerzo social. Resulta más difícil criar a nuestro hijo en una lengua que se percibe como de pobres emigrantes pobres que en una que se percibe como de cultura y éxito.
  • El prestigio social del español es en general positivo, aunque no tiene el prestigio de inglés o francés.
  • La situación lingüística dentro de casa es extremadamente importante. Una situación positiva es cuando ambos padres hablen en casa solo y de manera consecuente la lengua familiar.
  • Si uno de los padres habla la lengua de entorno, se reducen notablemente las posibilidades de que el niño utilice fluidamente la otra lengua. Esto es aún más negativo si quien habla la lengua no dominante es quien pasa más tiempo (tradicionalmente la madre).
  • Para entender mejor el punto anterior, pongamos el caso de un español que vive en Alemania, tiene un hijo con una alemana; ella pasa más tiempo con el niño y ella le habla en alemán. Es muy poco probable que ese niño hable español.
  • Es importante que el niño conozca otras personas que hablen el idioma familiar. Para ello pueden incentivarse los viajes, la relación con niños que hablen ese idioma, las visitas de parientes, libros, DVDs o televisión, juguetes, etcétera.

Bibliografía principal

  • Leist, Villis, Anja, Elternratgeber Zweisprachigkeit, Tübingen: Stauffenburg 2008
  • Kielhöfer, Bernd / Jonekeit, Sylvie, Zweisrpachige Kindererziehung, Tübingen: Stauffenburg 1995
  • Scharff Rethfeldt, Wiebke, Kindliche Mehrsprachigkeit Stuttgart: Thieme 20013

Seguir leyendo este post...

viernes, 10 de octubre de 2014

Ideas que aprendí con la Super Nanny brasileña

Dicen que los que no tienen hijos suelen criticar la manera de criar niños sin tener ni idea. Si Dios quiere me volveré padre en unas semanas, así que el José sin hijos quiere criticar al José con hijos sin que tenga ni idea de lo que habla, pero de manera interna, para que no me mosquee con nadie que no sea yo mismo.

Por que, efectivamente, no tengo práctica criando niños. Fui el pequeño de mi familia, así que ni siquiera estoy acostumbrado a dormir con un bebé en la misma casa. Curiosamente una de las cosas que más me ha hecho reflexionar sobre la paternidad es Super Nanny.

Comencé a verlo en la versión española hace ya unos 3 años, con Rocío Ramos-Paul en el papel de pedagoga. Creyendo que si pasaba al angloparlante el programa mejoraría, probé a ver las versiones inglesa y estadounidense. Fue un enorme chasco: el español es mucho menos teatral y más claro. Y posteriormente vi el programa brasileño por recomendación de mi mujer. Y, sin duda, este es la mejor versión de Super Nanny que he visto hasta ahora.

La pedagoga se llama Cris Poli y me gustaría agradecerle el enorme trabajo que ha realizado en ese programa. Podéis ver bastantes programas completos en la web cadena emisora: SBT. En mi opinión utiliza estrategias claras que en el programa parece que funcionan. Repito que con este post no intento predicarle a nadie, solo recordarme a mí mismo, dentro de un tiempo, lo que pensaba que estaba claro y que podía funcionar, antes de que mi hijo me funda mis esquemas con una mirada sonriente y un par de besos y tenga la tentación de dejarle hacer lo que le dé la gana. Ahí van algunas ideas sacadas de Super Nanny Brasil:
  • Los niños deben ir aprendiendo a hacer cosas por sí solos: vestirse, bañarse, comer solos... Hacerles las cosas es cómodo para el niño, pero también frustrante y para los padres un estrés
  • Es positivo para los niños tener horarios y rutinas marcadas
  • Debe haber reglas claras en la casa; incluso pueden escribirse en cartelitos en algún lugar de la casa o hacerse dibujos que las representen
  • Los niños deben dormir en su cama, no en la cama de sus padres
  • Es importante que los niños aprendan a entretenerse solos, que puedan jugar sin los padres
  • Pero también es importante que los padres jueguen con ellos. No solamente estar presentes durante el juego, sino participar del juego. Es una manera de interactuar con ellos, hablar, conocerlos...
  • Dar las órdenes de manera clara, con una delimitación temporal y explicar la consecuencia si no se hace. Hacer esto una vez, no irlo repitiendo hasta que se consuma el tiempo. Los niños muchas veces quieren atención: es secundario si esa atención viene en forma de beso o de charlote. Si echamos broncas, nos estaremos cabreando y en realidad estaremos reforzando positivamente con nuestra atención una actividad negativa
  • No castigar directamente cuando haga algo erróneo. Dar una advertencia clara, explicar la consecuencia; a la segunda, actuar como hemos dicho que haríamos
  • Reforzar positivamente cuando haga algo bien, sobre todo cuando sepamos que le ha costado hacerlo
  • Si hace algo bien que le ha costado, aunque lo haga de morros, no deberíamos echarle la bronca: por lo menos lo ha hecho. Todos tenemos derecho a enfadarnos: también los niños. ¿Los adultos no hacen cosas de morros (sin esperar recibir una bronca por ello)?
  • Nuestra función de padres no anula nuestra relación de pareja. Es importante cogerse un tiempo a solas con tu pareja. Como escuché una vez, en una relación de pareja, los hijos son los últimos en llegar y ¡los primeros en irse!

Seguir leyendo este post...

miércoles, 17 de septiembre de 2014

Categorías gramaticales y estilometría: conjunciones decimonónicas vs. puntuación modernista

En el anterior post hice una primera aproximación sobre algunos métodos estilométricos, como el clustering, aplicados a las novelas españolas de la Edad de Plata. Para ese análisis utilicé las formas simples de las palabras. Pero ¿y si en vez de analizar dijo, decía, dicho (etc.) solo analizamos el verbo decir? O sea ¿y analizamos un texto lematizado? O más abstracto aún: ¿y si solo usamos sobre categorías gramaticales? En este post os quiero comentar los resultados de un pequeño experimento estilométrico con categorías gramaticales en textos entre los siglos XIX y XX. Había varios aspectos de las pruebas que os voy a comentar en este post que aún tengo que comprobar.

Para saber con qué estamos trabajando, vamos a basarnos en un texto concreto: Niebla de Unamuno. Debemos partir de una versión en texto plano .txt:
Niebla en formato plano

Para procesar el texto he utilizado TreeTagger, de la Universidad de Múnich y lo he utilizado directamente desde el entorno de R mediante la librería koRpus. Confieso que poner a trabajar las diferentes herramientas no fue sencillo, ni para mí ni para los docentes del European Summer School in Digital Humanities. Si quisiésemos lematizar Niebla, el resultado debería ser un archivo txt similar a este:

Niebla lematizada
Por lo general la estilometría prefiere no trabajar con lemas ya que se considera que muchos datos se pierden: se pierde la diferencia entre las novelas escritas en pasado o aquellas escritas en presente, por ejemplo. Algunos autores han señalado que podría ser más interesante dar un paso más allá de la lematización y conseguir las categorías gramaticales (Part of Speech, POS) de todas las palabras del texto. Es lo que vamos a hacer para nuestro experimento; esto sigue siendo Niebla habiendo hecho un análisis gramatical de cada palabra:

Niebla según categorías gramaticales del TreeTagger
Como vemos en la documentación de las categorías gramaticales para el español del TreeTagger, no solo se nos aporta si es un verbo o un sustantivo, también se nos da si el verbo está en forma finita (VLfin) o si es un nombre propio o común. Por ejemplo don Miguel de Unamuno sería en la anterior imagen «NC NP PREP NC». En total TreeTagger devuelve más de 70 categorías gramaticales diferentes.

Como queremos trabajar algo más manejable, decido simplificar el análisis a solo 10 grandes categorías gramaticales. En este análisis don Miguel de Unamuno sería «N N R N». El resultado es el siguiente:

No, no es Mátrix, es Niebla, en 10 cómodas categorías gramaticales.
Lo que observamos en la anterior imagen es la estructura léxico-gramatical de Niebla. Este proceso lo realizamos con varias decenas de textos publicados entre finales del siglo XIX y principios del siglo XX. Las listas obtenidas de categorías gramaticales las analizamos mediante Principal Components Analysis, con lo que obtenemos una visualización en dos dimensiones teniendo en cuenta aquellos valores que más tienden a diferenciar textos. ¿El resultado?

En esta nueva imagen vemos que los textos de Valle, por ejemplo, quedan en la parte superior y que los textos de Valera aparecen en el extremo inferior. Es decir, hay un valor que diferencia por completo a estos dos autores. A su vez, Unamuno aparece en el extremo derecho y Blasco Ibáñez a la izquierda. Pero ¿qué significan estas agrupaciones? ¿Según qué criterios se están organizando? Para saberlo, utilizamos la opción loading en stylo.

Sé que no lo parece, pero esta imagen es muy interesante. Es la misma imagen anterior, ahora los textos están en gris, y con las categorías gramaticales como vectores. Observamos que nombres, artículos, preposiciones y adjetivos aparecen muy cercanos entre ellos en la izquierda: es decir, las categorías gramaticales que forman principalmente sintagmas nominales aparecen agrupados.

Ese «polo nominal» aparece enfrentado en la dimensión horizontal por otro polo formado por verbos y pronombres (y en parte también por signos de puntuación, adverbios y conjunciones): una especie de «polo verbal». El Principal Components Analysis que esa diferencia entre polo nominal y polo verbal resulta importantísima, ya que el valor de ese PC es un excepcionalmente alto 50,3%.

Es decir, la imagen nos está indicando que se puede hacer una diferencia sólida entre textos que prefieren sintagmas verbales, y aquellos que prefieren sintagmas nominales. Unamuno, por ejemplo, resultaría extraordinariamente verbal; Blasco Ibáñez, por contra, resultaría bastante nominal.

Estos resultados son interesantes, sí, pero no sorprendentes: es bastante esperable que haya autores que utilicen más verbos (y estos suelen llevar pronombres relacionados) y otros que utilicen más sustantivos (con sus adjetivos y determinantes). Lo inesperado es el eje vertical.

Porque el análisis muestra que la otra dimensión de mayor importancia es la diferencia entre conjunciones (y adverbios) frente a signos de puntuación. ¿Cómo? ¿Qué significa eso? Yo lo interpreto en el sentido que algunos autores preferirían relacionar las oraciones entre sí mediante símbolos de puntuación, como Valle o Baroja; frente a otros, que preferirían utilizar conjunciones: como Valera u Ortega.

Sinceramente, no esperaba esta diferenciación ya que tendería a pensar que los signos de puntuación y las conjunciones no se excluyen. Al tener estos resultados delante hay que recordar que los signos de puntuación no son una categoría gramatical de por sí como adjetivos, adverbios, sustantivos o verbos. La lingüística computacional tiende a darle rango de categoría gramatical y por eso lo incluyo en el análisis, pero es cuestionable desde el punto de vista teórico. Además los signos de puntuación es un aspecto sensible a la intervención del editor, por lo que lo óptimo sería utilizar textos que han sido editados de manera homogénea.

Señaladas estas precauciones, creo que es un aspecto interesante que hay que seguir estudiando, también en relación a otras variables. Porque resulta aún más llamativo cuando introducimos en el análisis la variable cronológica. En la siguiente imagen los textos decimonónicos aparecen en rojo, frente a los verdes del siglo XX.


De manera casi total (un texto de Bazán, Fernández Flórez y Ortega son las excepciones), los títulos en rojo aparecen en la mitad inferior de la imagen: es decir, el siglo XIX prefería las conjunciones; frente a esto los títulos verdes aparecen en la parte superior: es decir, el siglo XX prefiere los signos de puntuación.

En el paso del siglo XIX al XX la literatura no solo realizó cambios estéticos o temáticos, parece que también cambió conjunciones por signos de puntuación.

Seguir leyendo este post...

martes, 9 de septiembre de 2014

Estilometría: stylo y novelas en español

Como comenté en mi último post, tuve el privilegio de estar en la European Summer School in Digital Humanities 2014 donde pude aprender sobre estilometría. Los profesores Jan Rybicki y Maciej Eder fueron los encargados de enseñarnos sobre estilometría y la librería de R llamada stylo que ha diseñado el grupo Computational Stylistics Group:

stylo, sonriente nada más despertarse

La estilometría es una metodología estadística para analizar textos a través de sus palabras más frecuentes (Most Frequent Words o MFW). Fue Wincenty Lutosławski quien acuñó esta palabra; en los últimos años John Burrow ha sido uno de los principales investigadores, cuya influencia puede observarse en varios grupos de investigación en Centro Europa.

La estilometría se ha utilizado principalmente para estudiar atribuciones de autorías. Cada autor tiene tendencias al escribir: unos tienden a utilizar más estructuras determinante+adjetivo+sustantivo, algunos prefieren sumar oraciones con y u o, otros prefieren la confrontación mediante peros y aunques... Decenas de esos rasgos medidos estadísticamente medidos y enfrentados crearían la llamada huella dactilar textual de un autor: un patrón que podría reconocer la autoría de cualquier autor. Al menos esa es la idea.

La realidad, como casi siempre, es más compleja. Pero lo emocionante que os quiero enseñar que esta metodología funciona sorprendentemente bien. Para empezar a trabajar necesitaremos un grupo de textos que formen un corpus más o menos equilibrado. Para esta prueba he decidido trabajar con un grupo de textos entre la segunda mitad del siglo XIX y las primeras décadas del siglo XX. Por ejemplo La batalla de Arapiles, de Galdós, publicada por Clásicos Hispánicos. Algunos criterios que se deben tener al trabajar con estilometría es que el corpus:
  • debe tener varios textos del mismo autor
  • los textos pueden tener un formato plano, pero asegúrate que la codificación y el tipo de final de línea es homogéneo
  • los resultados son mejores si el género literario es homogéneo
Bajo estos criterios, vamos a trabajar con algunas novelas de autores como Baroja, Bazán, Blasco Ibáñez, Clarín, Galdós, Miró, Sénder, Unamuno, Valle... Cada una de las novelas la guardamos en un archivo de texto diferente. Queremos que el stylo ordene los textos según su semejanza. Intuitivamente tenderíamos a pensar que dos novelas de Galdós son más semejantes entre sí  que una novela de Galdós y una de Clarín; y que las novelas de Galdós y Clarín (ambos parte del realismo) son más semejantes entre sí que, digamos, una novela de Galdós y una de Valle, ¿cierto?

Para ello vamos a realizar un cluster analysis, (algoritmo de agrupamiento) que stylo consigue realizar de manera múltiple en iteraciones: primero trabaja con las 100 palabras más frecuentes y crea un cluster, después coge las siguientes 100 palabras y hace otro cluster; así hasta que llega a las 5000 palabras más frecuentes. Todos esos clusters son tenidos en cuenta para crear un resultados más robustos en forma de Consensus Tree. Para ello utilizamos la Distance Delta en la variedad de Eder. ¿El resultado? La siguiente imagen:

Quizás estés pensando ¿qué son estas raíces de colores y qué significa? Estamos ante una visualización bidimensional de los clusters (o grupos) de las novelas. La relación jerárquica de las ramas significa la distancia entre los textos. Vamos a ver un segmento de este consensus tree:
Rama con textos de Clarín, Valera y Blasco Ibáñez
En esta rama de Clarín, Valera y Blascos Ibález vemos que los dos textos de La Regenta penden de un mismo nodo, por lo que los dos textos son muy similares entre sí. De la misma manera penden los dos textos de Valera. Los textos de Blasco Ibáñez tienen una estructura más compleja: Arroz y tartana es similar a la segunda parte de La araña negra; esos dos son parecidos a La catedral (aunque no tan parecidos); estos tres textos a su vez serían similares a La barraca. El análisis de clusters señala que los textos de Clarín y Valera son más similares entre sí y que estos, a su vez, tienen cierto parecido (aunque menor) con los de Blasco Ibáñez. Ahora que ya sabemos entender las ramas, volvamos a la imagen completa:
El programa nos facilita la visualización por colores, con lo que nos es muy fácil reconocer los autores de los textos. Como vemos el análisis de clusters ha conseguido reconocer la huella del autor: los textos de Galdós no se mezclan con los de Bazán: ambos aparecen en una misma rama, pero el programa consigue distinguirlos por autores. De esta manera todos los textos han sido ordenados correctamente por autor. Es decir, la huella digital textual no es solo una bonita metáfora: se puede demostrar empíricamente. ¡Hurra!

Solo hay un problema:



¿Todos los textos han sido organizados por autor? ¡No todos! Sénder y su primera novela Imán está separado de sus otras dos novelas, que aparecen emparentadas con Baroja. Es decir, que de 32 novelas, 31 han sido organizadas por autor correctamente. Vale, el sistema no es perfecto, pero no me dirán que resulta fascinante que una máquina que no sabe absolutamente nada de literatura consiga organizar miles de palabras mágicamente por autor.

Pero lo cierto es que la máquina ha hecho más que eso. Si nos fijamos, observamos que también se ha organizado cronológicamente: casi todos los autores del siglo XIX están en la rama inferior; los que empiezana  publicar en el siglo XX en la rama superior. La máquina no solo ha conseguido distinguir la autoría: también la periodización literaria.

Ahora bien ¿qué significan las ramas intermedias? Uno esperaría haber encontrado a Valle, Unamuno y Baroja en una rama a la que llamaríamos «Rama del 98» y confirmaría la clásica agrupación de autores; pero no, el programa ha agrupado a Valle con Miró y a Baroja con Sénder. ¿Qué significan estos datos? ¿Es que Valle y Miró escribían novelas líricas mientras que Baroja y Sénder escribían novelas de aventuras? ¿Es otra cosa? ¿Esa diferencia es más importante? ¿Por qué Fernández Flórez aparece rodeado de autores muy anteriores a él? ¿Qué es lo que reúne a Clarín, Valera y Blasco Ibáñez, que los diferencia de Bazán y Galdós?

¿Son estos resultados ruido? ¿O están apuntando nuevas agrupaciones literarias?

Seguir leyendo este post...

sábado, 9 de agosto de 2014

Ideas del European Summer School in Digital Humanities 2014



En las últimas semanas he tenido el privilegio de poder asistir al European Summer School in Digital Humanities organizado por Elisabeth Burr en la Universidad de Leipzig. En él pude no solo aprender más sobre métodos estilométricos y herramientas específicas, también me permitió tener un generoso panorama sobre qué se cuece hoy en día en los espacios de encuentre entre filología e informática.

Aquí van algunas ideas que saqué en claro:

Tecnología


  • Los sistemas de marcación (markup) ganan terreno con TEI como líder
  • Por ejemplo se están desarrollando sistemas de marcación de música o pragmática
  • Perl, lengua madre de lingüistas coputacionales, se abandona
  • Python le come terreno
  • R marca su territorio en tratamiento estadístico
  • Las DH tienden a no utilizar bases de datos relacionales
  • Prefieren poner los datos en archivos XML (en mi opinión, muy cuestionable)
  • Las DH dependen de herramientas de Natural Language Processing
  • Lematizar un texto sigue siendo doloroso como un parto
  • Las herramientas abiertas disponibles son oscuras, anticuadas, deficientes y poco amigables

  • Digital Humanities


  • Definición positiva de DH: espacio interdisciplinar que busca la representación e investigación tecnológica de la cultura (principalmente textual)
  • Definición negativa de DH: lugar de encuentro y apoyo para personas y proyectos que utilizan métodos informáticos en departamentos con un fuerte rechazo por la tecnología (literatura, clásicas, filosofía, teología, etc.) donde nadie los entiende
  • La lingüística de corpus se perfila como puente entre la lingüística computacional y las DH
  • A pesar de que la codificación del texto exige una interpretación, instituciones y academia no lo valoran como investigación
  • Hay muy pocos proyectos TEI en español y muchos menos abiertos
  • La visualización de los datos pasa a ser una tarea central
  • No solo porque es bonito: ¡es útil!
  • La Universidad debería aprender retórica. Muchas conferencias podrían considerarse armas de aburrimiento masivo

  • Tendencias



  • El papel se revaloriza con tintes fetichistas
  • Atentos a los proyectos de mediavalistas angloparlantes: pueden tener la clave sobre el futuro del eBook
  • Parece que el péndulo pasa de lo subjetivo, cualitativo e hiperteórico a lo empírico y cuantitativo
  • Los nuevos métodos de investigación pueden producir en los siguiente años un salto cualitativo en muchos campos

  • Leipzig


  • Leipzig es una ciudad bellísima tomada por bicis y tranvías
  • La Universidad de Leipzig estrena nuevo edificio en pleno centro de la ciudad, impresionante y calatravense
  • Al mismo tiempo elimina proyectos, carreras, puestos de trabajo y realiza recortes. ¿De qué nos suena?
  • Si vas a Leipzig, ve al Völkerschlachtdenkmal (le mejor manera es en bici!). No es bonito, pero si impresionante

  • Seguir leyendo este post...

    sábado, 12 de julio de 2014

    Ayudas y derechos de los padres en Alemania

    Cuando en España un político habla de «proteger la familia», sabemos que significa algo contra homosexuales o el aborto. Cuando en Alemania se habla de lo mismo, las cuentas bancarias de los padres se ponen contentas. En los últimos años tener un hijo en España se ha convertido en una producto de lujo y fue una de las razones por las cuales mi mujer y yo decidimos marcharnos a Alemania. La diferencia entre la respuesta estatal de un país y otro es una sima abisal. Este post es una mero intento de lanzar una cuerda informativa entre ambas orillas: un resumen sobre las principales ayudas alemanas a la paternidad.

    Para dejarlo más simple, baso la información del post en una pareja casada, con pasaportes de la UE, ambos con trabajo en Alemania desde hace un año que tienen su primer hijo. Para otros casos, claro, habría que ir viendo cada aspecto en detalle. La mayoría son a nivel estatal y mi información se basa principalmente en folletos entregados por el ministerio y la web del ZBFS.

    Mutterschutz y Mutterschaftsgeld: «protección materna» y «dinero materno»

    6 semanas antes del día previsto del nacimiento, le dan la baja a la madre. Desde ese momento hasta 8 semanas después del nacimiento la mujer recibe el 100% de su salario.

    Elternzeit: «tiempo de los padres»

    Una vez se termina los dos primeros meses, existe la posibilidad de pedir una excendencia laboral hasta que el niño cumple los tres años. Por supuesto se puede pedir menos. Esos meses se pueden dividir entre la pareja; incluso pueden pedir primero dos años, volver al trabajo y volver a entrar en excendencia de doce meses años después (por ejemplo cuando el niño entre en la escuela con 6 años).

    Elterngeld: «dinero de los padres»

    ¿Y mientras esa excedencia tiene lugar, se cobra? Ja, aunque no todo el tiempo. Existe el «dinero de los padres»: catorce meses durante los cuales se recibe el 67% del salario. Esos catorce meses se pueden repartir entre los dos padres, con un máximo de doce meses. Por ejemplo, la madre puede cogerse 12 meses de «dinero de los padres» y el padre coge 2 meses.

    Betreuungsgeld: «dinero de asistencia»

    Pongamos que pasa el primer año, se termina el «dinero de los padres» y la mujer sigue de excedencia. ¿Tenie que pasar el resto de los dos años de excedencia sin cobrar nada? Nein! Aunque sí que va a cobrar menos. Ahora ya no es un porcentaje del salario, sino una cantidad fija y condicionada a que el niño no esté en la guardería. Dura desde el mes 15º hasta que cumple tres años y son 150€ mensuales.

    Landeserziehungsgeld: «dinero de crianza estatal»

    Algunos Estados alemanes tienen unas ayudas extra, como Baviera, Sajonia y Turingia. En el caso de Baviera, esto significa 150€ extras entre los meses 12º y 18º (a partir del segundo hijo es hasta el mes 24º).
     

    Kindergeld: «dinero de los niños»

    Otras de las fuentes de ingresos para los padres (o para los hijos) es el Kindergeld o «dinero de los niños»: 180€ mensuales desde el mes de nacimiento hasta que el niño cumple 25 años (si sigue estudiando).

    Otras ayudas

    Estas son las principales ayudas al tener niños. Existen otras muchas dependiendo de las condiciones, el estado donde vives y otros servicios interesantes como:
    • Cursos de preparación para el parto pagados por el seguro de salud
    • Cursos de natación, gimnasia, masajes para madre y recién nacido, pagados por el seguro
    • La matrona venga a tu casa, cada día, las primeras semanas después del nacimiento, pagado por el seguro
    • Subvenciones extra en caso de que los ingresos no sean suficientes
    Todo esto para el primer hijo; con el segundo y sobre todo el tercero (familia numerosa) mejora notablemente. Y claro, puedes entrar en bucle y una vez termine el dinero volver a tener otro niño y volver a la primera ayuda de este post :) ¡Feliz fertilidad!

    Seguir leyendo este post...

    domingo, 15 de junio de 2014

    El PSOE como movimiento literario

    «Yo amo los mundos sutiles,
    ingrávidos y gentiles
    como pompas de jabón»
    Estos tres versos aletean nerviosos en mi cráneo desde hace algunos días. La poesía, la literatura, el arte en general ensancha los horizontes de nuestra triste realidad y consiguen crear nuevos mundos, algunos sutiles, otros tortuosos, pero casi siempre originales. «Reconozco que no me gusta la realidad, que nunca me ha gustado» decía Martín Gaite. Y a quién sí que le gusta la realidad de este atasco que no acaba nunca, de todavía me quedan 5 horas para salir de la oficina, de a ver si aparece el salario en mi cuenta bancaria de una vez.

    La realidad es que a veces la realidad es asquerosa. Pero ahí está la literatura para abrazarnos, aliviarnos. No caigamos en la ingenuidad de pensar que solo nuestra realidad de curritos sin vela en ningún entierro (ni en el nuestro) apesta. ¡La realidad de las castas también es desagradable! ¿Ustedes se piensan que a Aznar no le gustaría ser vizconde? ¿O que Felipe no hubiese preferido ni enterarse por la prensa?

    La verdadera diferencia entre ellos y nosotros es que parte de esas élites han sabido reaccionar de manera lírica. Estos días tenemos un ejemplo óptimo de que a ellos la realidad no les gusta: el apoyo del PSOE a la corona. Cuando vemos al secretario general del partido republicano más grande de España negar la necesidad de un referendum sobre la monarquía, diríamos aquello de «es evidente que aquí la lógica se ha saltado la tapa de los sesos».

    ¡Craso error! No es lógica lo que el PSOE nos ofrece: ¡Es lirismo! Son mundos sutiles, inexistentes, pero no por ello menos consoladores. La mayor prueba de que esto es así es que el PSOE es federal, laico y republicano en la literatura, causas por las que ha hecho la nada más absoluta.

    Los cortos de vista señalarán que el partido está dirigido por corruptólogos que han refinado una traición sistémica de una legislatura de duración. ¿Ustedes creen que hoy en día seríamos mucho más felices si España fuese una república federal donde la Iglesia no estuviese enchufada a la Hacienda? Puede ser que fuésemos más felices, incluso puede ser que se hubiese aprendido algo de la crisis y cosas se hubiesen enmendado, quién sabe. Pero ¡mejor es la ilusión que abrir el regalo! Imagínense que vencemos a los monárquicos, centralistas y obispos, y luego decimos ¡contra los Borbones, contra Madrid, contra los Obispos se vivía mejor! ¿O nos vamos a creer que el monte de las repúblicas federales laicas es todo orégano? El antídoto contra la desagradable realidad real no es otras realidades menos espantosas; el antídoto es leer el programa electoral socialista con la sensibilidad poética con la que leemos cuentos de Darío o los sonetos de Garcilaso. Legislatura tras legislatura nos vuelve a prometer cosas que saben que no harán y que nosotros esperamos que no hagan, no vayamos a agotar las existencias de nuestras pompas de jabón, marca España.

    Exigirles a los socialistas vulgaridades como coherencia con el programa electoral o compromiso con su ideario es como decirle a Machado «oye macho, cógeme esas pompas y friégame el balcón». Delata un nula inspiración poética y política. Si quieres coherencia o ideario de izquierda, vete a buscarlo a otro sitio. El PSOE te ofrece algo diferente: mundos sutiles donde las hadas pueblan antiguos palacios episcopales, donde existen los Estados Federales Satíricos y donde los Borbones se exilian a la Atlántida.

    Seguir leyendo este post...

    LinkWithin

    Related Posts with Thumbnails