Metatérminos

    Hiperparámetro

    Al hablar de aprendizaje automático, los hiperparámetros son los ajustes que definimos para controlar el proceso de entrenamiento de un modelo. Mientras que los parámetros del modelo se aprenden automáticamente durante el proceso de entrenamiento (como los coeficientes en una regresión lineal), los hiperparámetros son configuraciones que deben preestablecerse antes de iniciar el entrenamiento del modelo.

    Estos hiperparámetros afectan directamente la capacidad del modelo para aprender de los datos y generalizar a nuevos conjuntos de datos. Algunos ejemplos comunes de hiperparámetros son la tasa de aprendizaje en algoritmos de optimización y la profundidad máxima de un árbol de decisión, entre otros.

    Si se eligen correctamente los hiperparámetros, el modelo tendrá mejor rendimiento, mientras que una selección incorrecta resultará en un modelo que no se ajuste bien a los datos o que tenga un rendimiento deficiente en datos no vistos. En la práctica, encontrar los mejores valores para los hiperparámetros requiere de experiencia y unas pruebas de experimentación para irlos refinando con el tiempo.

    Diferencia entre parámetro e hiperparámetro

    Es muy común confundir los parámetros con los hiperparámetros, pero en realidad son dos componentes del machine learning con funciones muy distintas. Los parámetros en el aprendizaje automático son variables internas del modelo que se ajustan automáticamente durante el entrenamiento para que el modelo pueda realizar la tarea para la que ha sido diseñado.

    Por su parte, los hiperparámetros son valores externos al modelo que se establecen antes del entrenamiento y afectan la forma en que el modelo aprende de los datos, controlando aspectos del proceso de entrenamiento como la velocidad de aprendizaje, la complejidad del modelo o el número de iteraciones.

    Dicho de forma sencilla, el algoritmo recurre a las reglas que dictan los hiperparámetros para aprender de una forma determinada basándose en los parámetros.

    Ejemplos de hiperparámetros

    Algunos ejemplos de hiperparámetros muy utilizados son:

    • Tasa de aprendizaje: Determina la velocidad a la que el modelo aprende de los datos. Una tasa alta permitiría al modelo aprender de los datos con rapidez, pero podría resultar inestable y tener un mayor margen de error; una tasa baja es más estable, pero el proceso de aprendizaje podría ralentizarse demasiado.
    • Número de iteraciones: Define cuántas veces el modelo ve todos los datos durante el entrenamiento. Más iteraciones equivalen a un aprendizaje de mejor calidad, pero demasiadas llevarían a un overfitting o sobreajuste, esto es, que el modelo aprenda demasiado sobre un conjunto de datos en concreto y que se muestre incapaz de generalizar su aprendizaje a otros datos diferentes.
    • Tamaño del lote: Cuántos ejemplos de datos se usan a la vez para entrenar el modelo. Si los conjuntos de datos que maneje el modelo son grandes, aprenderá más rápidamente y de una fuente con información más variada y rica. Por otra parte, un conjunto pequeño de datos hacen que el modelo obtenga conocimientos más precisos.
    • Número de capas y neuronas: Estos hiperparámetros definen la arquitectura de una red neuronal. El número de capas y neuronas determina la complejidad y la capacidad de representación del modelo. A mayor número de capas y neuronas, más complejos serán los patrones que podrá aprender el modelo, pero también pueden aumentar el riesgo de sobreajuste si el modelo es demasiado complejo para los datos disponibles.
    • Número de ramas: En un árbol de decisión, cada nodo representa una pregunta sobre una característica de los datos y cada rama representa una posible respuesta a esa pregunta. Este hiperparámetro controla la profundidad máxima del árbol y, por lo tanto, cuántas divisiones se permiten antes de que el árbol llegue a las hojas, que son las predicciones finales. Un árbol de decisión con muchas ramas aprende patrones más complejos en los datos, pero también corre el riesgo de overffiting. Por otro lado, un árbol con pocas ramas es más sencillo y adaptable a otros datos, pero puede ser más impreciso y obviar patrones esenciales.