nlp

Demasiada gente conozco que todavía no sabe de GPT-2

Así que si eres uno de ellos, lee esto. Todo. Completo. Incluidos los motivos por los que no se va a liberar tal cual. Si te quedas con ganas de más, lee esto (un divertimento) o, más en serio, esto otro, donde se da cuenta de uno de los logros de GPT-2 que, a primera vista, pasa desapercibido: que ha logrado adquirir determinadas habilidades sin haber sido entrenado específicamente para ello.

Análisis (clasificación, etc.) de textos muy cortos

nlp, r
Uno de mis proyectos permanentemente pospuestos es el del análisis de textos muy cortos. Se citarán Twitter y similares, aunque el € está en otros sitios, como los mensajes asociados a transferencias bancarias, reseñas o keywords. Pero parece que no soy el único interesado en el tema. Otros con más tiempo y talento han desarrollado BTM, que parece ser una versión modificada de LDA para el análisis de textos cortos.

Mariposa

Quieres saber dónde está el escorpión, Ni ayer ni antes vos sos corona dorada. Ya os ves más tal cual tortuga pintada, A él nos gusta andar con cola marrón. Ella es quién son las alas de algún gorrión. Si al fin podés ver tu imagen manchada, O hoy vas bajo un cielo azul plateada, Por qué estás tan lejos del aguijón. No hay luz que al sol se enreda en tus palmera.

Entre lo fofo y lo hierático,modelos loglineales

El contexto, por fijar ideas, el problema de taguear fechas en textos. La estrategia gomosa, fofa (ñof, ñof, ñof), y en la que parecen parecer creer algunos, embeddings más TensorFlow. La estrategia hierática, inflexible y reminiscente de robots de pelis de serie B, expresiones regulares encadenadas con ORs. En la mitad donde mora la virtud, extracción de features (principalmente con expresiones regulares) y luego, esto. Nota: esta entrada es un recordatorio para mí mismo y por si retorna cierto asunto que dejé postergado hace un par de días.

Dos ejercicios (propuestos) sobre "embeddings"

Se me han ocurrido en los dos últimos días un par de ejercicios sobre embeddings que no voy a hacer. Pero tal vez alguien con una agenda más despejada que la mía se anime. Uno es más bien tonto; el otro es más serio. El primero consiste en tomar las provincias, los códigos postales o las secciones censales y crear textos que sean, para cada una de ellas, las colindantes. Luego, construir un embedding de dimensión 2.

¿De qué matriz son los "embeddings" una factorización?

Hoy, embeddings. Esto va de reducir la dimensionalidad de un espacio generado por palabras (procedentes de textos). Si a cada palabra le asignamos un vector índice (todo ceros y un uno donde le corresponde), la dimensión del espacio de palabras es excesiva. La ocurrencia de algunos es asociar a cada palabra, $latex W_i$, un vector $latex w_i$ corto (p.e., 100) con entradas $latex w_{ij}$ a determinar de la manera que se explica a continuación.

Preludio (de más por venir)

El preludio esto: Que tiene el interés y la interpretación (muchas de ellas, como se podrá barruntar más abajo, de corte técnico) que cada uno quiera darle. La cuestión es que he ocerreado todas las portadas de El País y puedo buscar en el texto (adviértase la cursiva) resultante. Creo contar con una voluntaria para construir una aplicación web similar a la de los n-gramas de Google. Igual subo los datos a algún sitio en algún momento.

La viejunísima escuela

Leí esto. Me asaltó la pregunta obvia, la manifiesta, la fundamental, la sine qua non. Si queréis, echadle un vistazo y podréis descubrirla por vosotros mismos. Y para evitar el spoiler de un golpe de vista involutario al párrafo siguiente, intercalo la foto de un lindo gatito. Pues sí, el señor Escohotado afirma que: En el año dos mil tres un profesor de Harvard, McCormick, un medievalista, digitalizó, escaneó todos los documentos medievales del siglo VI al siglo XIII, los pasó por un programa adecuado y les preguntó cosas tan sencillas como ¿cuántas veces aparece la palabra “negotiator”?

Advertencias sobre el uso de los n-gramas de Google

Dudaba en si dedicar la entrada a popularizar los n-gramas de Google en lugar de advertir sobre sus sesgos. Pero, habida cuenta de que lo primero sería llover sobre mojado (véase esto o esto), me he decantado por lo segundo. El primer problema es el del reconocimiento de caracteres. Aunque la tecnología mejorará, aún se encuentra, p.e., cami6n en lugar de camión. El fundamental, no obstante, es que los libros aparecen una única vez independientemente de su popularidad.

Probando hunspell para el procesamiento de texto en español

nlp, r
El paquete hunspell de R permite procesar texto utilizando como soporte la infraestructura proporcionada por Hunspell, el corrector ortográfico que subyace a muchas aplicaciones en R. Existe una viñeta que ilustra el uso del paquete pero, como siempre, en inglés. En español las cosas son parecidas pero, como siempre, nunca exactamente iguales. En esta entrada, por lo tanto, voy a repasar partes de la viñeta aplicándolas a nuestra tan frecuentemente maltratada mas por ello no menos querida por algunos como yo (pausa) lengua.

¿Mis conciudadanos no tienen wifi?

r
A alguien leí el otro día que decía que en un bar de carretera habían colocado un cartel diciendo: “Hemos quitado el periódico y hemos puesto wifi”. Viene esto a cuento de library(rvest) library(<a href="http://inside-r.org/packages/cran/tm">tm) library(wordcloud) res <- sapply(1:17, function(i){ url <- paste("https://decide.madrid.es/participatory_budget/investment_projects?geozone=all&page=", i, "&random_seed=0.28", sep = "") tmp <- html_nodes( read_html(url), xpath = "//div[starts-with(@id, 'spending_proposal')]/div/div/div[1]/div/h3/a/text()") as.character(tmp) }) tmp <- unlist(res) tmp <- Corpus(VectorSource(tmp)) tmp <- tm_map(tmp, stripWhitespace) tmp <- tm_map(tmp, content_transformer(tolower)) tmp <- tm_map(tmp, removeWords, stopwords("spanish")) wordcloud(tmp, scale=c(5,0.

Un corpus de textos en español para NLP

Mañana doy clase de NLP en el máster de ciencia de datos de KSchool. Para lo que necesito un corpus decente. Los hay en inglés a tutiplén, pero las hordas de lingüistas hispanoparlantes que se pagan los vicios a costa de tajadas de mi IRPF han sido incapaces de colgar ninguno en español que pueda ubicar y reutilizar. Necesito una colección de textos en español con ciertas características: Tener un cierto tamaño (¿unas cuantas centenas de ellos?

90 millones de euros en tecnologías del lenguaje

El gobierno español ha anunciado (ya hace un tiempo) un plan de impulso a las tecnologías del lenguaje con una dotación de 90 millones de euros (lo que costó el fichaje de Ronaldo). Veremos en unos años qué ha dado de sí la cosa. En particular, si habrá permitido que los usuarios de R dispongamos de herramientas libres (porque de momento, ya están cobrándonoslas vía Agencia Tributaria) para hacer nuestros cacharreos.