1.        INTRODUCCION

1.1       Algoritmo

En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas, un algoritmo es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución.

Los algoritmos son el objeto de estudio de la algoritmia. En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de multiplicación, para calcular el producto, el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.

Algoritmo (en latín, dixit algorithmus y este del griego arithmos, que significa «número», quizá también con influencia del nombre del matemático persa Al-Juarismi) Al-Juarismi Estudió y trabajó en Bagdad en la primera mitad del siglo IX, en la corte del califa al-Mamun. Para muchos, fue el más grande de los matemáticos de su época. Debemos a su nombre y al de su obra principal, Hisāb al-ŷabr wa’l muqābala, (حساب الجبر و المقابلة) nuestras palabras álgebra, guarismo y algoritmo. De hecho, es considerado como el padre del álgebra y como el introductor de nuestro sistema de numeración denominado arábigo.

1.2       Teoría de autómatas

La teoría de autómatas es una rama de la teoría de la computación que estudia las máquinas abstractas y los problemas que éstas son capaces de resolver.

Un autómata es un modelo matemático para una máquina de estado finito (FSM sus siglas en inglés). Una FSM es una máquina que, dada una entrada de símbolos, «salta» a través de una serie de estados de acuerdo a una función de transición, esta función de transición dice al autómata a qué estado cambiar dados unos determinados estado y símbolo.

La entrada es leída símbolo por símbolo, hasta que es «consumida» completamente (piense en ésta como una cinta con una palabra escrita en ella, que es leída por una cabeza lectora del autómata; la cabeza se mueve a lo largo de la cinta, leyendo un símbolo a la vez) una vez la entrada se ha agotado, el autómata se detiene.

Dependiendo del estado en el que el autómata finaliza se dice que este ha aceptado o rechazado la entrada. Si éste termina en el estado «acepta», el autómata acepta la palabra. Si lo hace en el estado «rechaza», el autómata rechazó la palabra, el conjunto de todas las palabras aceptadas por el autómata constituyen el lenguaje aceptado por el mismo.

1.3       Introducción a la Inteligencia Artificial

Cuando hablamos de Inteligencia Artificial la gente está pensando en el cerebro de un robot tipo humanoide como el de la figura; que llega a ser una máquina un poco lista, pero que no llega a nuestra inteligencia porque no tiene sentimientos. Pero, ¿qué pasa si comienza a sentir? ¿Nos controlará? …

Todo esto es pura ficción que sabiamente crea la industria del cine para conseguir espectadores, aprovechando nuestras debilidades como seres humanos, que tememos a que alguien superior a nosotros nos domine. Que daño está haciendo la industria del cine en la comprensión de lo que verdaderamente es la Inteligencia Artificial.

Vamos a ver un caso práctico de como utilizar la IA. A partir de redes neuronales se ha creado un algoritmo (Universidad de Stanford) que basándonos en una imagen concreta nos la muestra pintada con el estilo que queramos (DeepArt ha creado una apliación). A continuación os dejo una foto de la iglesia de Gimialcón pintada al estilo del noruego Edvard Munch (“El grito”); al estilo Picaso y al estilo Goya. La verdad es que no queda nada mal.

Recientemente Google ha liberado la herramienta de Inteligencia Artificial Tensorflow (que es la base de muchas de sus aplicaciones) y actualmente está revolucionando este mundillo. Os dejo un pequeño ejemplo de lo que puede hacer; y de como funciona una red neuronal:

Para definir AI, primero se debe definir el concepto de  inteligencia   en general. Una definición basada en Wikipedia es:

La inteligencia se puede describir en general como la capacidad de percibir información y retenerla como conocimiento para aplicar a comportamientos adaptativos dentro de un entorno o contexto.

Según la Real Academia Española de la Lengua RAE   “Inteligencia”

  • Del lat. intelligentia.
  • Capacidad de entender o comprender.
  • Capacidad de resolver problemas.
  • Conocimiento, comprensión, acto de entender.
  • Sentido en que se puede tomar una proposición, un dicho o una expresión.
  • Habilidad, destreza y experiencia.
  • Trato y correspondencia secreta de dos o más personas o naciones entre sí.
  • Sustancia puramente espiritual.

Y define “Inteligencia artificial” como

Disciplina científica que se ocupa de crear programas informáticos que realizan operaciones comparables a las que realizan la mente humana, como el aprendizaje o el razonamiento lógico.

Si bien hay muchas definiciones diferentes de inteligencia, todas implican realmente el aprendizaje, la comprensión y la aplicación del conocimiento aprendido para lograr uno o más objetivos.

Hace unos años, principios de los 90, estudiaba una asignatura en los cursos de doctorado que se llamaba Inteligencia Artificial y me acuerdo que dábamos lenguajes de programación como Cobol y Lisp, también estaban de moda  los ” Sistemas Expertos ” y empezaba a despegar Internet. (por cierto, me puedo considerar como uno de los pioneros de su uso en España) era la época oscura de la IA; desde entonces y hasta hace unos dos o tres años se han hecho cosas pero se ha avanzado muy poco. En lo único que se ha avanzado ha sido en temas de robótica y automatización de procesos industriales.

¿Por qué este boom de la inteligencia artificial ahora? ¿Qué ha cambiado en estas dos o tres décadas? hay que decir que los cuellos de botella más importantes a lo largo de las últimas temporadas fueron los datos y el hardware. Los avances solo han sido posibles cuando los datos y el hardware han estado disponibles para probar nuevas ideas.

Hemos evolucionado (revolucionado) a grandes centros de cálculo, con millones de procesadores, almacenamiento casi ilimitado, computo en la nube, y datos, datos y mas datos por todos los lados.

En los últimos años se han producido una serie de condiciones y cambios tecnológicos que han propiciado el resurgimiento de la IA y su aplicación en nuevas áreas, nos referimos a Big Data , Cloud , IoT , Mobility … una verdadera nueva revolución industrial.

Después de la enorme disrupción que han supuesto las tecnologías Big Data, la Inteligencia Artificial es la siguiente gran revolución tecnológica que ya está llegando a todos los rincones.

AI es un campo extremadamente poderoso y emocionante al que para ser modernos ponemos el calificativo de “Smart”. Ahora todo es Smart ( Smart-city , Smart-car , Smart-phone , Smart-homes , Smart …) detrás de “Smart” hay dos conceptos “Datos” (muchos y variados) y “Algoritmos” (Cada vez más complejos y centralizados ) Ya te vas a dar cuenta de que los puestos de trabajo en el futuro van a estar relacionados con estas dos palabras clave.

 

Figura Espurgador de datos y Domador de algoritmos

Para abordar la IA vamos a considerar cuatro enfoques distintos:

Sistemas que actúan como humanos: Estos sistemas tratan de actuar como humanos; es decir, imitan el comportamiento humano; por ejemplo la robótica . El estudio de cómo lograr que los ordenadores realicen tareas que, por el momento, los humanos lo hacen mejor. Dentro de este enfoque podemos encontrar la famosa Prueba de Turing . Para poder superar esta prueba, la máquina debería poseer las siguientes capacidades:

  • Procesamiento de lenguaje natural, que le permite comunicarse satisfactoriamente.
  • Representación del conocimiento, para almacenar lo que se conoce o se siente.
  • Razonamiento automático, para utilizar la información almacenada para responder a preguntas y extraer nuevas conclusiones.
  • Aprendizaje automático, para adaptarse a nuevas circunstancias y para detectar patrones extrapolables.
  • Visión computacional, para percibir objetos.
  • Robótica, para manipular y mover objetos.

Sistemas que piensan como humanos: Estos sistemas tratan de emular el pensamiento humano; por ejemplo las redes neuronales artificiales . La automatización de actividades que vinculamos con procesos de pensamiento humano, actividades como la toma de decisiones , resolución de problemas y aprendizaje . Dentro de este enfoque podemos encontrar el campo interdisciplinario de la ciencia cognitiva, en el cual convergen modelos computacionales de IA y técnicas experimentales de psicología .

Sistemas que piensan racionalmente: Es decir, lógica, tratar de imitar o emular, el pensamiento lógico racional del ser humano; por ejemplo los sistemas expertos. El estudio de las matemáticas que hacen posible percibir , razonar y actuar es decir, encontrar las palabras que rigen el pensamiento racional. Dentro de este enfoque podemos encontrar la lógica , que intenta expresar las palabras que gobiernan la manera de operar de la mente.

Sistemas que actúan de forma racional: Tratan de forma racional el comportamiento humano; por ejemplo los agentes inteligentes . Dentro de este enfoque un agente racional es aquel que actúa con la intención de alcanzar, cuando hay incertidumbre, el mejor resultado posible. La demanda computacional que esto implica que es demasiado grande, por lo que debemos conformarnos con una racionalidad limitada. El aprendizaje no se lleva a cabo por erudición exclusivamente, sino que profundiza en el conocimiento de cómo funciona el mundo y facilita la concepción de estrategias mejores para manejarse en él.

Algunos ejemplos interesantes de los siguientes:

  • Verificación de usuarios basada en rostro: seguridad, autenticación, perfilado / segmentación de clientes, identificación en tiendas físicas.
  • Análisis de clientes: conocer mejor al usuario a través de la detección de logotipos o texto en los productos que consume. Detección del sentimiento o la experiencia de compra en tiendas físicas
  • Diagnóstico de enfermedades: diagnóstico por imagen en base a comparación con diagnósticos previos. Retinopatías, diabetes , imagen médica …
  • Realidad aumentada: juegos, catálogo virtual, avanzada con el medio …
  • Detección de matrículas: seguridad, segmentación, identificación …
  • Predicciones atmosféricas a corto medio y largo plazo
  • Domótica
  • Predicciones de producción en plantas industriales
  • Mantenimiento predictivo de máquinas
  • Detección de anomalías en redes de distribución
  • Detección de fraudes en compañías energéticas (electricidad, gas)

2.        Campos de aplicación de la IA

2.1       Reconocimiento de voz

El reconocimiento automático del habla ( RAH ) o el reconocimiento automático de voz es una disciplina de la inteligencia artificial que tiene como objetivo permitir la comunicación entre los seres humanos y las máquinas

Un aspecto crucial en el diseño de un sistema de RAH es la elección del tipo de aprendizaje que se utiliza para construir las diversas fuentes de conocimiento. Básicamente, existen dos tipos:

Aprendizaje deductivo: Las técnicas de Aprendizaje Deductivo basado en la transferencia de los conocimientos que posee un humano. Un ejemplo paradigmático de las metodologías que utilizan los sistemas técnicos en los Sistemas Basados ​​en el Conocimiento y, en particular, los Sistemas Expertos.

Aprendizaje inductivo: Las técnicas de Aprendizaje Inductivo se basan en que el sistema puede, automáticamente, obtener los conocimientos necesarios de ejemplos reales sobre la tarea que se desea modelizar. En este segundo tipo, los ejemplosocultos de Márkov en las redes neuronales artificiales que configuran automáticamente las muestras de aprendizaje.

Cada vez más sistemas incorporan la traducción y transformación del lenguaje humano a formatos útiles para las máquinas (ordenador, teléfono móvil, dispositivo).

Algunos ejemplos de proveedores son: NICE , Nuance Communications , OpenText , Verint Systems.

2.2       Agentes virtuales

Un asistente virtual o agente virtual es un agente de software que ayuda a usuarios de sistemas computacionales, automatizando y haciendo tareas con la mínima interacción hombre-máquina. La interacción que se da entre un asistente virtual y una persona, debe ser natural, una persona se comunica utilizando la voz y el asistente virtual lo procesa, interpreta y responde de la misma manera. El ejemplo más común de esta tecnologí

a son los chatbots.

Actualmente se usa en servicio y atención al cliente y para la administración de las casas inteligentes.

Una encuesta en línea en mayo de 2017 encontró el más utilizado en los Estados Unidos fueron Siri de Apple (34%), Asistente de Google (19%), Amazon Alexa (6%) y Microsoft Cortana (4%).

Algunos ejemplos de proveedores de asistentes virtuales son: Amazon , Apple, Artifitial solutions, Assist AI, Creative Virtual, Google, IBM, IPsoft, Microsoft, Satisfi.

La tecnología biométrica contempla la identificación, la medición y el análisis de las características físicas y el comportamiento de las personas. Esto permite interacciones más naturales entre los humanos y las máquinas, incluyendo: reconocimiento de tacto, imagen, habla y lenguaje corporal.

Actualmente se usa principalmente en investigación de mercado. Algunos ejemplos de proveedores son: 3VR, Affectiva, Agnitio, FaceFirst, Sensory, Synqera, Tahzoo.

2.3       Automatización de procesos robóticos

Esta automatización se da al usuario y otros métodos para imitar y automatizar tareas humanas que apoyen en los procesos empresariales.

Ahora usado en casos donde los resultados son muy costosos o ineficientes que los humanos se han visto afectados o han sido procesados. La inteligencia artificial no viene a reemplazar la capacidad humana, sino que es complementario y potencializante todo el talento que tienen las personas.

Por ejemplo Adext, es una plataforma que automatiza los procesos de comercialización y ventas a través de tecnologías de inteligencia artificial, contribuye a que el talento humano deja de pasar horas, realiza tareas mecánicas y repetitivas y el mar se reubica en puestos estratégicos y creativos, donde se sienta mucho más cómodo y puede explotar su potencial al máximo.

Algunos ejemplos de proveedores de automatización de procesos robóticos son: Automation Anywhere, Blue Prism, UiPath, WorkFusion.

2.4       Generación y procesamiento de lenguaje natural

Es un subcampo de la inteligencia artificial que consiste en crear texto a partir de datos obtenidos. Esto permite que las computadoras puedan comunicar ideas con gran precisión y exactitud.

Se usa actualmente en servicio al cliente, generación de informes y en el resumen de hallazgos de inteligencia de mercado.

Algunos proveedores que brindan el servicio de generación de lenguaje natural son

: Attivio, Automated Insights, Cambridge Semantics, Digital Reasoning, Lucidworks, Narrative Science, SAS, Yseop

El procesamiento de lenguaje natural (NLP por sus siglas en inglés) utiliza analíticas de texto para facilitar el entendimiento estructural de los enunciados, así como su significado, entonación y lo que pretenden decir a través de métodos estadísticos y de aprendizaje automático.

Actualmente se usa en sistemas de seguridad y detección de fraudes, y en una amplia gama de asistentes automatizados y aplicaciones para la extracción de datos no estructurados.

Algunos proveedores que brindan el servicio de procesamiento de lenguaje natural: Basis Technology, Coveo, Expert System, Indico, Knime, Lexalytics, Linguamatics, Mindbreeze, Sinequa, Stratifyd, Synapsify.

2.5      Aprendizaje automático (Machine learning) y aprendizaje profundo (Deep Learning)

El aprendizaje automático o aprendizaje de máquinas es en el campo de las ciencias de la computación y una rama de la inteligencia artificial cuyo objetivo es desarrollar técnicas que permitan que las computadoras aprendan.

Proporcionando algoritmos, APIs (interfases de programación de aplicaciones), herramientas de desarrollo y entrenamiento, así como el procesamiento y análisis en tiempo real de Big Data, las plataformas con machine learning están cobrando día con día mayor relevancia …

Actualmente, se usa en gran variedad de aplicaciones empresariales, principalmente para realizar predicciones o clasificaciones.

‘Traducida aprendizaje automático Seria La De Aprendizaje automático o Aprendizaje Automatizado . El concepto clave es que las maquinas tienen inteligencia, aunque esta es una inteligencia no consciente. Es decir, pueden tomar en segundos decisiones en base a cálculos

matemáticos que a los humanos se llevan a cabo décadas de trabajo sobre papel. Las máquinas aprenden por refuerzo, por imitación y por aprendizaje profundo. E incluso se lleva lo aprendido de un entorno a otro. Pese a que todos estos conceptos son virtudes, la verdad es que la inteligencia y el aprendizaje de la máquina es limitado a los casos muy concretos. Por ejemplo, una máquina que aprenda a jugar al ajedrez, aunque gane a todos los contrincantes humanos del mundo, no sabrá traducir un texto, no sabrá hablar ni coger un objeto. Cualquier persona que ganará en esas otras tareas.

La revista Forbes tiene un redactor que se llama Quill y que escribe sobre finanzas. Quill es un programa de inteligencia artificial de la empresa Narrative Science.

Algunos proveedores son: Amazon, Fractal Analytics, Google, H2O.ai, Microsoft, SAS, Skytree y Adext.

Un tipo especial de máquina de aprendizaje que consiste en circuitos neuronales artificiales con múltiples capas de abstracción. Esta tecnología imita las funciones del cerebro humano para los datos, y crea patrones que se utilizan en la toma de decisiones, como también ocurre en el ejemplo antes mencionado.

Actualmente se usa principalmente para reconocer patrones y clasificar aplicaciones compatibles con conjuntos de datos a gran escala.

Algunos ejemplos de proveedores son: Deep InstinctFluid AI , MathWorks , Adext , Peltarion , Saffron Technology , Sentient Technologies.

Una de las piezas claves de la Inteligencia Artificial son los datos (es el combustible de nuestra máquina). Para abrir boca os dejo un enlace muy interesante en el que se basan la mayoría de los que trabajan en este mundillo.