Entradas

Introducción al procesamiento natural del lenguaje

Imagen
Inteligencia artificial La inteligencia artificial (IA) es la habilidad de una máquina de presentar las mismas capacidades que los seres humanos, como el razonamiento, el aprendizaje, la creatividad y la capacidad de planear. Aunque los procesos de desarrollo de estas capacidades en una máquina difieran en los procesos ocupados por seres humanos. De manera general, la IA permite que los sistemas tecnológicos perciban su entorno, se relacionen con él, resuelvan problemas y actúen con un fin específico. La máquina recibe datos (ya preparados o recopilados a través de sus propios sensores, por ejemplo, una cámara), los procesa y responde a ellos, ya sea de manera supervisada por el especialista que los diseña o de forma no supervisada (sin ayuda del especialista) Los sistemas de IA son capaces de adaptar su comportamiento en cierta medida, analizar los efectos de acciones previas y de trabajar de manera autónoma. A continuación se muestran algunas de las aplicaciones prácticas...

1. Sobre los chatbots

Imagen
  Introducción Mas de la mitad de los usuarios de gadgets prefieren establecer una comunicación a través de los mensajes de texto, por lo que la "mensajería" es la manera mas popular y utilizada de comunicación alrededor del mundo.   Se sabe que un chatbot es una herramienta de software que interactúa con los usuarios sobre un tema determinado o en un dominio específico de forma natural y conversacional utilizando texto o voz. Para muchos propósitos diferentes, los chatbots se han utilizado en una amplia gama de dominios, que incluyen marketing, servicio al cliente, soporte técnico, así como educación y capacitación. Los chatbots se han vuelto una herramienta para conducir una conversación online vía texto o mediante texto-a-voz.  Gartner estima que el 70% de las empresas de tecnología van a crear su propio sistema de chatbots a mediados del 2022. La mayoría de los chatbots en Internet son asistentes virtuales para empresas. Los beneficios de chatbots para empr...

2. Sobre la arquitectura y las características de los chatbots

Imagen
Descripción general de la arquitectura de un chatbot Comprender los elementos técnicos esenciales para construir un chatbot y lo que se encuentre relacionado para elegir la plataforma y metodología correcta.   En su forma ideal, una plataforma de desarrollo de chatbots de texto debería seguir como mínimo los siguientes componentes: Plataforma o SDK (Microsoft bot framework, DialogFlow) Plataforma o servicio para conectar el chatbot al canal. (Slack, microsoft teams, web app personalizada) Motor de NLP y NLU Logica del agente o Dialogue Manager (DM) Sistemas back-end de almacenamiento de datos. Determinar que tecnología se utilizara (SQL) Sistemas de front-end.  Integración con servicios externos: Application programming interfaces (API): REST, SOAP Customer relationship management (CRM) Content management system (CMS) Google services Limitaciones y retos de los chatbots A pesar de la tecnología reciente sobre el procesamiento de lenguaje ha demostrado alcanzar resultados muy c...

3. Chatbots vs Asistentes virtuales, inteligentes y de aprendizaje

Imagen
Definiciones y aplicaciones Los desarrollos actuales en el área del diseño y desarrollo de chatbots sugieren que la interacción con las tecnologías, ya sea mediante el lenguaje natural o mediante el habla, es posible dado que la tecnología se desarrolla y los usuarios se acostumbran más a interactuar con entidades digitales. En lugar de crear una aplicación de máquina inteligente similar a la humana, se trata de crear asistentes digitales efectivos que puedan proporcionar información, responder preguntas, discutir un tema específico o realizar alguna tarea, etc. Por lo que a lo largo del tiempo, de acuerdo a los avances teóricos, se puede hallar una transición generacional de chatbots con funciones mas avanzadas donde la inteligencia artificial juega un papel importante en el desarrollo. Ver siguiente figura. En una primera instancia, los chatbots basados en texto suelen seguir un conjunto de reglas o flujos establecidos para responder a las preguntas realizadas por el usuario. Esta...

4. Sobre la arquitectura de un asistente de aprendizaje y su cerebro

Imagen
Modelo propuesto A continuación se muestra el modelo propuesto para un asistente de aprendizaje, que obedece los principios de comunicación de chatbots avanzados con características de asistentes virtuales e inteligentes. De manera general, este modelo incluye las siguientes etapas: Etapas de pre-procesamiento Lógica del agente (DM - Dialogue Manager). Funciones del asistente (Conversacional, recomendación, progreso, FAQ, Consulta externa) Una función de acceso especial para los administradores y desarrolladores. Bloque sobre analítica del aprendizaje. Etapa de post procesamiento.     Principios de la lógica del agente  También conocido como dialogue manager (DM). Es el cerebro central del sistema encargado de analizar las características del texto (como intenciones y entidades) para transmitirse de forma correcta a alguna de las funciones implementadas.     Los elementos de la lógica del agente pueden estar conectados a alguna base externa basada en conocimient...

5. Sobre las funciones conversacionales y su implementación

Imagen
Redes recurrentes Los humanos no iniciamos nuestro razonamiento desde cero cada segundo que pasa, por ejemplo, mientras leemos este párrafo, entendemos lo que está escrito basados en nuestro entendimiento de las palabras o frases anteriores. Básicamente, nuestros pensamientos son persistentes.    En este sentido, las redes neuronales tradicionales (NNs) no pueden simular esta tarea por su características secuenciales y olvidan atributos previos. Las redes secuenciales son un tipo de red neuronal en donde cada entrada es procesada de manera independiente sin considerar los datos procesados con anterioridad.  En el caso de las redes recurrentes (del inglés Recurrent Neural Networks RNNs), se utiliza información de los procesos y datos anteriores para calcular una nueva salida. Las llamadas RNNs se utilizan ampliamente para realizar análisis de secuencias ya que están diseñadas para extraer la información contextual definiendo las dependencias entre varios pasos de tiempo. D...

6. Sobre las características con WolframAlpha

Imagen
WolframAlpha WolframAlpha es un buscador online que responde a preguntas y realiza cálculos de manera casi inmediata. Sus respuestas son detalladas y muchas de ellas muy específicas si la pregunta esta correctamente planteada. Su sistema responde a los conceptos introducidos en su base de datos, es decir, en lugar de proporcionar una lista de documentos o páginas web como hacen los motores de búsqueda tradicionales, WolframAlpha busca la precisión en sus respuestas. Básicamente, posee un sistema que almacena conocimiento humano procesado por expertos en la materia (no es información recopilada automáticamente) y utiliza un superordenador de más de 10.000 CPUs para procesar algoritmos que intentan entender una pregunta en lenguaje natural y ofrecerte la respuesta concreta, ya sea un número, un análisis, una gráfica, e incluso un informe completo.     Utilidades básicas Búsqueda rápida, breve y detallada sobre temas específicos como por ejemplo: personajes históricos, c...

7. Sobre las habilidades de adquisición de información

Imagen
Sistema de búsqueda y adquisición de información Los sistemas de adquisición de información emplean métodos optimizados de búsqueda rápida. Para el caso particular de este proyecto, el sistema de búsqueda y adquisición de información empleado contempla dos elementos clave como lo son: El motor de búsqueda basado en BM25, seguido de una etapa de procesamiento de texto conocida como Sistema Q&A de comprensión automática de lectura. A continuación se muestra el diagrama a bloques del sistema completo a implementar. Motor de búsqueda BM25 BM25 se refiere a Best Match 25 , que significa 25 mejores resultados de una búsqueda. Es un método propuesto en 1994 que emplea las técicas: IDF (Inverse Document Frequency), tf (term-frequency) y document weight. Los dos refinamientos clave de este algoritmo son: Saturación término-frecuencia: Apuntar a los documentos que contengan el término que se pretende encontrar mientras se ordenan los menos frecuentes que dan sentido a búsquedas menos útile...

8. Sobre los sistemas de recomendación

Imagen
  El rápido crecimiento de la recopilación de datos ha dado lugar a una nueva era de la información. Los datos se utilizan para crear sistemas más eficientes y aquí es donde entran en juego los sistemas de recomendación. Los sistemas de recomendación son un tipo de sistemas de filtrado, mejoran la calidad de los resultados de búsqueda y proporcionan información más relevantes dentro de un sistema de búsqueda o están relacionados con el historial de búsqueda del usuario. Se utilizan para predecir las preferencias que un usuario le daría a un producto, lugar, o servicio. Las principales empresas de tecnología utilizan estas técnicas y son quienes han implementados diferentes métodos. Por ejemplo, Amazon lo usa para sugerir productos a los clientes, YouTube lo usa para decidir los videos en la la lista de reproducción automática y Facebook lo usa para recomendar páginas y personas a seguir. Además, empresas como Netflix y Spotify dependen en gran medida de la eficacia de sus motores d...