¿Cuál es la diferencia entre los hiperparámetros del modelo y los parámetros del modelo?


28

He notado que términos como hiperparámetro modelo y parámetro modelo se han usado indistintamente en la web sin aclaración previa. Creo que esto es incorrecto y necesita explicación. Considere un modelo de aprendizaje automático, un clasificador basado en SVM / NN / NB o un reconocedor de imágenes, simplemente cualquier cosa que primero se le ocurra.

¿Cuáles son los hiperparámetros y parámetros del modelo?
Da tus ejemplos por favor.


3
Andrew Ng elabora la diferencia entre parámetros e hiperparámetros. coursera.org/learn/neural-networks-deep-learning/lecture/TBvb5/…
Divyanshu Shekhar

Respuestas:


27

Los hiperparámetros y parámetros a menudo se usan indistintamente, pero hay una diferencia entre ellos. Llama a algo "hiperparámetro" si no se puede aprender directamente en el estimador. Sin embargo, 'parámetros' es un término más general. Cuando dice 'pasar los parámetros al modelo', generalmente significa una combinación de hiperparámetros junto con algunos otros parámetros que no están directamente relacionados con su estimador pero que son necesarios para su modelo.

Por ejemplo, supongamos que está creando un clasificador SVM en sklearn:

from sklearn import svm
X = [[0, 0], [1, 1]]
y = [0, 1]
clf = svm.SVC(C =0.01, kernel ='rbf', random_state=33)
clf.fit(X, y) 

En el código anterior, una instancia de SVM es su estimador para su modelo para el cual los hiperparámetros, en este caso, son Cy kernel. Pero su modelo tiene otro parámetro que no es un hiperparámetro y eso es random_state.


Esta respuesta implica random_statees un parámetro. Creo que esto es engañoso, porque (ver otras respuestas); el modelo aprende un parámetro , mientras que nosotros especificamos el hiperparámetro ; como random_state=33. Pero random_statetampoco es un hiperparámetro, porque no existe el mejor valor para random_state; vea la discusión de Jason Brownlee aquí
The Red Pea

21

Además de la respuesta anterior.

Los parámetros del modelo son las propiedades de los datos de entrenamiento que el clasificador u otro modelo ml aprende durante el entrenamiento. Por ejemplo, en el caso de alguna tarea de PNL: frecuencia de palabras, longitud de la oración, nombre o distribución de verbos por oración, el número de caracteres específicos n-gramos por palabra, diversidad léxica, etc. Los parámetros del modelo difieren para cada experimento y dependen del tipo de datos y tareas a la mano.

Los hiperparámetros del modelo , por otro lado, son comunes para modelos similares y no se pueden aprender durante el entrenamiento, pero se establecen de antemano. Un conjunto típico de hiperparámetros para NN incluye el número y el tamaño de las capas ocultas, el esquema de inicialización de peso, la tasa de aprendizaje y su umbral de disminución, deserción y gradiente, etc.


7

Los hiperparámetros son aquellos que suministramos al modelo, por ejemplo: número de nodos y capas ocultos, características de entrada, velocidad de aprendizaje, función de activación, etc. en la red neuronal, mientras que los parámetros son los que la máquina aprendería como pesos y sesgos. .


5

En el aprendizaje automático, se ve un modelo con parámetros e hiperparámetros,M

YMH(Φ|D)

donde son parámetros y H son hiperparámetros. D son datos de entrenamiento e Y son datos de salida (etiquetas de clase en caso de tarea de clasificación).ΦHDY

El objetivo durante el entrenamiento es encontrar estimación de parámetros Φ que optimiza alguna función de pérdida L hemos especificado. Dado que, modelo M y la pérdida de función L se basan en H , entonces los parámetros consiguientes Φ también son dependientes de hiper-parámetros H .Φ^LMLHΦH

HMMH

MHHΦ^H

YpredΦH

Φ={μ¯,σ¯}μ¯Nσ¯NN

NH={N}NDNNΦ={μ¯,σ¯,N}

dDGMM(μ¯,σ¯)NNddμσN

ML


3

En palabras simplificadas,

Los parámetros del modelo son algo que un modelo aprende por sí solo. Por ejemplo, 1) Pesos o coeficientes de variables independientes en el modelo de regresión lineal. 2) Pesos o coeficientes de variables independientes SVM. 3) Puntos divididos en el Árbol de decisión.

Los hiperparámetros del modelo se utilizan para optimizar el rendimiento del modelo. Por ejemplo, 1) Kernel y holgura en SVM. 2) Valor de K en KNN. 3) Profundidad del árbol en árboles de decisión.


No necesariamente tienen nada que ver con la optimización de un modelo. Los hiperparámetros son solo parámetros para el proceso de construcción del modelo.
Sean Owen

0

Los parámetros del modelo se estiman a partir de los datos automáticamente y los hiperparámetros del modelo se configuran manualmente y se utilizan en procesos para ayudar a estimar los parámetros del modelo.

Los hiperparámetros del modelo a menudo se denominan parámetros porque son las partes del aprendizaje automático que deben configurarse y ajustarse manualmente.

Básicamente, los parámetros son los que utiliza el "modelo" para hacer predicciones, etc. Por ejemplo, los coeficientes de peso en un modelo de regresión lineal. Los hiperparámetros son los que ayudan con el proceso de aprendizaje. Por ejemplo, número de grupos en K-Means, factor de contracción en la regresión de cresta. No aparecerán en la predicción final, pero tienen una gran influencia en cómo se verían los parámetros después del paso de aprendizaje.

Consulte: https://machinelearningmastery.com/difference-between-a-parameter-and-a-hyperparameter/

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.