View in NBViewer Open in binder Download notebook View source


4.1. Mínimos quadrados e o ajuste de parâmetros

Ajuste de parâmetros

Exemplo: Reta passando por dois pontos

\[ (y - 1) = 3(x - 2). \] \[ y = 3x - 5. \]

ajuste reta a dois pontos

\[ \begin{cases} b + 2m = 1, \\ b + 3m = 4. \end{cases} \] \[ \left[ \begin{matrix} 1 & 2 \\ 1 & 3 \end{matrix}\right] \left( \begin{matrix} m \\ b \end{matrix} \right) = \left( \begin{matrix} 1 \\ 4 \end{matrix} \right). \] \[ \begin{cases} b + 2m = 1, \\ b + 3m = 4. \end{cases} \]

usando uma equação pra escrever \(b\) em função de \(m\) e sem seguida resolvendo a outra equação para \(m\).

\[ \left( \begin{matrix} b \\ m \end{matrix} \right) = \left[ \begin{matrix} 1 & 2 \\ 1 & 3 \end{matrix}\right]^{-1} \left( \begin{matrix} 1 \\ 4 \end{matrix} \right) = \left[ \begin{matrix} 3 & -2 \\ -1 & 1 \end{matrix}\right] \left( \begin{matrix} 1 \\ 4 \end{matrix} \right) = \left( \begin{matrix} -5 \\ 3 \end{matrix} \right). \]

Observações

Exemplo: Retas passando por um único ponto

\[ m + b = 2 \] \[ m = 0 \text{ e } b = 2 \quad \Longrightarrow \quad \text{Modelo: } y = 2 \] \[ m = 2 \text{ e } b = 0 \quad \Longrightarrow \quad \text{Modelo: } y = x \]

ajuste reta a um pontos

\[ m = 1 \text{ e } b = 1 \quad \Longrightarrow \quad \text{Modelo: } y = x + 1 \]

Exemplo: ajustando uma reta a mais de dois pontos não colineares

ajuste reta a três pontos

\[ \begin{cases} b + m = 2, \\ b + 2m = 1, \\ b + 3m = 4. \end{cases} \] \[ \left[ \begin{matrix} 1 & 1 \\ 1 & 2 \\ 1 & 3 \end{matrix}\right] \left( \begin{matrix} m \\ b \end{matrix} \right) = \left( \begin{matrix} 2 \\ 1 \\ 4 \end{matrix} \right). \]

Mínimos quadrados

\[ r_i = y_i - \hat y_i. \] \[ |r_i| = |y_i - \hat y_i| \] \[ E = \sum_{i=1}^N |y_i - \hat y_i|^2, \]

onde \(N=3\), nesse caso (três pontos).

\[ \operatorname{argmin}_{m,b\in \mathbb{R}} \sum_{i=1}^N |y_i - \hat y_i|^2. \] \[ E(m,b) = \sum_{i=1}^N |y_i - \hat y_i|^2 = \sum_{i=1}^N |y_i - mx_i - b|^2 \] \[ \nabla E(m,b) = (0,0). \] \[ \frac{\partial E}{\partial m} = -2\sum_i (y_i - mx_i - b)x_i = 2(\sum_i x_i^2)m + 2(\sum_i x_i)b -2\sum_i x_iy_i, \] \[ \frac{\partial E}{\partial b} = -2\sum_i (y_i - mx_i - b) = 2(\sum_i x_i)m + 2(\sum_i 1)b - 2\sum_i y_i. \] \[ \left[ \begin{matrix} \sum_i x_i & \sum_i x_i^2 \\ \sum_i 1 & \sum_i x_i\end{matrix} \right] \left(\begin{matrix} b \\ m \end{matrix}\right) = \left(\begin{matrix} \sum_i x_iy_i \\ \sum_i y_i \end{matrix}\right). \] \[ \left[ \begin{matrix} 1 & \ldots & 1 \\ x_1 & \ldots & x_N \end{matrix} \right] \left[ \begin{matrix} 1 & x_1 \\ \vdots & \vdots \\ 1 & x_n \end{matrix} \right] \left(\begin{matrix} b \\ m \end{matrix}\right) = \left[ \begin{matrix} 1 & \ldots & 1 \\ x_1 & \ldots & x_N \end{matrix} \right] \left(\begin{matrix} y_1 \\ \vdots \\ y_N \end{matrix}\right). \] \[\left[ \begin{matrix} 1 & \ldots & 1 \\ x_1 & \ldots & x_N \end{matrix} \right] = \left[ \begin{matrix} 1 & x_1 \\ \vdots & \vdots \\ 1 & x_n \end{matrix} \right]^t \] \[ \operatorname{argmin}_{m,b\in \mathbb{R}} \sum_{i=1}^N |y_i - mx_i - b|^2. \] \[ \left\|\left(\begin{matrix} y_1 - b - mx_1\\ \vdots \\ y_N - b - m x_N\end{matrix}\right)\right\|^2 = \left\|\left(\begin{matrix} y_1 \\ \vdots \\ y_N \end{matrix}\right) - b \left(\begin{matrix} 1 \\ \vdots \\ 1 \end{matrix}\right) - m \left(\begin{matrix} x_1 \\ \vdots \\ x_N \end{matrix}\right)\right\|^2 = \left\|\left(\begin{matrix} y_1 \\ \vdots \\ y_N \end{matrix}\right) - \left[\begin{matrix} 1 & x_1 \\ \vdots & \vdots \\ 1 & x_N \end{matrix}\right]\left(\begin{matrix} b \\ m \end{matrix}\right)\right\|^2. \] \[ A = \left[\begin{matrix} 1 & x_1 \\ \vdots & \vdots \\ 1 & x_N \end{matrix}\right], \quad \boldsymbol{\beta} = \left(\begin{matrix} b \\ m \end{matrix}\right), \quad \mathbf{y} = \left(\begin{matrix} y_1 \\ \vdots \\ y_N \end{matrix}\right). \] \[ \nabla E(\boldsymbol{\beta})\cdot \boldsymbol{\alpha} = -2(\mathbf{y} - A\boldsymbol{\beta})\cdot (A\boldsymbol{\alpha}). \] \[ \nabla E(\boldsymbol{\beta})\cdot \boldsymbol{\alpha} = - 2(A^t(\mathbf{y} - A\boldsymbol{\beta}))\cdot \boldsymbol{\alpha}. \] \[ \nabla E(\boldsymbol{\beta}) = - 2A^t(\mathbf{y} - A\boldsymbol{\beta}). \] \[ A^tA\boldsymbol{\beta} = A^t\mathbf{y}. \]

Ajustando polinômios de ordem mais alta

\[ y = \beta_0 + \beta_1x + \beta_2 x^2 + \ldots + \beta_m x^m. \] \[ y_i - \beta_0 - \beta_1x_i - \beta_2 x_i^2 - \ldots - \beta_m x_i^m. \] \[ \left\|\left(\begin{matrix} y_1 \\ \vdots \\ y_N \end{matrix}\right) - \left[\begin{matrix} 1 & x_1 & \ldots & x_1^m \\ \vdots & \vdots & \cdots & \vdots \\ 1 & x_N & \ldots & x_N^m \end{matrix}\right]\left(\begin{matrix} \beta_0 \\ \ldots \\ \beta_m \end{matrix}\right)\right\|^2. \] \[ \boldsymbol{\beta} = \left( \begin{matrix} \beta_0 \\ \vdots \\ \beta_m \end{matrix} \right). \] \[ A = \left[\begin{matrix} 1 & x_1 & \ldots & x_1^m \\ \vdots & \vdots & \cdots & \vdots \\ 1 & x_N & \ldots & x_N^m \end{matrix}\right] \] \[ A^tA\boldsymbol{\beta} = A^t\mathbf{y}. \] \[ A^tA = \left[\begin{matrix} 1 & 1 & \ldots & 1 \\ x_1 & x_2 & \ldots & x_N \\ \vdots & \vdots & \cdots & \vdots \\ x_1^m & x_N^m & \ldots & x_N^m \end{matrix}\right] \left[\begin{matrix} 1 & x_1 & \ldots & x_1^m \\ \vdots & \vdots & \cdots & \vdots \\ 1 & x_N & \ldots & x_N^m \end{matrix}\right] \] \[ \boldsymbol{\beta} = (A^tA)^{-1}A^t\mathbf{y}. \]

Invertibilidade da matriz \(A^tA\)

\[ \text{se} \quad A^t\boldsymbol{\alpha} = 0 \quad \text{e} \quad \boldsymbol{\gamma} = A\boldsymbol{\beta}, \]

então

\[ \boldsymbol{\alpha} \cdot \boldsymbol{\gamma} = \boldsymbol{\alpha} \cdot A\boldsymbol{\beta} = A^t\boldsymbol{\alpha} \cdot \boldsymbol{\beta} = \mathbf{0} \cdot \boldsymbol{\beta} = \mathbf{0}. \] \[ \textrm{Núcleo de } A^tA = \textrm{Núcleo de } A. \] \[ \mathrm{posto}(A) \leq N
  • Em segundo lugar, quando \(N \geq m\), precisamos que as amostras sejam obtidas em pelo menos \(m\) abscissas distintas \(x_i\).

  • De fato, com \(m\) abscissas distintas, podemos reordenar as linhas de \(A\) para que as abscissas distintas sejam \(x_1, \dots, x_m\).

  • Em seguida, olhamos para as primeiras \(m\) linhas da matriz \(A\), que vamos chamar de \(A_m\):

  • \[ A = \left[\begin{matrix} 1 & x_1 & \ldots & x_1^m \\ \vdots & \vdots & \cdots & \vdots \\ 1 & x_m & \ldots & x_m^m \end{matrix}\right]. \]
    • \(A_m\) é uma matriz quadrada \(m\times m\).

    • \(A_m\) nada mais é do que composição de \(A\) com a projeção \(P_m\) de \(\mathbb{R}^N= \mathbb{R}^m \times \mathbb{R}^{N-m}\), nas \(m\) primeiras coordenadas \(\mathbb{R}^m\).

    • Assim, se \(A_m\) for invertível, então \(A_m=P_mA\) tem posto \(m\), logo \(A\) também o tem.

    • \(A_m\) é uma matriz de Vandermonde e o seu determinante é dado por

    \[ \det A_m = \prod_{j>i} (x_j-x_i). \]
    • Há várias demontrações disso, veja em Vandermonde matrix, mas a mais básica, feita por indução na dimensão \(m\), não está lá.

    • De qualquer forma, observe que esse determinante é não-nulo se, e somente se, todos os \(x_i\)'s, para \(i=1, \ldots, m\), são distintos.

    • Isso é exatamente a nossa hipótese de que pelo menos \(m\) dados são obtidos em abscissas distantes.

    • Assim, sendo o determinante não-nulo, a matriz \(A_m\) é invertível e \(A\) tem posto \(m\), como queríamos.

    Outros modelos

    • O modelo não precisa ser um polinômio, nem ser de um única variável, para ser tratado como feito acima.

    • Pode ser, por exemplo, qualquer função da forma

    \[ y = \beta_0 f_0(x) + \beta_1 f_1(x) + \ldots + \beta_m f_m(x) \]
    • Nesse caso,

    \[ A = \left[\begin{matrix} f_0(x_1) & f_1(x_1) & \ldots & f_m(x_1) \\ \vdots & \vdots & \cdots & \vdots \\ f_0(x_N) & f_1(x_N) & \ldots & f_m(x_N) \end{matrix}\right] \]
    • Ou, em duas variáveis,

    \[ y = \beta_0 + \beta_{1,0}x_1 + \beta_{0,1}x_2 + \beta_{1,1}x_1x_2 + \ldots + \beta_{m_1, m_2}x_1^{m_1}x_2^{m_2} \]
    • Ou, em várias variáveis

    \[ y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \ldots + \beta_k x_k. \]
    • Ou, analogamente, em mais de duas variáveis e com termos não necessariamente polinomiais.

    • O que é importante é que o modelo seja linear nos parâmetros \(\boldsymbol{\beta}\). Assim, a forma da matriz \(A\) pode mudar, mas o problema de mínimos quadrados continua sendo resolvido por

    \[ A^tA\boldsymbol{\beta} = A^t\mathbf{y}. \]
    • A questão da invertibilidade de \(A^tA\) vai depender, analogamente, da separação dos valores correspondentes dos termos associados aos parâmetros. (Pense isso!)

    Exercícios

    1. Mostre que \((m,b) = (1,1)\) é a solução de \(m + b = 2\) que minimiza \(m^2 + b^2\).

    2. Mostre que \((m,b) = (2,0)\) é a solução de \(m + b = 2\) que minimiza \(\epsilon|m| + |b|\) para \(0<\epsilon<1\). O que acontece no caso \(\epsilon=1\)? E quando \(\epsilon>1\)? E se objetivo for minimizar \(\max\{|m|,|b|\}\)? Ou minimizar \(\operatorname{sgn}|m|+\operatorname{sgn}|b|\) (onde \(\operatorname{sign}(r) = 0\), se \(r=0\), ou \(r/|r|\), se \(r\neq 0\))?

    3. Em qual das abscissas \(x=1, \ldots, 5\) temos o resíduo com o maior erro no caso em que o modelo é \(\hat y= 5x + x^2\) e a amostra é dada pelos pontos \((x,y) = (1, 2)\), \((2, 3)\), \((3, 4)\), \((4, 3)\) e \((5, 2)\)?

    4. O que acontece se quisermos ajustar uma parábola \(y=ax + bx^2 + c\) aos dados \((1,1)\), \((1,3)\) e \((2,2)\)?

    5. Se quisermos ajustar um modelo \(y=\beta_0 + \beta_1\sin(x) + \beta_2\cos(x)\) a dados \((x_1,y_1)\), \((x_2,y_2)\), \((x_3,y_3)\), qual a condição em \(x_1, x_2, x_3\) que garante que existe um, e somente um, conjunto de parâmetros \(\boldsymbol{\beta}=(\beta_0, \beta_1, \beta_2)\) que melhor ajusta o modelo no sentido dos mínimos quadrados?