Aprendizaje automático

From FdIwiki ELP
Jump to: navigation, search
Aprendizaje Automático

El aprendizaje automático es una disciplina científica del ámbito de la Inteligencia Artificial que crea sistemas que aprenden automáticamente. El aprendizaje automático se centra en el desarrollo de programas informáticos que pueden cambiar cuando se exponen a nuevos datos. Es, por lo tanto, un proceso de inducción del conocimiento.

Tipos de algoritmos

DiagramaMachineLearning.png

Los algoritmos de Aprendizaje Automático o, Machine Learning, se agrupan segun el tipo de datos de salida. Algunos tipos de algoritmos son:

Aprendizaje supervisado

Los algoritmos de aprendizaje supervisados hacen predicciones basadas en un conjunto de ejemplos. El algoritmo realiza una función que establece correspondencias entre las entradas y las salidas deseadas del sistema. Este algoritmo se utiliza para analizar los datos de entrenamiento para entrenar la función que asigna la entrada a la salida. Esta función inferida mapea nuevos ejemplos desconocidos generalizando desde los datos de entrenamiento para anticipar resultados no vistos anteriormente.

  • Clasificación: Se denomina así cuando los datos se utilizan para predecir una variable categórica.
  • Regresión: Cuando buscamos predecir valores continuos, los problemas se vuelven en un problema de regresión.
  • Pronóstico: Este algoritmo hace pronósticos sobre el futuro basado en datos pasados y presentes. Se usa para analizar tendencias.

Aprendizaje no supervisado

Al realizar el aprendizaje no supervisado, a la máquina se le entregan datos totalmente sin etiquetas. En este caso, el sistema debe ser capaz de reconocer patrones para poder etiquetar a las nuevas entradas.

  • Agrupación: Se agrupa en conjuntos de ejemplos de datos para que los ejemplos en un grupo sean más similares que los de otros.
  • Deducción de dimensiones: Se reduce el número de variables a considerar. A veces, los datos en bruto tienen características dimensionales muy altas y algunas características son redundantes o irrelevantes para la tarea. Si reducimos la dimensión nos ayudará a encontrar la verdadera relación latente.

Aprendizaje semi-supervisado

Este algoritmo se basa en una combinación de los dos anteriores mencionados (supervisado y no supervisado). Si las etiquetas son limitadas, puede utilizar ejemplos no etiquetados para mejorar el aprendizaje supervisado. Con este algoritmo, el aprendizaje utiliza ejemplos sin etiquetar y una pequeña cantidad de ejemplos etiquetados para obtener una mayor precisión.

Aprendizaje reforzado (o por refuerzo)

Este aprendizaje permite analizar y optimizar el comportamiento de cierto agente basado en la retroalimentación del entorno. El sistema aprende mediante un esquema de ensayo-error.

Aprendizaje profundo (Deep Learning)

Dentro del auto aprendizaje automático (machine learning) encontramos una rama que se conoce como aprendizaje profundo (Deep learning)

El aprendizaje profundo se basa en la idea de recrear el funcionamiento de un cerebro, para ello utiliza redes neuronales con un alto número de capas. (Las redes neuronales, como su propio nombre indica son redes formadas por nodos, cada nodo es como si fuera una neurona que se encarga de procesar cierta información. Las neuronas se organizan en capas, comunicadas todas con todas, en este caso tenemos un alto número de capas entre la primera y la última) Al funcionar como un cerebro, la primera capa se encarga de recoger todos los datos disponibles, análogamente sería la función que hacen nuestros sentidos, por ejemplo. Las capas internas se encargan de procesar la información por partes, por lo que son más rápidas y eficientes, análogamente es lo que hacen las neuronas de nuestro cerebro. Por último, la última capa se encarga de recoger todos los datos procesados y dar un resultado final, análogamente sería el olor que percibimos tras estar en cierto lugar con partículas en suspensión.

Todas esas capas internas están formadas por neuronas que son expertas en ciertos temas, es decir, cada una de ellas es capaz de procesar cierta información y sólo esa información. Es por esto por lo que son capaces de cooperar de una forma tan buena entre sí, porque todas tienen lo que les falta a las demás. Se trata por tanto de autoaprendizaje no supervisado, es decir no son entrenadas a partir de ejemplos concretos, sino que son capaces de sacar patrones a partir de los datos que tienen.

El utilizar redes neuronales hace que el procesamiento de los datos sea no lineal, a diferencia de cómo se hacía tradicionalmente. Aunque forma parte del autoaprendizaje automático, en ocasiones se combina con éste para obtener mejores resultados. Un claro ejemplo de caso de uso es la detección de fraude bancario. El aprendizaje profundo es usado en la mayoría de industrias para tareas muy diferentes, desde reconocimiento facial hasta proyectos de investigación que tratan de reutilizar medicamentos como nuevos alimentos.

Ámbitos de aplicación

Sectores como el de las compras online o los filtros anti-spam llevan tiempo sacando partido a estas tecnologías.

La aplicación práctica del Machine learning depende muchos de los datos de los que se disponga y sobre los que se quiera aplicar esta técnica. Estos son algunos ejemplos más:

  • Detectar fraude en transacciones.
  • Predecir fallos en equipos tecnológicos.
  • Predecir el tráfico urbano.
  • Hacer prediagnósticos médicos basados en síntomas del paciente.
  • Decidir cual es la mejor hora para llamar a un cliente en concreto.