Estoy de acuerdo con Glen_b. En problemas de regresión, el foco principal está en los parámetros y no en la variable independiente o predictor, x. Y luego uno puede decidir si quiere linealizar el problema empleando transformaciones simples o proceder como tal.
Problemas lineales: cuente el número de parámetros en su problema y verifique si todos tienen potencia 1. Por ejemplo, . Esta función es no lineal en . Pero para problemas de regresión, la no linealidad en no es un problema. Uno tiene que verificar si los parámetros son lineales o lineales. En este caso, , , , .. todos tienen potencia 1. Entonces, son lineales.y= a x + b x2+ c x3+ dX2 / 3+ e / x + fX- 4 / 7XXunbcf
¡Observe que, en , aunque parece que tiene potencia 1, pero cuando se expande
. Puede ver claramente que es un parámetro no lineal ya que a tiene un poder superior a 1. Pero, este problema puede linealizarse invocando una transformación logarítmica. Es decir, un problema de regresión no lineal se convierte en un problema de regresión lineal.y=exp(ax)exp(ax)=1+ax/1!+(ax)2/2!+…
Del mismo modo, es una función logística. Tiene tres parámetros, a saber, , y . Los parámetros y tiene potencia más que 1, y cuando se expande se multiplican con cada otros traen no linealidad. Por lo tanto, no son lineales. Pero, también se pueden linealizar usando una sustitución adecuada estableciendo primero y luego invocando una función logarítmica en ambos lados para linealizar.y=a/(1+bexp(cx)abcbc(a/y)−1=Y
Ahora suponga que . Esto es una vez más no lineal con respecto a los parámetros. Pero no se puede linealizar. Uno necesita usar una regresión no lineal.y=a1/(1+b1exp(c1x))+a2/(1+b2exp(c2x))
En principio, usar una estrategia lineal para resolver un problema de regresión no lineal no es una buena idea. Entonces, aborde problemas lineales (cuando todos los parámetros tienen potencia 1) usando regresión lineal y adopte una regresión no lineal si sus parámetros son no lineales.
En su caso, sustituya la función de ponderación en la función principal. El parámetro sería el único parámetro con potencia 1. Todos los demás parámetros son no lineales ( eventualmente se multiplica con y (estos dos son parámetros no lineales) por lo que también es no lineal. Por lo tanto, es un problema de regresión no lineal .β 1 θ 1 θ 2β0β1θ1θ2
Adopta una técnica de mínimos cuadrados no lineales para resolverlo. Elija los valores iniciales de forma inteligente y utilice un enfoque de varios pasos para encontrar los mínimos globales.
Este video será útil (aunque no habla de una solución global): http://www.youtube.com/watch?v=3Fd4ukzkxps
Usando el solucionador no lineal GRG en la hoja de cálculo de Excel (instale el paquete de herramientas del solucionador yendo a opciones - Complementos - Complementos de Excel y luego eligiendo Complemento Solver) e invocando el inicio múltiple en la lista de opciones prescribiendo intervalos a los parámetros y exigiendo Como la precisión de la restricción y la convergencia son pequeñas, se puede obtener una solución global.
Si está usando Matlab, use la caja de herramientas de optimización global. Tiene opciones de búsqueda múltiple y de búsqueda global. Ciertos códigos están disponibles aquí para una solución global, aquí
y
aquí .
Si está usando Mathematica, mire aquí .
Si está utilizando R, intente aquí .