viernes, 7 de agosto de 2020

Certificación como Blue Prism Solution Architect con Prasanna Kummar Ballepalli


'Blue Prism Masterclass II. Business Savvy Architects' viene a ser la continuación del anterior libro del autor 'Blue Prism Masterclass' y con la misma intención, a saber, servir como herramienta para aquellos profesionales que estén preparando la certificación en la herramienta Blue Prism. Pero si el anterior estaba orientado a la certificación como desarrollador, 'Business Savvy Architects' se dirige a aquellas personas que preparan su certificación como Arquitectos de Soluciones. 

La estructura del libro es muy sencilla: empieza por cinco capítulos breves que introducen aspectos técnicos y de gestión de Blue Prism así como del proceso de certificación:
  • 'Robotic Projects - POC'
  • 'Process Assessment'
  • 'Blue Prism Design Components'
  • 'Design procedure and documents'
  • 'Design Authority'
De éstos, el capítulo más largo (dentro de la brevedad) y más relevante, es el tercero. A estos capítulos le siguen dos apéndices que, en realidad, son el cuerpo central del libro, dos apéndices en que uno contiene 105 preguntas de tipo test, algunas agrupadas por escenarios de negocio / automatización, y el siguiente proporciona, de manera razonada, las respuestas correctas. 

Nos encontramos pues, fundamentalmente, ante una herramienta de preparación de un examen y en ese sentido es útil o muy útil. Pero, como me ocurrió con la obra anterior del autor, me quedo con las ganas de que amplie la parte de conceptos (los capítulos iniciales). Es evidente su dominio de la herramienta y de los elementos de arquitectura, diseño y gestión y me encantaría basada en esos conocimientos leer una descripción amplia y detallada de la arquitectura y diseño de robots en Blue Prism. 

Prasanna Kumar Ballepalli

(Fuente: Traducción y ligera elaboración propia de su su perfil en LinkedIn)

Prasanna Kumar Ballepalli
Desde 2018, Arquitecto jefe de Inteligencia Artificial y RPA en Prosegur.

Arquitecto IT certificado en Blue Prism y Microsoft y co certificaciones en Six Sigma Green Belt e ITIL Foundation.

Con varios años de experiencia dirigiendo programas de transformación empresarial para compañías multinacionales y foco en fuerzas de trabajo digitales (RPA e Inteligenia Artificial). Su fespecialización tecnológica incluye: RPA, machine learning, chatbots inteligentes (NLP / NLU), analítica e Inteligencia Artificial. Durante los últimos años, además, ha trabajado y dirigido la cualificación en campos como Inteligencia Artificial, Automatización Robótica de Procesos y .Net.

Tiene un grado en Computer Science y se considera auto-motivado, creativo, jugador de equipo y con excelentes habilidades de comunicación.

Puedes saber más sobre él visitando su perfil en LinkedIn o seguirle en Twitter donde se identifica como @prasannak040.

Ficha técnica:

EDITORIAL: Autoeditado
AÑO: 2020 
ISBN: 978-9354067006
PAGINAS: 131

miércoles, 5 de agosto de 2020

Tres barreras para el trabajo multidisciplinar en interacción robot-humano.


Aunque parece existir una tendencia creciente a la colaboración interdisciplinar, a hibridar el conocimiento tecnológico, especialmente en materias como la robótica y la inteligencia artificial, con las disciplinas humanísticas o las ciencias sociales, lo cierto es que esa colaboración no siempre es sencilla.

Existen diferencia de intereses, de métodos, de formas de entender el trabajo y, probablemente, un acusado desconocimiento mutuo entre las diferentes disciplinas, especialmente si provienen de campos del saber muy diferentes.

Estoy intentando profundizar en el campo de la interacción humano-robot y en los denominados robots sociales, una área de investigación netamente multidisciplinar donde se dan cita ingenieros, científicos sociales, psicólogos, etc y como parte de ese empeño estoy leyendo el libro 'Human-Robot Interaction. An introduction' de Christoph Bartnek, Tony Belpaeme, Firedrike Eyssel, Takayudi Kanda, Merel Keijsers y Selma Sabanovic.

En el primer capítulo los autores destacan el carácter multidisciplinar de la materia y al hacerlo no eluden el citar las dificultades de esa colaboración. En concreto, plantean el tema hablándonos de tres grandes colectivos: los ingenieros, los científicos (especialmente científicos de ciencias sociales) y los que denomina diseñadores. Y dividiendo un poco el foco e intereses de estos colectivos, identifican tres grandes barreras:

  • Foco: En esta dimensión se habla de si el foco del trabajo se centra en la tecnología,caso fundamentalmente de los ingenieros, o en el lado humano (que predomina en científicos sociales y diseñadores).

  • Conocimiento: Se trata, quizá, de una distinción más sutil. Se refieren los autores a que en el caso de ingenieros y científicos el conocimiento es explícito y se suele manifestar en forma de publicaciones, artículos, conferencias, etc mientras que, en el caso de los diseñadores, el conocimiento es más intuitivo y por tanto implícito, menos manifiesto.

  • Actitud ante la realidad: Finalmente, en esta barrera observan los autores una dicotomía entre una actitud más centrada en entender el mundo, propia de los científicos, frente a una actitud más de transformación de ese mundo hacia unos objetivos deseables, que domina en ingenieros y diseñadores.

Creo que, probablemente, en el trabajo multidisciplinar nos podemos encontrar alguna barrera más (insistiría, por ejemplo, en el simple desconocimiento) pero resulta interesante esta tipología de barreras identificadas, además, por personas que las viven en primera persona en su trabajo.

No quisiera de todas formas, dejar de advertir sobre la evidente simplificación que este tipo de clasificaciones suponen y con el serie peligro de caer en tópicos a veces burdos. Personalmente, siempre me han molestado un poco los tópicos simplistas y muchas veces injustos con que se caracteriza  los ingenieros, especialmente desde áreas humanísticas. Y no quisiera caer en ellos.

Al final, las personas son personas, no ingenieros, científicos o diseñadores y, por tanto, sus intereses y actitudes pueden diferir, ampliar y superar aquellos que en teoría caracterizan a 'su grupo' y muy especialmente si se trata de personas con vocación por un área de trabajo inherentemente multidisciplinar como puede ser la interacción humano-robot y los robots sociales.

En cualquier caso, es evidente que visto como grupos, las diferencias de conocimientos, intereses y actitudes existen y, sin caer en tópicos,  se deben tener en cuenta en grupos de trabajo multidisciplinares.

viernes, 31 de julio de 2020

El manual de Robotic Process Automation de Tom Taulli

'The Robotic Process Automation Handbook' es una visión panorámica' del mundo de las soluciones RPA, tanto desde un punto de vista funcional, como técnico, de negocio y de gestión.

El libro, de una extensión mediana tirando a corta, se estructura en trece capítulos como sigue:
  • '1. RPA Foundations:' Comienza definiendo lo que es RPA y contando, entre otras cosas, su historia y sus ventajas y desventajas.

  • '2. RPA Skills:' Aunque la palabra 'skills' parezca referirse a capacidades de personas no es así. Lo que examina en este capítulo son algunas características o tecnologías propias de este tipo de soluciones, como la posibilidad de ofrecerse desde la nube, la orientación 'low code', el uso de OCR (Optical Character Recognition), las bases de datos y la inteligencia artificial. Luego salta a otro tipo de elementos más relacionados con la gestión como son la gestión Agile en diferentes variantes frente a Waterfall, el uso de DevOps, o los flowcharts.

  • '3. Process Methodologies:' Un tercer capítulo en que el autor tiene el detalle, poco comun, de describir las metodologías de gestión de procesos de negocio y así se habla, por ejemplo, de Lean, de Six Sigma y de la convergencia de las dos: Lean Six Sigma.

  • '4. Planning:' Aborda algunos pasos previos a una iniciativa de RPA propiamente dicha como la decisión de acudir o no a una consultora externa, decidir qué automatizar, los casos de uso más adecuados o la estimación del ROI.

  • '5. RPA Vendor Evaluation:' Una serie bastante extensa de criterios y consideraciones a la hora de seleccionar al fabricante más adecuado, incluyendo, por ejemplo, las capacidades de la herramienta, el coste, la formación, el soporte, etc

  • '6. Center of Excellence (CoE):' Describe el concepto e importancia del centro de Excelencia RPA para luego pasar revista a los perfiles habituales: Analista, Desarrollador, Arquitecto de soluciones, supervisor RPA, etc

  • '7. Bot Development:' Proporciona algunas ideas sobre cómo se desarrolla un robot RPA, apoyado en la herramienta UiPath Studio.

  • '8. Deployment and Monitoring:' Comenta brevemente algunos aspectos relacionados ya con la operación de los robots una vez desarrollados como son las pruebas, la monitorizacion, la seguridad o el escalado.

  • '9. Data Preparation:' Un capítulo, en mi opinión, algo extemporáneo y fuera de lugar en que, con la excusa de la importancia de la analítica dedica un cierto espacio a hablar de Big Data y de la preparación de datos.

  • '10. RPA Vendors:' Un capítulo en que hace un buen barrido de los fabricantes más relevantes, incluyendo a UiPath, Automation Anywhere, Blue Prism, EdgeVerve, PEGA, Verint, WorkFusion, Nintex, Kofax, Softomotive, AntWorks, Intellibot, SAP Contextor, NICE, Kryon Systems y Servitrace.

  • '11. Open Source RPA:' Un repaso más breve pero también interesante de soluciones de fuente abierta. Primero comenta el modelo de negocio de la fuente abierta y sus pros y contras para luego describir brevemente OpenRPA, UI.Vision, Robot Framework, Robocorp, Orchestra y TagUI.

  • '12. Process Mining:' Un penúltimo capítulo dedicado a una de las tendencias más importantes en materia de investigación en gestión de procesos de negocio, el process mining, que alcanza ya también a las herramientas de RPA. Proporciona algo de background y luego repasa fabricantes y soluciones disponibles como Celonis, ProM, Signavio, Fluxicon o ABBYY.

  • '13. Future of RPA:' Un capítulo con once tendencias que el autor identifica en el campo de RPA.
A estos capítulos les siguen tres apéndices en que se habla, respectivamente, de consultoras, recursos y un glosario,

'The Robotic Process Automation Handbook' es un libro que da una idea bastante amplia y razonable de la situación de RPA. No profundiza mucho en lo técnico y funcional pero a cambio sí toca todos los aspectos relevantes de mercado, negocio y gestión. Un libro bastante correcto que arroja una visión algo más completa y equilibrada de lo habitual en este campo, el de la Automatización Robótica de Procesos, donde la literatura existente, al menos en este momento, es bastante pobre.

Sin ser excepcional ni brillante, creo que es lo mejor que he tenido oportunidad de leer hasta la fecha sobre RPA.

Tom Taulli

(Fuente: Traducción y ligera elaboración propia de su perfil en LinkedIn)

Tom Taulli
Tom Taulli es un autor, conferenciante y asesor con foco en la tecnología. Ha co-fundado varías empresas, incluyendo Hypermart.net (vendida a InfoSpace), WebIPO y BizEquity.

Es colaborador de Forbes y autor de los libros 'Artificial Intelligence Basics: A Non-Technical Introduction' y 'The Robotic Process Automation Handbook: A Guide to Implementing RPA Systems'

Puedes saber más del autor visitando su página oficial o siguiéndole en Twitter donde se identifica como @ttaulli.

Ficha técnica:

lunes, 27 de julio de 2020

La eficiencia como deber moral

Vivimos en una época de creciente automatización de procesos y tareas. Y no solo ya tareas de naturaleza productiva del ámbito industrial u otros sectores primarios, usando para ello maquinaria pesada y robots industriales. La automatización alcanza también a los servicios, a las tareas de oficina, a los trabajos de 'cuello blanco' debido a la creciente digitalización, a la aparición y expansión de los robots software, al progreso y uso creciente de la inteligencia artificial.

Ante esa creciente automatización y, sobre todo, ante la perspectiva de que esa automatización crezca mucho más, surgen preguntas lógicas sobre en qué trabajaremos los humanos dentro de unos años, sobre cuál es el futuro del empleo, sobre si habrá trabajo para todos o, incluso, si será necesario instituir una renta básica universal ante una eventual ausencia de empleo suficiente para todas las personas o, al menos, una parte suficientemente relevante de ellas.

Y como siempre que aparecen miedos y temores, en este caso a la automatización, se puede provocar, creo que se provoca de hecho, un movimiento de cierta resistencia y un cuestionamiento de si avanzamos en la dirección adecuada o si debemos establecer medidas que de alguna forma condicionen ese avance de la automatización o que hagan 'pagar' a los robots, en forma de impuestos, esos trabajos humanos que hacen desaparecer.

Ya en otro artículo dí mi opinión, no favorable por cierto, al tema de los impuestos a los robots, pero en este artículo quisiera reclamar algo más. Quisiera hacer ver que la automatización y los robots lo que nos traen es sobre todo eficiencia y que esa eficiencia es buena. Y tan buena es que se trata no sólo de una bondad desde el punto de vista económico o productivo, sino que creo que la eficiencia es, si me apuran un deber ético, un deber moral.


¿Que es la eficiencia?


Dicho de forma muy simple, pero creo que adecuada, eficiencia es hacer más con menos. 

Es decir, la eficiencia significa producir más productos y servicios usando menos recursos (materiales, humanos, económicos). Evidentemente, también consideramos eficiencia producir más productos y servicios con los mismos recursos o también, consumir menos recursos para producir los mismos productos y servicios.Pero eso son simple matices.

Podemos decir que la eficiencia es una combinación de riqueza y frugalidad.


La riqueza


Cuando hablamos de producir productos y servicios en el fondo estamos hablando de generar riqueza. Porque los productos y servicios es todo aquello que los seres humanos necesitamos o deseamos y que por eso producimos. Productos y servicios son los alimentos, el vestido y el cobijo. Productos y servicios son los coches,  las carreteras, los servicios sanitarios y sociales. Productos y servicios son la educación, el deporte y el ocio. Productos y servicios son también la cultura y el arte. 

Más productos y servicios significa más riqueza, más verdadera riqueza. No se trata del dinero, que es un mero medio y representación de la riqueza, sino de satisfacción de todo aquello que como seres humanos necesitamos o anhelamos.

Y no se me ocurre ningún motivo por el que, si está en nuestra mano conseguirlo, no debamos crear más riqueza. Y no se me ocurre por tanto, ningún motivo válido por el que no debamos ser más eficientes, y con ello crear más riqueza.

¿No queremos más y mejores servicios sanitarios? ¿No queremos remedios y vacunas para las diversas dolencias? Pues eso es riqueza y se consigue más mediante la eficiencia. ¿No queremos servicios sociales? Pues eso es riqueza y se consigue más si somos eficientes. ¿No queremos viviendas para todos? Pues las viviendas son riqueza y se consiguen más si somos eficientes. ¿No queremos más y mejores alimentos? ¿No queremos acabar con el hambre en el mundo? Pues eso es riqueza, y se consigue más si somos eficientes. 

Permanecen, evidentemente, muchos problemas ligados a la riqueza que no se resuelven sólo con eficiencia. Podemos tener problemas como quizá desear cosas que no nos convienen del todo, pero yo me refiero a producir bienes y servicios que llamaré 'legítimos', aquellos que son buenos para el ser humano en su conjunto. Mucho más importante, tenemos el problema de, una vez que generamos la riqueza cómo la distribuimos de una forma justa, cosa que ciertamente hoy en día no está resuelto en absoluto. 

Esos son otros problemas que debemos atacar también y donde la eficiencia no nos va a ayudar. Pero, a pesar de ello, si podemos generar más alimentos debemos hacerlo, al menos mientras haya segmentos de población que no tienen lo suficiente. Si podemos conseguir viviendas dignas para todos, debemos hacerlo. Si podemos ampliar y mejorar coberturas sanitarias y sociales, debemos hacerlo. Y, por qué no, si podemos darnos más y mejores oportunidades de ocio y cultura, también debemos hacerlo. Si podemos generar más riqueza, así entendida, pues, debemos hacerlo.

Mientras no hayamos alcanzado un nivel de riqueza tal que se satisfagan todas las necesidades y deseos legítimos de todos los seres humanos es lícito y hasta casi obligatorio intentar generar esa riqueza adicional.

Y ya que la eficiencia nos ayuda a generar más riqueza, debemos buscarla. Y si tenemos los medios para ser eficientes, y por tanto para generar más riqueza y con ello ayudar a la humanidad en su conjunto a satisfacer sus necesidades y deseos, la eficiencia es una obligación, un obligación moral.


La frugalidad


La frugalidad es la otra cara de la eficiencia: el uso de un mínimo de recursos. Y eso es importante porque los recursos con que contamos son finitos.

Consumir recursos económicos en una cierta actividad nos impide utilizarlos en otra, es decir, nos impide generar más riqueza. Emplear más recursos económicos en una actividad concreta nos impide invertirlos en otra, y por tanto es una especie de 'riqueza cesante'. Emplear más recursos materiales no sólo nos impide darle otros usos, es que además desgasta a nuestro planeta, a nuestro medio ambiente. Incrementa y por tanto desgasta el uso de minerales, plantas o animales. Emplear más recursos es también emplear más energía que, no sólo podría tener usos alternativos sino que, además, hoy en día, en general se consigue por medios contaminantes. Y emplear más tiempo de personas no sólo implica que éstas no puedan realizar otras actividades productivas, sino también implica menos tiempo para los servicios a los demás, o para el ocio o el propio desarrollo personal en los ámbitos culturales o espirituales, por ejemplo.

¿No queremos aliviar el desgaste a que sometemos a nuestro planeta? Consumamos menos recursos, es decir, seamos más eficientes. ¿No queremos contaminar menos? Consumir menos materiales y menos energía contribuirá a ello, así que seamos eficientes en el uso de materiales y energía. ¿No es deseable dedicar más tiempo a atender a otras personas, quizá colectivos vulnerables como ancianos o enfermos? Pues para liberar tiempo de personas que se puedan dedicar a otras personas necesitamos ser más frugales, es decir, más eficientes en el uso de nuestro tiempo.  ¿No queremos más tiempo libre para nuestro ocio y desarrollo personales? Pues para eso necesitamos liberar horas de producción, necesitamos ser más eficientes.

No voy a ser inocente. También en este lado de la ecuación hay algún problema importante. La bondad de ser frugal en recursos económicos y materiales parece casi inapelable. Pero ahorrar en trabajo de seres humanos conlleva alguna dificultad no menor: ¿Qué pasa con el empleo? ¿Qué pasa con aquellos a los que una ola de automatización les 'pille con el pié cambiado' y sin posibilidad realista de reconversión profesional? Si, es cierto que a una automatización masiva convendría acompañarla quizá de ayudas sociales o, mucho mejor, con formación y reconversión, una formación a poder ser proactiva, que no espere a cuando el problema ya está encima. 

Pero la conveniencia de medidas concretas específicas para paliar algún efecto indeseable transitorio, no obsta para que la frugalidad y por tanto la eficiencia por sí mismas sean buenas: menos uso de recursos, más posibilidades de crear riqueza adicional, menor agotamiento del planeta, más tiempo para las personas...

Y si la frugalidad nos ayuda a tratar mejor a nuestro planeta y a regalarnos a nosotros más tiempo para otras actividades, debemos hacerlo. Y dado que eficiencia es frugalidad, debemos buscarla. Y si tenemos los medios para ser eficientes, y por tanto para aliviar la carga que imponemos a nuestro planeta y a nosotros mismos, la eficiencia es una obligación, un obligación moral.


En conclusión


Eficiencia es hacer más con menos. Eficiencia es crear más riqueza de una forma más frugal.

Eficiencia es, por tanto, satisfacer más necesidades y deseos (legítimos) de los seres humanos exigiendo menos al planeta y a los mismos seres humanos. De la eficiencia depende en buena medida, pues, el bienestar presente y futuro de la humanidad

Y así planteado, y sin ignorar, insisto, problemas colaterales a resolver como la distribución de la riqueza o problemáticas en el empleo, no existe ningún motivo lícito para no ser eficientes si tenemos el conocimiento y la tecnología para ello.

Y la eficiencia, por tanto, va más allá de una lógica meramente económica. La eficiencia es un deber. Un deber profundo. Un deber moral.

viernes, 24 de julio de 2020

Una profunda introducción al Procesamiento del Lenguaje Natural con Jacob Eisenstein

'Introduction to Natural Language Processing' es un extenso tratamiento de las técnicas usadas en el campo del procesamiento del lenguaje natural, con un enfoque muy algorítmico y matemático, aunque no elude los aspectos lingüísticos o un acercamiento a su empleo en la vida real.

Un libro de texto de rango universitario y quizá menos introductorio de lo que el título anticipa. Precisa, desde luego, de una importante base matemática y del hábito de leer expresiones algebráicas no necesariamente simples, así como de una lectura muy pausada (en realidad un estudio profundo con algunos repasos) si se quiere realmente asimilar el contenido.

El libro, bastante extenso, consta de 19 capítulos y dos apéndices, estructurados de la siguiente forma:
  • '1. Introduction:' Un primer capítulo introductorio con dos partes claramente diferenciadas: primero una serie de definiciones y conceptos y luego la presentación de tres temas transversales al procesamiento de lenguaje natural, a saber, aprendizaje versus conocimiento, búsqueda y aprendizaje y perspectivas relacional, composicional y distribucional.

  • 'I LEARNING:' Primera parte dedicada a la clasificación de palabras y el aprendizaje y que incluye los siguientes cuatro capítulos:

    • '2, Linear Text Classification:' Trata del tema de asignar una etiqueta a un texto dado y muestra métodos de naturaleza lineal. Comienza describiendo el concepto de 'saco de palabras' ('bag of words'). Luego muestra cómo se puede conseguir el etiquetado mediante Näive Bayes y alguna variante así como conceptos asociados. A continuación habla del aprendizaje discriminativo usando el perceptrón y Support Vector Machines. Luego salta a la regresión logística que combina ventajas de las dos orientaciones anteriores y termina hablando de optimización y de algunos otros temas relacionados con la clasificación.

    • '3. Nonlinear Classification:' Aunque hasta no hace tanto los métodos lineales eran suficientes e incluso más adecuados, en la actualidad están funcionando bien los no lineales. El autor comienza abordando redes neuronales, cómo se diseñan y cómo aprenden y dedica un espacio específico para hablar de la redes neuronales de convolución (CNN)

    • '4. Linguistic Applications of Classification:' Un poco como remate de los dos capítulos anteriores explica la aplicación específica de las técnicas de clasificación a diversas áreas lingüísticas como el análisis de sentimiento y opinión o la desambigüación del sentido de ciertas palabras. Y también aborda otras temáticas relacionadas como la evaluación de los clasificadores o la construcción de conjuntos de datos.

    • '5. Learning without Supervision:' Para terminar el espacio dedicado al aprendizaje, se tratan otras formas de aprendizaje sin supervisión como el aprendizaje no supervisado abordando algoritmos como K-means o Expectation-Maximization. También habla, además, del aprendizaje semi-supervisado.

  • 'II SEQUENCES AND TREES:' No se trata ahora de clasificar palabras sino de producir cadenas de palabras y a ello dedica seis capítulos:

    • '6. Language Models:' Menciona labores habituales en NLP en que la salida es una secuencia de palabras como es el caso de la traducción automática, reconocimiento del habla, realización de resúmenes o sistemas de diálogo. Comienza hablando de modelos de lenguaje de n-gramas para pasar luego a las redes neuronales recurrentes (RNN). También explica cómo evaluar estos modelos.

    • '7. Sequence Labeling:' En el etiquetado de secuencias se trata de asignar una etiqueta, no a una palabra, sino sobre una secuencia de ellas y se usa, por ejemplo, para asignar categorías gramaticales a palabras de una secuencia. Se presenta la forma de tratarlo como un problema de clasificación y también como de predicción de una estructura. Luego explica el algoritmo de Viterbi y también los Modelos Ocultos de Markov (HMM) o las soluciones discriminativas que usan características ('features'). Pasa luego a otros enfoques neuronales con redes recurrentes y finaliza con soluciones no supervisadas.

    • '8. Applications of Sequence Labeling:' Habla de algunos usos de etiquetado de secuencias y, en concreto, aborda temas como los atributos morfosintáctcos, el reconocimiento de entidades, la tokenización, la alternancia entre idiomas y los diálogos.

    • '9. Formal Language Theory:' Se ataca la teoría formal del lenguaje que define claes de lenguajes y sus características computacionales. En concreto, se tratan tres tipos de lenguajes: los lenguajes regulares (aquellos que se pueden definir mediante expresiones regulares), los libres de contexto (basados en gramáticas libres de contexto expresadas como tuplas) y los sensibles al contexto.

    • '10. Context-Free Parsing:' Mediante el 'parseado' se determina si una cadena puede derivarse de una gramática libre de contexto y cómo. Se explica el parseado determinista 'bottom-up', cómo tratar con la ambiguedad, las gramáticas libres de contexto ponderadas, refinamiento de gramáticas y algunas opciones más allá del parseado libre de contexto.

    • '11. Dependency Parsing:' Se trata el parseado dd dependencias, una técnica basada en grafos dirigidos para dilucidar cómo se relacionan las palabras. Se habla de la gramática de dependencia. , de cómo se parsea basándose en grafos dirigidos, el parseado de dependencia basado en transiciones y las aplicaciones del parseado de dependencias.

  • 'III MEANING:' Si en la parte anterior se buscaba reconstruir la sintaxis, en los temas que siguen se atacan aspectos de semántica, de significado. El análisis semántico busca convertir lenguaje natural en representaciones significativas.

    • '12. Logical Semantics:' Se comienza explicando los conceptos de significado y denotación para pasar luego a las representaciones lógicas del significado mediante lógica proposicional o lógica de primer orden. Luego se explica el parseado semántico y cómo aprenden los 'parsers' semánticos.

    • '13. Predicate-Argument Semantics:' Aborda una forma más ligera de significado que es la relación predicado argumento. Se explican los roles semánticos y cómo etiquetarlos y se finaliza con la representación abstracta de significado que utiliza una estructura de grafo.

    • '14. Distributional and Distributed Semantics:' Un capítulo dedicado a una técnica para encontrar significado de palabras no etiquetadas como puede ser en el caso de palabras desconocidas. La idea es que si ciertas distribuciones estadísticas de dos palabras son similares es que su significado también lo es. Explicada esa hipótesis se comentan ciertas decisiones de diseño respecto a la representación de palabras, el análisis de semántica latente y otras técnicas como el uso de los llamados 'word embeddings' en redes neuronales.

    • '15. Reference Resolution:' Las referencias, como por ejemplo el caso de pronombres, son una fuente de ambigüedad, no sólo para sistemas computacionales sino también para los propios hablantes. Este capítulo aborda las técnicas de resolución de esas referencias. Primero se estudian algunas formas de referencias para luego mostrar algunos algoritmos de resolución de co-referencias y algunas representaciones usadas. Se finaliza explicando cómo evaluar la resolución de co-referencias.

    • '16. Discourse:' Se finaliza esta parte hablando del discurso, es decir, textos que incluyen ya múltiples frases. Se habla fundamentalmente de la segmentación y de las relaciones.

  • 'IV APPLICATIONS:' Última parte con tres capítulos para sendas áreas de aplicación:

    • '17. Information Extraction:' Se habla de la extracción de entidades, relaciones y de eventos, es decir, situaciones que involucran a más de dos entidades. Luego se habla de cómo extraer información sobre situaciones hipotéticas o con un cierto nivel de probabilidad para pasar finalmente a la respuesta a preguntas y la lectura por máquinas.

    • '18. Machine Translation:' Sobre traducción automática se explica cómo hacerla como una tarea, cómo evaluar traducciones y cómo hacerla con enfoques estadísticos. Luego se habla de la traducción con redes neuronales como las LSTM. Se finaliza con el problema de la decodificación y del entrenamiento.

    • '19. Text Generation:' Se explican algunas variantes de la generación de texto como es el caso de la conversión de dato a texto, (por ejemplo, a partir de datos sobre el tiempo atmosférico, generar un texto que lo explique), la conversión texto a texto (como en la realización de resúmenes de textos) y diálogos (como los que exhiben chatbots y asistentes virtuales)

  • 'Appendix A: Probability:' Una descripción de ciertos conceptos estadísticos, incluyendo el teorema de Bayes.

  • 'Appendix B: Numerical Optimization:' Un esbozo de algoritmos de optimización como el descenso de gradiente.
'Introduction to Natural Language Processing' es un buen libro, probablemente muy bueno, con amplia cobertura de la temática del procesamiento de lenguaje natural, que aporta ejercicios y recursos adicionales y que explica con bastante corrección pero que a pesar de ello es de bastante compleja lectura porque en realidad no es un libro para leer sino para estudiar y partiendo de los fundamentos adecuados especialmente en matemáticas.

Muy recomendable, pues, para especialistas o estudiantes universitarios del ramo, pero no tanto para ejecutivos o simplemente curiosos.

Jacob Eisenstein

(Fuente: Traducción y ligera elaboración propia de su perfil en Github)

Jacob Eisenstein
Jacob Eisenstein es un científico investigador en Google. Su trabajo abarca una amplia gama de materias relativas a procesamiento de lenguaje natural, con foco en sociolinguística computacional, discurso y machine learning.

Antes de incorporarse a Google, fue profesor asociado en Ciencia de los Computadores en el Georgia Institute of Technology, donde recibió el NSF CAREER Award y el Air Force Office of Scientific Research Young Investigator Award.

Antes de su estancia en Georgia Tech, Jacob fue investigador posdoctoral en Carnegie Mellon, donde inició una línea de investigación usando métodos machine learning en variables latentes, para analizar datos de medios sociales y obtener conclusiones en sociolinguística y otras áreas de las ciencias sociales.

Completó su doctorado en el MIT en 2008, ganando el George M. Sprowls dissertation award por su investigación sobre modelos computacionales del habla y gestualzación.

La investigación de Eisenstein ha sido presentada en el New York Times, National Public Radio, y la BBC.

Puedes saber más del autor visitando su página personal o visitando su cuenta en Twitter donde se identifica como @jacobeisenstein.

Ficha técnica:

EDITORIAL: MIT Press Ltd
AÑO: 2019 
ISBN: 978-0262042840
PAGINAS: 536

Artículos de este blog relacionados

miércoles, 22 de julio de 2020

Algunas posibles tendencias en Automatización Robótica de Procesos


La Automatización Robótica de Procesos (RPA, 'Robotic Process Automation') es una de esas tecnologías que parecen estar en la boca de todos, en las rondas de financiación, en los informes de analistas, en los medios digitales dedicados a tecnología...

Se trata, además, de un mercado y una tecnología en plena ebullición y cambios.

¿Hacia dónde se dirige RPA?

Hoy he finalizado la lectura de 'The Robotic Process Automation Handbook' de Tom Taulli y este autor dedica el último capítulo de su obra para, precisamente, intentar identificar las tendencias que parecen dominar la evolución de RPA. Es un pequeño 'collage' donde se dan cita algunas tendencias de naturaleza tecnológica o funcional junto con otras más de negocio o de dinámica de mercado.

Cambiando algo el orden y con una ligera elaboración, estas son, en concreto, las tendencias que identifica Taulli:

  • Automatización atendida: En opinión de Tauli, RPA se ha dedicado hasta ahora fundamentalmente a los robots no atendidos, aquellos que funcionan de forma completamente automática pero, eso si, en general automatizando tareas más sencillas y previsibles. La tendencia esperada es un progresivo incremento de los robots atendidos que colaboran con personas en tareas más complejas y normalmente de front-office, en lo que a veces se denomina RDA, 'Robotic Desktop Automation'.

  • Compañías dedicadas a verticales: Taulli apuesta también por el florecimiento de compañías y productos no generalistas sino dedicados a sectores específicos como el de la atención sanitaria.

  • Software como servicio (SaaS): Una previsible, en realidad ya en marcha, transformación es la evolución de los productos 'on-premises' hacia soluciones en la nube y en modelo SaaS y pago por uso, dando lugar a la enésima sigla XaaS, a saber RaaS ('Robotics as a Service').

  • Open Source: Igualmente prevé un incremento de presencia de soluciones de código abierto como ya sucede en tantas y tantas áreas tecnológicas, especialmente en la nube.

  • Chatbots: Se identifican varios escenarios de interacción entre RPA y chatbots pero, en todo caso, siempre dominando una cada vez mayor interacción cuando no convergencia entre ambos tipos de robots.

  • Inteligencia Artificial: Se prevé, se está observando ya, el afán de los fabricantes por añadir más y más capacidades de inteligencia artificial en los robots RPA.

  • Escalado de RPA: Hasta ahora la mayoría de las implantaciones y adopciones de RPA son de pequeña escala. Llevar esa automatización a una escala de gran empresa es algo que no está claramente asegurado hoy día pero en lo que los fabricantes trabajan activamente.

  • Consolidación: Se constata que existen actualmente en el mercado más de 70 fabricantes con lo que lo razonable (en realidad creo que ya está empezando a ocurrir con algunas compras de cierto impacto) es una cierta consolidación del mercado.

  • Salidas a bolsa: Además de lo anterior, el autor entiende que todas las compañías importantes saldrán a bolsa como una forma no sólo de obtener fondos sino tambiñen como una muestra de solidez, fiabilidad y transparencia.

  • Microsoft y Power Automation: Un factor importante latente y que puede cambiar el tablero de juego es la opción que tome Microsoft, quien parece apostar por RPA a través de sus soluciones Power Apps y muy en concreto Power Automation.

  • Carrera profesional en RPA: Se constata también la necesidad de perfiles profesionales RPA y la carencia de estos en el mercado por lo que se prevé una explosión en la demanda de este tipo de perfiles.

  • Ética y privacidad: Existe una creciente preocupación por el uso de los datos en todo tipo de aplicaciones, especialmente las que incorporan Inteligencia Artificial, como puede ser el caso de RPA. Junto con esta preocupación existen una serie de problemas de naturaleza ética, no específicas de RPA sino más bien de todo el ámbito de la Inteligencia Artificial y la Automatización, que reciben ya mucha atención mediática y empiezan a verse las primeras acciones a nivel de análisis y regulación en gobiernos e instituciones como las europeas.

  • Factor 'Hype': El autor se pregunta en qué punto del 'Hype Cylce' de Gartner se encuentra RPA. Su opinión, que no parece disparatada, es que nos acercamos al famoso 'Peak on Inflated Expectations' es decir, al máximo de ruido mediático y expectativas exageradas a lo que, según Gartner, seguiría una cierta desilusión y disminución de inversiones... aunque con perspectivas posteriores de recuperación ya con expectativas más ajustadas a la realidad.

Una lista interesante de tendencias, sin duda, algunas muy claras y ya en marcha, otras más especulativas, pero todas fundamentadas. Ya veremos si son acertadas... y dado lo dinámico de este mercado, seguro que no tardaremos mucho en hacerlo.

viernes, 17 de julio de 2020

Mi libro "La Carrera Digital" en el programa "Emprende" de Radio Televisión Española

Esta semana el programa "Emprende" de Radio Televisión Española ha presentado mi libro "La Carrera Digital" dentro de su sección 'Biblioteca Emprende'.

Éste es el vídeo del programa. La mención a mi libro aparece en el minuto 5:15.


Emprende, dirigido y presentado por Juanma Romero, se autodefine como un programa sobre ideas, emprendedores, visionarios e inventores. Se emite en el canal 24 horas las madrugadas del Jueves al Viernes y siempre dedica algún minuto a recomendar libros de interés para emprendedores.

Compartiendo el libro con Juanma Romero
En esta ocasión, el libro presentado ha sido "La Carrera Digital" y, en el espacio que le han dedicado han destacado la necesidad de prepararse, de entrenarse. 

Es una reseña breve pero en un medio muy significativo con alcance nacional e internacional así que estoy, evidentemente, muy contento y satisfecho. Y quisiera, modestamente, expresar mi agradecimiento a su director, Juanma Romero con quien hace unos días compartía el libro y una amigable e interesante charla, por haber reservado en su programa un espacio para mi libro.