2 votos

Ajuste de puntos a la curva $g(t) = \frac{100}{1+\alpha e^{-\beta t}}$ pensando en las proyecciones y los productos internos

Esta es una reinterpretación de mi antigua pregunta Ajustar los datos a la función $g(t) = \frac{100}{1+\alpha e^{-\beta t}}$ mediante el método de los mínimos cuadrados (proyección/familias ortogonales de polinomios) . Necesito entender las cosas en términos de proyecciones ortogonales y productos internos y las respuestas eran para técnicas de regresión comunes.

t --- 0 1 2 3 4 5 6

F(t) 10 15 23 33 45 58 69

Ajustar $F$ mediante una función del tipo $$g(t) = \frac{100}{1+\alpha e^{-\beta t}}$$ por el método de mínimos cuadrados discretos

En primer lugar, no podemos trabajar con la función $g(t)$ tal y como es. La forma en que estoy tratando de ver el problema es a través de proyecciones.

Así que tratemos de transformar el problema de esta manera:

$$\frac{100}{g(t)}-1 = \alpha e^{-\beta t}\implies \ln \left(\frac{100}{g(t)}-1\right) = \ln \alpha -\beta t$$

Como queremos ajustar la función a los puntos, queremos minimizar la distancia de la función al conjunto de puntos, es decir:

$$\min_{\alpha,\beta} \left(\ln\left(\frac{100}{g(t)}-1\right)-\ln\alpha + \beta t\right)$$

Sin utilizar la derivada y equiparar las cosas a $0$ hay una manera de ver este problema como un problema de proyección ortogonal.

Sé que necesito terminar con algo así:

$$\langle \ln\left(\frac{100}{g(t)}-1\right)-\ln\alpha + \beta t, 1\rangle = 0\\ \langle \ln\left(\frac{100}{g(t)}-1\right)-\ln\alpha + \beta t, t\rangle=0$$

Y sé que esto viene del conocimiento de que nuestro mínimo está relacionado con alguna proyección y esta proyección vive en un espacio donde el producto interno con $span\{1, t\}$ (por $\ln\alpha,\beta t$ ), da $0$ .

Para terminar con

$$\begin{bmatrix} \langle 1,1\rangle & \langle t,1\rangle \\ \langle 1,t\rangle & \langle t,t\rangle \\ \end{bmatrix} \begin{bmatrix} \ln \alpha \\ -\beta \\ \end{bmatrix}= \begin{bmatrix} \langle \ln\left(\frac{100}{g(t)}-1\right) , 1\rangle \\ \langle \ln\left(\frac{100}{g(t)}-1\right) , t\rangle \\ \end{bmatrix}$$

Donde el producto interior es

$$\langle f,g\rangle = \sum f_i g_i $$

*¿Por qué?

¿Puede alguien decirme qué razonamiento me lleva a los productos internos de arriba, si he hecho todo bien y cómo terminar el ejercicio?

2voto

Yuri Negometyanov Puntos 593

$\color{brown}{\textbf{Via linear model}}$

Dejemos que $$h(t) = \ln\left(\dfrac{100}{g(t)}-1\right),\tag1$$ entonces la tabla de datos es \begin{vmatrix} i & 1 & 2 & 3 & 4 & 5 & 6 & 7\\ t_i & 0 & 1 & 2 & 3 & 4 & 5 & 6\\ g_i & 10 & 15 & 23 & 33 & 45 & 58 & 69\\ h_i & 2.197225 & 1.734631 & 1.208311 & 0.708185 & 0.200671 & -0.322773 & -0.800119\\ h(t_i) & 2.215988 & 1.711902 & 1.207816 & 0.703730 & 0.199644 & -0.304442 & -0.808528\\ g(t_i) & 9.83239 & 15.29172 & 23.00877 & 33.09858 & 45.02541 & 57.55280 & 69.17958\\ r(t_i) & 0.16761 & -0.29172 & -0.00877 & -0.09858 & -0.02541 & 0.44720 & -0.17958\\ g_1(t_i) & 9.83245 & 15.29853 & 23.02728 & 33.13320 & 45.07696 & 57.61634 & 69.2460\\ \tag2 \end{vmatrix}

La tarea consiste en estimar los parámetros de la función $h(t)$ en forma de $$h(t) = \ln\alpha + \beta_* t.\tag 3$$

El método de mínimos cuadrados proporciona la minimización de la función de discrepancia $$d_h(\alpha,\beta_*) = \sum\limits_{i=1}^7 (\ln\alpha - \beta t_i - h_i)^2\tag 4$$ como función de los parámetros $\alpha$ y $\beta.$

El mínimo de la función cuadrática se alcanza en el único punto estacionario que se puede definir a partir del sistema $(d_h)'_{ln\alpha} = (d_h)'_{\beta*}= 0,$ o \begin{cases} 2\sum\limits_{i=1}^7 (\ln\alpha + \beta* t_i - h_i) = 0\\ 2\sum\limits_{i=1}^7 (\ln\alpha \beta* t_i - h_i)T_I = 0.\tag5. \end{cases}

El sistema $(5)$ puede presentarse en forma de \begin{cases} 7\ln\alpha + a_1 \beta* = b_0\\ a_1\ln\alpha + a_2 \beta* = b_1, \end{cases} donde $$a_1 = \sum\limits_{i=1}^7 t_1 = 21,\quad a_2 = \sum\limits_{i=1}^7 t_1^2 = 91,$$ $$b_1 = \sum\limits_{i=1}^7 h_1 = 4.926100,\quad b_2 = \sum\limits_{i=1}^7 h_1 = 0.663879.$$ Los discriminantes son $$\Delta = \begin{vmatrix}7 & 21 \\ 21 & 91\end{vmatrix} = 196,$$ $$\Delta_1 = \begin{vmatrix}4.9261 & 21 \\ 0.663879 & 91\end{vmatrix} \approx 434.33364,$$ $$\Delta_2 = \begin{vmatrix} 7 & 4.926 \\ 21 &0.663879 \end{vmatrix} \approx -98.80095.$$

Entonces $$\alpha = e^{\large \frac{\Delta_1}\Delta} \approx 9.170465,\quad \beta = -\dfrac{\Delta_2}\Delta \approx 0.504086,$$ $$d_h(\alpha, \beta) \approx 0.001295,\quad d_g(\alpha, \beta)\approx 0.355863.$$

Los resultados de los cálculos, que se muestran en la tabla $(2),$ confirmar los valores de los parámetros obtenidos.

$\color{brown}{\textbf{Orthogonal projections approach}}$

El método de las proyecciones ortogonales se utiliza para resolver problemas de gran dimensión. La esencia del método para los datos de origen es que los parámetros del modelo lineal se calculan uno por uno.

Hay que restar las dependencias ya seleccionadas.

En el caso dado, los datos después de la primera etapa no tienen correlaciones esenciales. Aproximación lineal de la diferencia $r_i = g_i - g(t_i)$ en forma de $$r_i = -0.043425+0.014987 t$$ da $d_r = 0.349557$ .

$\color{brown}{\textbf{Via the gradient descent.}}$

La solución obtenida mediante el modelo lineal no es óptima para la discrepancia en la forma de $$d_g(\alpha,\beta)=\sum\limits_{i=1}^7\left(\dfrac{100}{1+\alpha e^{-\beta t_i}} - g_i\right)^2.$$

Para verificar el enfoque de las proyecciones ortogonales, se puede utilizar el método de descenso del gradiente.

Realmente, el gradiente es $$\binom uv = \left(\begin{matrix} \dfrac {\partial d_*}{\partial \alpha}\\[4pt] \dfrac{\partial d_*}{\partial \beta}\end{matrix}\right) = 200\left(\begin{matrix} -\sum\limits_{i=1}^7 \dfrac{e^{-\beta t_i}}{\left(1+\alpha e^{-\beta t_i}\right)^2} \left(\dfrac{100}{1+\alpha e^{-\beta t_i}} - g_i\right)\\[4pt] \sum\limits_{i=1}^7 \dfrac{t_ie^{-\beta t_i}}{\left(1+\alpha e^{-\beta t_i}\right)^2} \left(\dfrac{100}{1+\alpha e^{-\beta t_i}} - g_i\right) \end{matrix}\right),$$ $$\binom uv =\frac1{50}\left(\begin{matrix} \sum\limits_{i=1}^7 e^{-\beta t_i}g^2(t_i)r_i \\[4pt] -\sum\limits_{i=1}^7 t_i e^{-\beta t_i}g^2(t_i)r_i \end{matrix}\right) =\binom{0,26390}{-2.32907}\not=\binom00.$$

La optimización se consigue por la diferencia $\Delta d_r = -0.000223$ da $$\binom{\alpha_1}{\beta_1} = \binom{\alpha}{\beta} +\binom{\Delta\alpha}{\Delta\beta} = \binom\alpha\beta + \Delta d_r\binom uv\approx\binom{9,170406} {0,504605}.$$ Entonces $$d_g(\alpha_1,\beta_1) \approx 0,349343,\quad \operatorname{grad} d_g(\alpha_1,\beta_1) = \dbinom{-0,036480}{-0,081239}.$$

Los datos del cuadro $(2)$ confirman la misma precisión de estimación.

1voto

Edmund Tay Puntos 712

Regresión lineal es álgebra lineal disfrazada.

Está buscando una función $$l(t)= c_1 +c_2t$$ (donde en su caso $c_1= \ln \alpha$ y $c_2=-\beta$ ), que es una combinación lineal de funciones $v_1(t)=1$ y $v_2(t)=t$ . Su objetivo es minimizar $$e(l,h)=\sum (l(t_i)-h(t_i))^2$$ (donde en su caso $h(t)=\ln \left(\frac{100}{g(t)}-1 \right)$ ).

La fórmula de la "suma de cuadrados" sugiere el teorema/norma de Pitágoras en algún espacio vectorial. Queremos ver $e(l,h)$ como un cuadrado de la distancia sobre, por ejemplo, el vector $F$ espacio de funciones $f: \mathbb{R}\to\mathbb{R}$ que proviene del producto punto

$$<f,g>=\sum_i f(t_i) g(t_i)$$

(Recordemos que la distancia al cuadrado entre dos vectores en un espacio vectorial con producto punto es $d(u,v)^2=<u-v, u-v>$ , por lo que recuperamos $e=d^2$ del producto punto anterior).

Un pequeño problema es que en este espacio vectorial de funciones $F$ la "distancia" $d(l,h)=\sqrt{e(l,h)}$ no es realmente una distancia, ya que se desvanece en cuanto $l(t_i)=h(t_i)$ para todos $i$ (en lenguaje matemático sólo obtenemos una pseudométrica, no una métrica). Podemos ignorar esto, o utilizar la solución estándar que consiste en trabajar en el espacio cuaternario $V=F/F_0$ de funciones módulo del subespacio $F_0=\{f: \mathbb{R}\to\mathbb{R}| f(t_i)=0\}$ -- los que están a "distancia cero del origen". Esto tiene la ventaja de que $V$ es ahora un espacio vectorial de dimensión finita (de dimensión igual al número de puntos de datos), por lo que podemos estar más seguros utilizando el álgebra lineal estándar. Tenga en cuenta que $V$ tiene el producto punto $<f,g>=\sum_i f(t_i) g(t_i)$ .

En cualquier caso, ahora buscamos una función $l(t)= c_1 +c_2t$ que está más cerca de $h(t)$ en el sentido de la distancia euclidiana $d$ es decir, un punto en el subespacio abarcado por $1, t$ (en $F$ o más precisamente por sus clases de equivalencia en $V$ ). Podemos olvidarnos de toda la complicada configuración, y pensar simplemente: dado un punto $h$ y un plano atravesado por dos vectores, ¿cómo encontramos un punto $l$ en el plano más cercano a $h$ ? Por supuesto que debemos proyectar $h$ ¡en el avión! Eso es, $l$ debe ser tal que $h-l$ es ortogonal al plano, es decir, ortogonal a ambos vectores de extensión. Por lo tanto, buscamos $l=c_1+tc_2$ tal que $<h-l, 1>=0$ y $<h-l, t>=0$ (donde el producto punto sigue siendo $<f,g>=\sum_i f(t_i) g(t_i)$ ). Estas son las ecuaciones de tu pregunta.

Ahora sólo tienes que resolverlos. Para ello, introduce $l=c_1+c_2 t$ y reescribir las ecuaciones como

$<h,1>=c_1<1,1>+c_2<1,t>$

$<h,t>=c_1<1,t>+c_2<t,t>$

Se trata de un sistema lineal con 2 ecuaciones y 2 incógnitas, que puedes escribir como ecuación matricial, la que tienes en la pregunta.

Para terminar el ejercicio sólo hay que calcular todos los productos punto (por ejemplo, en tu caso $<1,1>=\sum_i 1 \cdot 1=7$ , $<1,t>=\sum_i 1 \cdot i=0+1+\ldots+6=21$ , $<t,t>=91$ , $<h, 1>=\sum_{i=0}^6 h(i)$ , $<h, t>=\sum_{i=0}^6 h(i) \cdot i$ ) y resuelva el sistema lineal de 2 por 2 por el método que desee (eliminación gaussiana, o multiplicación por $\begin{bmatrix}7&21\\21&91\end{bmatrix}^{-1}=\frac{1}{196}\begin{bmatrix}91&-21\\-21&7\end{bmatrix}$ o incluso la regla de Cramer que Yuri utilizó en otra respuesta). Obtendrás $c_1= \ln \alpha$ y $c_2=-\beta$ y, por lo tanto, puede resolver $\alpha$ y $\beta$ también.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X