Tag: Machine Learning

La clasificación automática de documentos consiste en utilizar técnicas de Inteligencia Artificial sobre un conjunto de elementos para ordenarlos por clases o categorías. Sin embargo, también se pueden utilizar estas técnicas para asignar un documento a una determinada clase o categoría.

Par llevar a cabo la clasificación automática de documentos primero hay que realizar una extracción de features (características) destinadas a ser informativos y no redundantes. Esto facilitará los pasos posteriores de machine learning en la clasificación automática de documentos. La extracción de características (features) se trata de un proceso de reducción y codificación, donde un conjunto inicial de variables sin procesar (ej. texto en un documento) se reduce a características más manejables para su procesamiento (ej. números) y que se describa con precisión el conjunto de datos original.

Existen diversas técnicas de extracción de features:

Técnica clásicas

  • Term frequency – Inverse document frequency (TF IDF). Se trata una técnica muy utilizada en Machine Learning. para otorgar la relevancia de una palabra en un documento de una colección a través de una medida numérica. Esta medida numérica se utiliza para calificar la relevancia de una palabra dentro de un documento a partir de la frecuencia que aparece en el mismo. La idea en la que se basa esta técnica es que si una palabra aparece frecuentemente en el documento, debe ser importante y se le debe dar una puntuación alta. Sin embargo, si una palabra aparece frecuentemente en otros documentos, probablemente no sea un identificador único, y por tanto, se le debe asignar una puntuación más baja. Aquí, puedes consultar la fórmula matemática.

Nuevas técnicas basadas en Deep Learning:

  • Doc2vec. El objetivo principal de Doc2Vec es asociar documentos arbitrarios con etiquetas. Doc2vec es una extensión de word2vec que aprende a correlacionar etiquetas y palabras, en lugar de palabras con otras palabras. El primer paso es crear un vector que represente el “significado” de un documento para que luego se pueda utilizar como entrada a un algoritmo de aprendizaje automático supervisado y así asociar documentos con etiquetas.

Tras la extracción de features y en base a la información previa que se posea de los documentos a clasificar o categorizar, se podrán realizar diversas técnicas para la clasificación automática de documentos:

  • Clasificación supervisada. Cuando tenemos conocimiento del conjunto de documentos previamente clasificados de forma manual, ésto nos servirán para entrenar al sistema inteligente en la clasificación automática.
  • Clasificación no supervisada o clustering de documentos. Cuando no tenemos información a priori del conjunto de documentos ni de las categorías en las que deben estar clasificados.

Cuáles son las técnicas de clasificación automática de documentos más usadas

Según el tipo de clasificación, existen:

  • Técnicas de aprendizaje supervisado para clasificaciones supervisadas. Estas técnicas intentan reducir una función que partiendo de la colección de documentos (clasificación manual), tomando un documento de entrada sea capaz de predecir la clase o categoría a la que corresponde ese documento. En otras palabras, estas técnicas de clasificación supervisadas parten de un conjunto de documentos ya clasificados de forma manual (conjunto de entrenamiento) y se intenta asignar una clasificación a un segundo conjunto de documentos. Dependiendo del tipo de colección de documento o tipo de documentos a clasificar, se utilizarán unas técnicas u otras, desde algoritmos de clasificación bayesianos, arboles de decisiones, redes neuronales, …
  • Algoritmos de clustering para clasificaciones no supervisadas. Cuando no se disponen de un conjunto de documentos previamente clasificados, se opta por, a partir de las propiedades de los documentos, agruparlos (clustering) según sus semejanzas entre sí.

 

Las recomendaciones forman parte de la cotidianidad de las personas ya sea facilitarnos la decisión de qué película ver, qué zapatos comprar, a qué restaurante ir, o a qué lugar viajar, entre cientos de decisiones que tomamos a diario. Estas recomendaciones pueden desarrollarse empleando tecnologías con técnicas y algoritmos de inteligencia artificial.

En computación, los sistemas de recomendación estudian las preferencias y gustos de los usuarios con el objetivo sugerirles ítems (contenidos) factibles y de interés. Un sistema de recomendación (o “recomendador”) asiste al usuario para filtrar items relevantes de información en base a una serie de criterios u objetivos, ya sean preferencias, gustos o necesidades, que constituyen el perfil personalizado de un usuario determinado. En otras palabras, se trata de un sistema inteligente que ofrece a los usuarios sugerencias (o recomendaciones) personalizadas sobre un determinado contenido (o ítem).

No olvidemos que este es el objetivo principal de un sistema de recomendación: ofrecer contenido personalizado (películas, zapatos, productos, lugares, …) a los usuarios en base a su perfil (preferencias o intereses).

¿Cómo funcionan los sistemas de recomendación?

Estos sistemas de recomendación analizan y procesan datos históricos de los usuarios (gustos, preferencias, patrones de conducta, calificaciones, compras, etc) de una serie de ítems (marcas, productos, contenidos, servicios, precios, etc) y la transforma en información interesante para el propio usuario que necesita tomar una decisión de compra, una consumición o realizar cualquier otra acción. Desde un punto de vista más técnico, existe diversos enfoques para analizar y procesar el perfil personalizado del usuario a través de filtros (algoritmos) colaborativos, filtros basados en contenido, filtros demográficos o filtros basados en el historial del usuario, entre otros. También, existen algunos sistemas de recomendación que hacen uso de un enfoque híbrido combinando varias de estas técnicas.

sistema de recomendacion_spotify

Los recomendadores habitualmente son de tres tipos, pueden basarse tanto en el contenido (ítem) como en interacciones (acciones de usuarios activos) o en un mix de ambos tipos. Veamos en qué consiste cada uno de ellos:

Sistemas de recomendación basados en contenido: Si te gustó el libro “¿Sueñas los androides con ovejas eléctricas?” probablemente te guste la película “Blade Runner”. Este sistema de recomendación se centra en utilizar los contenidos y características de los productos (items o contenidos) para encontrar similitudes con otros productos. Este tipo de recomendador es muy útil cuando un sistema posee escasa información sobre los gustos y preferencias de los usuarios.

Sistemas de recomendación basados en interacciones. Dime con quién andas, y te diré quién eres. Esta es la idea fundamental para comprender en qué consiste este tipo de recomendador. Para realizar una recomendación, el sistema no necesita información acerca de los productos (ítmes o contenidos) sino únicamente acerca de las interacciones que realizan los usuarios. A este tipo de recomendadores se les conoce como sistemas de recomendación colaborativos, ya que se basan en las acciones que realizan otros usuarios (colaboradores) para ofrecer una recomendación personalizada al perfil de un usuario. Sirve para realizar predicciones automáticas a partir de la recopilación de interacciones de otros consumidores con interese comunes.

Sistemas de recomendaciones híbridos. Se trata de una combinación de ambos recomendadores. Un claro ejemplo de un sistema de recomendación basado en contenido y en interacciones es la plataforma Netflix. Por un lado, el dashboard de la app te muestra una parrilla personalizada donde te recomienda qué serie, documental o película ver en base a los contenidos que has visto (si ves varias películas de ciencia ficción, te recomienda películas del mismo género). Y por otro lado, en base a las películas vistas de otros usuarios similares a tus preferencias, te recomienda películas que quizás son de otros géneros pero que en base a las similitudes con otros usuarios te propone otras película que visionar. Otros ejemplos pueden ser Amazon o Spotify, que realizan sugerencias en sus apps en base a lo que otros usuarios consumen y a tus consumos.

La inteligencia artificial en la actualidad juega un papel importante en nuestra vida cotidiana; desde nuestros teléfonos inteligentes (smartphones) a otros dispositivos electrónicos como neveras inteligentes. La tecnología nos ha proporcionado oportunidades de cambiar nuestro modo de vida tanto en el trabajo como al hacer la compra, consumir energía, etc.

La  tecnología se vuelve, cada vez más, más inteligente y con capacidades múltiples: procesamiento de lenguaje natural, visión artificial, sistemas de recomendaciones, entre otros. Sin embargo, pese a que la inteligencia artificial y las máquinas se hayan convertido en parte de la vida cotidiana, esto no significa que las entendamos bien. Por este motivo queremos explicar qué diferencias existen entre Inteligencia Artificial (IA), Machine Learning y Deep Learning para entender mejor el entorno en el que se construye a nuestro alrededor con estas tecnologías inteligentes.

Qué es Inteligencia Artificial

En computación, la Inteligencia Artificial se trata de programas o bots diseñados para realizar determinadas operaciones que se consideran propias de la inteligencia humana. Se trata de hacer que éstos sean tan inteligentes como un humano. La idea es que perciban su entorno y actúen en base a ello, centrado en el auto-aprendizaje y que sean capaces de reaccionar ante nuevas situaciones.

El sueño de los pioneros en Inteligencia Artificial era construir máquinas complejas, habilitadas por computadoras emergentes, que poseyeran las mismas características de la inteligencia humana. Este es el concepto que consideramos “genérico” de Inteligencia Artificial: maquinas fabulosas que tienen todos nuestros sentidos (tal vez incluso más), toda nuestra razón y piensan igual que nosotros.  Podemos poner ejemplos de este concepto en películas como Star Wars (C-3PO) o Teminator. Claro está que este concepto genérico de máquinas de IA sólo quedan en el imaginario del cine y de novelas de ciencia ficción por una buena razón: no podemos llevarlo a cabo, por ahora.

imagenes similares pinterest

Imágenes similares en Pinterest

Sin embargo, sí existen en la actualidad tecnologías que pueden realizar tareas específicas que normalmente requieren inteligencia humana, como la percepción visual, el reconocimiento de voz, la toma de decisiones y la traducción entre idiomas. Algunos ejemplos de este tipo de Inteligencia Artificial, en la actualidad, son cosas como la clasificación de imágenes similares en Pinterest o Google Images y el reconocimiento facial en Face ID en  iPhone.

Estos son claros ejemplos de Inteligencia Artificial que exhiben algunas características de la inteligencia humana. Pero, ¿cómo lo hacen? ¿De dónde viene esa inteligencia? Eso nos lleva al siguiente concepto, Machine Learning.

Qué es Machine Learning

Machine Learning o aprendizaje automático es un subconjunto de Inteligencia Artificial en el campo de la informática que a menudo utiliza técnicas estadísticas para dar a las computadoras la capacidad de “aprender” (es decir, mejorar progresivamente el rendimiento en una tarea específica) con datos, sin estar explícitamente programadas.

En otras palabras, el aprendizaje automático en su forma más básica es la práctica de usar algoritmos para analizar datos, aprender de ellos y luego hacer una determinación o predicción sobre algo en el mundo. Por lo tanto, la máquina está “entrenada” utilizando grandes cantidades de datos y algoritmos que le dan la capacidad de aprender a realizar la tarea por sí misma.

El aprendizaje automático vino directamente de las mentes de los pioneros en Inteligencia Artificial. Resultó que una de las mejores áreas de aplicación para el aprendizaje automático, durante muchos años, fue la visión por computadora, aunque requería una gran cantidad de codificación manual para hacer el trabajo. La gente entraba y escribía clasificadores codificados a mano, como filtros de detección de bordes, para que el programa identificara dónde se inició y se detuvo un objeto; detección de forma para determinar si tenía ocho lados; o  un clasificador para reconocer las letras “S-t-o-p”. De todos los clasificadores codificados a mano, desarrollarían algoritmos para dar sentido a la imagen y “aprender” a determinar si era una señal de Stop, especialmente en un día de niebla cuando el cartel no es perfectamente visible o un árbol oscurece parte de él. Hay una razón por la que la visión por computadora y la detección de imágenes no se acercan a rivalizar con los humanos. Hasta hace poco, era demasiado frágil y propenso al error. Con el tiempo, los algoritmos de aprendizaje se corrigieron y marcaron una diferencia; esto nos lleva al siguiente concepto, Deep Learning.

Qué es Deep Learning

Deep Learning o aprendizaje profundo es una técnica dentro del machine learning basado en arquitecturas neuronales. Un modelo basado en deep learning puede aprender a realizar tareas de clasificación directamente a partir de imágenes, texto o sonido, etc. Sin necesidad de intervención humana para la selección de características. Esto se puede considera la principal ventaja del deep learning, llamada “feature discovering”. Pueden, además, poseer una precisión que supera a la capacidad del ser humano.

El aprendizaje profundo es un subconjunto de aprendizaje automático en Inteligencia Artificial (AI) que tiene redes capaces de aprender sin supervisión a partir de datos que no están estructurados ni etiquetados. También conocido como Deep Neural Learning o Deep Neural Network. Aquí es donde reside la gran diferencia respecto al Machine Learning.

Las Redes Neuronales Artificiales se inspiran en nuestra comprensión de la biología de nuestros cerebros, todas esas interconexiones entre neuronas. Pero, a diferencia de un cerebro biológico donde cualquier neurona se puede conectar a cualquier otra neurona dentro de una cierta distancia física, estas redes neuronales artificiales tienen capas discretas, conexiones y direcciones de propagación de datos.

Pueden, por ejemplo, tomar una imagen, cortarla en un grupo de teselas que se ingresan en la primera capa de la red neuronal. En la primera capa, las neuronas individuales pasan los datos a una segunda capa. La segunda capa de neuronas hace su tarea, y así sucesivamente, hasta que se produce la última capa y producción final. Cada neurona asigna una ponderación a su entrada: qué tan correcta o incorrecta es en relación con la tarea que se realiza. El resultado final se determina luego por el total de esas ponderaciones.

Por ejemplo, imaginemos de nuevo la señal de Stop. Los atributos de una imagen de una señal de stop son cortados y “examinados” por las neuronas: su forma octogonal, el color rojo de su motor de bomberos, sus letras distintivas, el tamaño de su señal de tráfico y su movimiento o falta de ella. La tarea de la red neuronal es concluir si esto es una señal de Stop o no. Se trata de un “vector de probabilidad”, realmente una suposición altamente educada, basada en la ponderación.

google self driving

Self-driving car de Google

El Deep Learning ha permitido muchas aplicaciones prácticas de Machine Learning y, por extensión, el campo general de Inteligencia Artifical. El aprendizaje profundo desglosa las tareas de manera que hace que todo tipo de asistencia en máquinas parezca posible, incluso probable. Los automóviles sin conductor, una mejor atención médica preventiva, incluso mejores recomendaciones de películas, son claros ejemplos de aplicación. La Inteligencia es el presente y el futuro. Con la ayuda de Deep Learning, la Inteligencia Artificial puede llegar a ese estado de ciencia ficción que tanto tiempo hemos imaginado con Star Wars y Terminator.

En la última década, las empresas están utilizando el aprendizaje profundo para resolver los desafíos a nivel empresarial. Desde la detección de rostros (Face ID) hasta recomendaciones de productos, segmentación de clientes, reorganización de dígitos, traducción automática, inteligencia de negocios, Internet de las cosas, seguridad de redes, etc. El uso del  deep learning  y machine learning han transformado por completo el mundo en el que vivimos hoy.

Fuente: https://hackernoon.com/top-differences-between-artificial-intelligence-machine-learning-deep-learning-d39cb6f6feaa

 

ALGORITMO.  En Ciencias de la Computación, un algoritmo es un conjunto de pasos para realizar una tarea. En otras palabras, una secuencia lógica  y con instrucciones que forman una fórmula matemática o estadística para realizar el análisis de datos.

ANÁLISIS DE SENTIMIENTO. El análisis de sentimiento se refiere a los diferentes métodos de lingüística computacional que ayudan a identificar y extraer información subjetiva del contenido existente en el mundo digital. Gracias al análisis del sentimiento, podemos ser capaces de extraer un valor tangible y directo, como puede ser determinar si un texto extraído de la red Internet contiene connotaciones positivas o negativas.

ANÁLISIS PREDICTIVO (AP). El análisis predictivo pertenece al área de la Analítica Empresarial. Se trata de utilizar los datos para determinar que puede pasar en el futuro. La AP permite determinar la probabilidad asociada a eventos futuros a partir del análisis de la información disponible (presente y pasada). También permite descubrir relaciones entre los datos que normalmente no es detectada con un análisis menos sofisticado. Técnicas como la minería de datos (data mining) y los modelos predictivos son utilizados.

ANALÍTICA EMPRESARIAL (AE). La Analítica Empresarial comprende los métodos y las técnicas que se utilizan para recopilar, analizar e investigar el conjunto de datos de una organización, lo cual genera conocimiento que se transforma en oportunidades de negocio y mejora la estrategia empresarial. AE permite una mejora en la toma de decisiones ya que éstas se basan en la obtención de datos reales y tiempo real y permite conseguir objetivos empresariales a partir del análisis de estos datos.

BIG DATA (Grande volúmenes de datos). Actualmente nos encontramos en un entorno en el que cada día se generan trillones de bytes de información. A esta enorme cantidad de datos producidos día a día, la denominamos Big Data. El crecimiento de los datos provocados en Internet y otras áreas (Ej. Genómica) hacen necesarias nuevas técnicas para poder acceder y utilizar estos datos. Al mismo tiempo estos grandes volúmenes de datos ofrecen nuevas posibilidades de conocimiento y nuevos modelos de negocio. En particular, en Internet, este crecimiento comienza con la multiplicación en el número de webs comenzando los buscadores (ej. Google) a buscar nuevas formas de almacenar y acceder a estos grandes volúmenes de datos. Esta tendencia (blogs, redes sociales, IoT …) está provocando la aparición de nuevas herramientas de Big Data y la generalización de su uso.

BUSINESS ANALYTICS (Analítica Empresarial). La Analítica Empresarial o Business Analytics permite conseguir los objetivos empresariales, a partir del análisis de datos. Básicamente permite detectar tendencias y realizar pronósticos a partir de modelos predictivos y utilizar estos modelos para optimizar los procesos de negocio.

BUSINESS INTELLIGENCE (Inteligencia de Negocio). Otro concepto relacionado con la AE es la Inteligencia Empresarial (IE) centrada en el uso de los datos de una empresa para facilitar también la toma de decisiones y anticipar acciones empresariales. La diferencia con la AE es que la IE es un concepto más amplio, no solo se centra en el análisis de datos sino que éste es un área dentro de la IE. Es decir, la IE se trata de un conjunto de estrategias, aplicaciones, datos, tecnología y arquitectura técnica entre las que se encuentra la AE; y todo ello, enfocado a la creación de nuevo conocimiento a través de los datos existentes de la empresa

DATA MINING o minería de datos. Data Mining (minería de datos) es también conocida como Knowledge Discovery in database (KDD). Es comúnmente definida como el proceso para descubrir patrones útiles o conocimientos a partir de fuentes de datos tales como Bases de Datos, textos, imágenes, la web, etc.  Los patrones deben ser válidos, potencialmente útiles y entendibles. La minería de datos es un campo multidisciplinar que incluye: aprendizaje automático, estadísticas, sistemas de base de datos, inteligencia artificial, Information Retrieval, visualización de la información, … El objetivo general del proceso de minería de datos consiste en extraer información de un conjunto de datos y transformarla en una estructura comprensible para su uso posterior.

DATA SCIENCE (Ciencia de datos).  La oportunidad que los datos ofrecen para generar nuevo conocimiento requiere de técnicas sofisticadas de preparación de estos datos (estructuración) y análisis de los mismos. Así en Internet, sistemas de recomendación, traducción automática y otros sistemas de Inteligencia Artificial se basan en técnicas de Data Science.

DATA SCIENTIST. El data scientist, como su propio nombre indica, es un experto en la Ciencia de Datos (Data Science). Su trabajo se centra en extraer conocimiento a partir de grandes volúmenes de datos (Big Data) extraídos de diversas fuentes y múltiples formatos para dar respuesta a las cuestiones que se planteen.

DEEP LEARNING o aprendizaje profundo es una técnica dentro del machine learning basado en arquitecturas neuronales. Un modelo basado en deep learning puede aprender a realizar tareas de clasificación directamente a partir de imágenes, texto o sonido, etc. Sin necesidad de intervención humana para la selección de características, esto se puede considera la principal característica y ventaja del deep learning, llamada “feature discovering”. Pueden, además, poseer una precisión que supera al ser humano.

GEOMARKETING. El análisis conjunto de los datos demográficos, económicos y geográficos posibilita estudios de mercado para rentabilizar las estrategias de marketing. El análisis de este tipo de datos se puede llevar a cabo a través del Geomarketing. Tal como su propio nombre indica, Geomarketing es una confluencia entre geografía y marketing. Se trata de un sistema integrado de información -datos de diversa índole-, métodos estadísticos y representaciones gráficas orientados a dar respuestas a cuestiones de marketing de forma rápida y sencilla.

INTELIGENCIA ARTIFICIAL. En computación se trata de programas o bots diseñados para realizar determinadas operaciones que se consideran propias de la inteligencia humana. Se trata de hacer que éstos sean tan inteligentes como un humano. La idea es que perciban su entorno y actúen en base a ello, centrado en el auto-aprendizaje, sean capaces  de reaccionar ante nuevas situaciones.

INTELIGENCIA ELECTORAL. Este nuevo término “Inteligencia Electoral (IE)” es la adaptación de modelos matemáticos y de Inteligencia Artificial a las peculiaridades de una campaña electoral. El objetivo de esta inteligencia es la obtención de una ventaja competitiva en los procesos electorales. ¿Sabes cómo funciona?

INTERNET OF THINGS (IoT). Este concepto, Internet de las Cosas, fue creado por Kevin Ashton y hace referencia al ecosistema en el que los objetos cotidianos están interconectados a través de Internet.

MACHIEN LEARNIN (Aprendizaje automático). Este término hace referencia a la creación de sistemas a través de la Inteligencia Artificial,  donde lo que realmente aprende es un algoritmo, el cual supervisa los datos con la intención de poder predecir comportamientos futuros.

MINERÍA WEB. La minería web tiene como objeto descubrir información útil o el conocimiento (KNOWLEDGE) procedente de la estructura de hipervínculo web, contenido de la página y datos de usuario. Aunque la minería web utiliza muchas técnicas de minería de datos, no es meramente una aplicación de técnicas de minería de datos tradicionales, debido a la heterogeneidad y la naturaleza semi-estructurada o no estructurada de los datos de la web. La minería web o web mining comprende una serie de técnicas encaminadas a obtener inteligencia a partir de datos procedentes de la web. Aunque las técnicas utilizadas tienen su raíz en las técnicas de data mining o minería de datos, presentan características propias debido a las particularidades que presentan las páginas webs.

OPEN DATA. El Open Data es una práctica que tiene la intención de disponer de unos tipos de datos de forma libre para todo el mundo, sin restricciones de derecho de autor, patentes u otros mecanismos. Su objetivo es que estos datos puedan ser consultados, redistribuidos y reutilizados libremente por cualquiera, respetando siempre la privacidad y seguridad de la información.

PERIODISMO DE DATOS (periodismo computacional). De una forma simple y directa, se trata del periodismo que para crear artículos o investigaciones periodísticas se requiere del conocimiento de técnicas del áreas de data science, big data, inteligencia artificial, entre otras. El periodista de datos debe ser  capaz de dar soporte a sus artículos mediante el análisis de datos, utilizando técnicas analíticas como el análisis de redes sociales, clustering, information retrieval, recommendation systems, etc.

PROCESAMIENTO DEL LENGUAJE NATURAL (PLN). Del procesamiento conjunto de la ciencia computacional y la lingüística aplicada, nace el Procesamiento de Lenguaje Natural (PLN o NLP en inglés), cuyo objetivo no es otro que el de hacer posible la compresión y procesamiento asistidos por ordenador de información expresada en lenguaje humano, o lo que es lo mismo, hacer posible la comunicación entre personas y máquinas.

PRODUCT MATCHING. El Product Matching es un área perteneciente a Data Matching o Record Linkage encargada de identificar automáticamente aquellas ofertas, productos o entidades en general, que aparecen en la web procedente de diversas fuentes, aparentemente de forma distinta e independiente, pero que hacen referencia a una misma entidad real. En otras palabras, el proceso de Product Matching consiste en relacionar para distintas fuentes aquellos productos que son el mismo.