Hay tres posibilidades en las que puedo pensar;
1) su función objetivo no es lo suficientemente fluida (normalmente, se supone que las funciones objetivas tienen derivadas continuas primera y segunda en la vecindad del mínimo; esto se conoce como una función C2). Las funciones que son C1 o menos no siguen las reglas, y es completamente posible que dicha función tenga un gradiente distinto de cero como mínimo. También es posible que el gradiente no esté bien definido como mínimo. La función de valor absoluto es un ejemplo. El “gradiente” devuelto por un método numérico en la vecindad será incorrecto. Minimizar dicha función requiere un análisis cuidadoso.
2) el vecindario alrededor del mínimo es C2, pero el vecindario pequeño es más pequeño que el tamaño de su paso y / o tiene límites de formas extrañas. Esto llevaría a que la función tenga un mínimo bien definido, pero el optimizador numérico no podrá encontrarlo.
- ¿Cómo impacta la alta dimensionalidad en la efectividad del modelo?
- Al entrenar y probar conjuntos de datos, ¿es posible probar un conjunto de datos completamente diferente del conjunto de entrenamiento?
- Cómo calcular la similitud de coseno entre tweets
- ¿Cuál es el mejor argumento en contra de no saber cómo usar una computadora porque él o ella no crecieron con ella?
- ¿Cómo se usa el aprendizaje automático en la ciencia de los materiales?
3) Has cometido un error en alguna parte. El gradiente en un mínimo o máximo local de cualquier función C2 debe tener magnitud cero. Probar esto es bastante sencillo.
NOTA: los optimizadores numéricos generalmente no encontrarán exactamente un mínimo. Terminarán en una ubicación cercana al mínimo, pero el gradiente será de hecho pequeño pero distinto de cero. Asegúrese de haber elegido correctamente sus condiciones de parada.