• Entender las diferentes etapas del aprendizaje máquina
• Aprender a utilizar las herramientas en la preparación de datos para el aprendizaje máquina en problemas reales
1.1. Introducción
A fin de responder «¿qué es el aprendizaje máquina?», es necesario partir de la siguiente definición dada por Bostjan Kaluza (2016) [1]:
El aprendizaje máquina es un subcampo de la inteligencia artificial. Este ayuda a los ordenadores a aprender y actuar como seres humanos con la ayuda de algoritmos y datos. Dado un conjunto de datos, un algoritmo de aprendizaje máquina aprende diferentes propiedades de los datos e infiere las propiedades de los datos que se pueden presentar en el futuro.
A partir de la definición anterior, se puede inferir que el objetivo del aprendizaje máquina es desarrollar sistemas que permitan a los ordenadores aprender y generalizar comportamientos. En la actualidad, el aprendizaje máquina se aplica en diversas áreas: en medicina, como auxiliar en el diagnóstico de diversas patologías y como clasificador de secuencias de ADN; en sistemas financieros, analizando el mercado de valores y detectando fraudes en el uso de tarjetas de crédito; o en informática, aplicado en sistemas de reconocimiento de habla y lenguaje escrito, entre otras.
Existen conceptos clave en el aprendizaje máquina que sientan las bases para comprender este campo. Estos pueden dividirse en dos áreas sustanciales: los conceptos sobre datos y los conceptos sobre aprendizaje. Los conceptos sobre datos otorgan la nomenclatura apropiada para describir los datos y sus conjuntos. Los conceptos sobre aprendizaje describen el aprendizaje obtenido a partir de los datos.
1.2. Conceptos sobre datos
Como se mencionó anteriormente, los métodos de aprendizaje máquina aprenden a partir de los ejemplos. Resulta importante tener una buena comprensión de los datos de entrada y la variada terminología utilizada al describir los datos. Los datos pueden estructurarse en filas y columnas, como una tabla de base de datos o como una hoja de cálculo. Estos son conocidos como «estructura tradicional de datos», y son comunes en el campo del aprendizaje máquina.
Los conceptos básicos para datos del aprendizaje máquina se definen a continuación:
Observación: es la entidad más pequeña, con propiedades de interés para un estudio que puede ser registrado.
Características: son las propiedades o atributos de las observaciones que pueden ser útiles para el aprendizaje.
Tipo de datos: las características tienen un tipo de datos. Estos pueden ser de valor real o entero, o pueden tener un valor categórico u ordinal.
Conjuntos de datos: una colección de observaciones es un conjunto de datos y, cuando se trabaja con métodos de aprendizaje máquina, generalmente se requieren algunos conjuntos de datos para diferentes propósitos.
Datos de entrenamiento: conforman un conjunto de datos que se incorpora al algoritmo de aprendizaje máquina para entrenar al modelo.
Datos de prueba: constituyen un conjunto de datos utilizado para validar la precisión del modelo, pero que no se emplea para entrenar al modelo. Se lo conoce también como «conjunto de datos de validación».
Además de los datos mencionados con anterioridad, existen otros, como imágenes, vídeos y texto. Estos son llamados «datos no estructurados», para poder ser aplicados a métodos de aprendizaje máquina, los cuales deben ser transformados a una forma estructurada de datos. Los datos no estructurados no se consideran en este libro.
1.3. Conceptos sobre aprendizaje
En este apartado, se consideran algunos conceptos de alto nivel sobre el aprendizaje. El aprendizaje máquina se apoya/basa en el aprendizaje con algoritmos. Los conceptos básicos sobre aprendizaje se definen a continuación:
Inducción: los algoritmos de aprendizaje máquina aprenden a través de un proceso llamado «inducción del aprendizaje». Este es un proceso de razonamiento donde se realiza un modelo de la información (datos de entrenamiento).
Generalización: el objetivo de la generalización reside en encontrar el patrón o modelo más significativo para las instancias del entrenamiento. A partir de este modelo, se realizan predicciones o decisiones.
Sobreentrenamiento: se conoce como sobreentrenamiento al hecho de que un modelo aprenda los datos de entrenamiento de una manera tan precisa o exacta que pierda la capacidad de generalizar. El resultado es un bajo rendimiento en datos que no sean del conjunto de entrenamiento.
Subentrenamiento: se refiere a cuando un modelo no ha aprendido suficientemente la estructura de la base de datos, debido a que el proceso de aprendizaje finalizó de forma temprana o inesperada. El resultado que otorga el subentrenamiento resulta bueno en términos de generalización, pero su rendimiento es deficiente en la mayoría de los datos, incluido el conjunto de datos de entrenamiento.
Aprendizaje en línea: el aprendizaje en línea se lleva a cabo cuando un método de aprendizaje máquina se alimenta con observaciones de datos del tema en cuestión, a medida que estén disponibles. El aprendizaje en línea requiere métodos que sean robustos para los datos ruidosos, pero también puede producir modelos que sean más afines con el estado actual del conjunto de datos del tema en cuestión.
Aprendizaje fuera de línea: el aprendizaje fuera de línea se produce cuando el método se alimenta con datos preparados previamente, que, luego, se utilizan de manera operacional en datos no observados. El proceso de entrenamiento puede controlarse y puede ajustarse de forma cuidadosa, porque el alcance de los datos de entrenamiento es conocido [2].
Una vez definidos los conceptos básicos, tanto para los datos como para el aprendizaje, se puede pasar a conocer los tipos de problemas existentes dentro del entorno del aprendizaje máquina, así como los tipos de datos y tipos de aprendizaje utilizados en el desarrollo de los algoritmos del aprendizaje máquina.
1.4. Tipos de problemas
Existen varias clases comunes de problemas en el aprendizaje máquina. Las clases de problemas que se mencionan a continuación son arquetipos para la mayoría de los problemas, a los que nos referimos cuando el aprendizaje máquina es implementado:
Clasificación: se produce cuando los datos tienen una etiqueta, lo que significa que se les asignó una clase; por ejemplo, fraude/no fraude. La decisión que se modela consiste en asignar etiquetas a nuevos datos no etiquetados. Esto puede ser considerado como un problema al generar un discriminante y modelar las diferencias o similitudes entre grupos [3].
Regresión: los datos se encuentran etiquetados con un valor real en lugar de una etiqueta. Los ejemplos, fáciles de entender, son datos de series de tiempo, como el precio de un producto y sus variaciones, dentro de una ventana de tiempo. La decisión que se modela es la relación entre entradas y salidas.
Agrupamiento: en el agrupamiento, los datos no están etiquetados, pero se pueden dividir en grupos según la similitud y otras medidas de estructura natural en los datos. Un claro ejemplo reside en la segmentación de clientes en grupos con datos demográficos similares.
Extracción de reglas: en este tipo de problema, los datos se utilizan como base para la extracción de reglas proposicionales (antecedente/consecuente o si/entonces). Normalmente, estas reglas no están dirigidas, lo que significa que, con los métodos, se descubren relaciones estadísticamente