線形モデルのフィット¶
線形モデル¶
\[\begin{split}y &= f(x; p_{0}, p_{1}, \cdots, p_{n}) = f(x; \vec{p}) \\
&= p_{0} + p_{1}x + p_{2}x^{2} + \cdots + p_{n}x^{n} \\
&= \sum_{k=0}^{n}p_{k}x^{k}\end{split}\]
与えられたデータ \((x_{1}, y_{1}), \cdots, (x_{M}, y_{M})\) に対して、
\[\begin{split}\chi^{2}(\vec{p}) &= \sum_{i=1}^{M}\frac{\left(y_{i} - f(x_{i}; \vec{p})\right)^{2}}{\sigma_{i}^{2}} \\
&= \sum_{i=1}^{M}\frac{\left(y_{i} - \sum_{k=0}^{M}p_{k}x^{k}\right)^{2}}{\sigma_{i}^{2}} \\\end{split}\]
\(\chi^{2}(\vec{p})\) を最小化する条件はパラメータに関する偏微分係数がゼロになることを要求して次のようになる。
\[\frac{\partial\chi^{2}}{\partial p_{k}} =
-2\sum_{i}^{M}x_{i}^{k}\frac{\left(y_{i}-\sum_{l=0}^{M}p_{l}x_{i}^{l}\right)}{\sigma_{i}^{2}} = 0\]
整理すると、
\[\begin{split}\sum_{l=0}^{M}\sum_{i}^{M}\frac{x_{i}^{k}x_{i}^{l}}{\sigma_{i}^{2}}p_{l} &=
\sum_{i}^{M}\frac{x_{i}^{k}y_{i}}{\sigma_{i}^{2}} \\
M\vec{p} &= \vec{b}\end{split}\]
行列 \(M\) とベクトル \(\vec{b}\) は以下の式で与えられる。
\[\begin{split}M_{kl} &= \sum_{i}^{M}\frac{x_{i}^{k}x_{i}^{l}}{\sigma_{i}^{2}} \\
b_{k} &= \sum_{i}^{M}\frac{x_{i}^{k}y_{i}}{\sigma_{i}^{2}}\end{split}\]
行列 \(M\) の逆行列を求めて、パラメータは以下のように決定できる。
\[p_{k} = \left(M^{-1}\right)_{kl}b_{l}\]