モデルの概要 では数直線上の[0,10]をざっくり分割することだけ考えていました。この章では、領域[s(start),e(end)]をN分割することを考えます。
モデルの概要 を参考に新たにモデルを以下のように定義します。
\begin{eqnarray}
X = (e - s) T \cdot \frac{D}{\lvert D \rvert} + s
\end{eqnarray}
\(\lvert D \rvert\) は \(d1 + d2 + d3 + ... + dN\) です。 \(D\) をこれで割り算することで[0, 1]の範囲の値をとるように正規化しています。それを \(e -s\) でスケール、 \(s\) でシフトして、[s, e]の値をとるようにしています。\(T\) は 下三角行列です。このモデルを使用して、[s, e] をN分割することを考えます。
例えば、 区間[-5,5] を10分割する場合
\begin{eqnarray}
\left( \begin{array}{cc} x1\\ x2\\ x3\\ x4\\ x5\\ x6\\ x7\\ x8\\ x9\\ x10\\ \end{array} \right)
=
10
\left(\begin{array}{cc} 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \end{array} \right)
\cdot
\left( \begin{array}{cc} \frac{d1}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d2}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d3}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d4}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d5}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d6}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d7}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d8}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d9}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d10}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \end{array} \right)
+
\left( \begin{array}{cc} -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ \end{array} \right) \\[8pt]
\end{eqnarray}
この式の \(x10\) を計算すると 5 となります。これは [s, e] の e ですので、以下になります。
\begin{eqnarray}
\left( \begin{array}{cc} x1\\ x2\\ x3\\ x4\\ x5\\ x6\\ x7\\ x8\\ x9\\ e\\ \end{array} \right)
=
10
\left(\begin{array}{cc} 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 \\ 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \end{array} \right)
\cdot
\left( \begin{array}{cc} \frac{d1}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d2}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d3}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d4}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d5}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d6}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d7}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d8}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d9}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ 1 \end{array} \right)
+
\left( \begin{array}{cc} -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ -5\\ \end{array} \right) \\[8pt]
\end{eqnarray}
e を加えたので s も加えてみましょう。
\begin{eqnarray}
\left( \begin{array}{cc} s \\ x1\\ x2\\ x3\\ x4\\ x5\\ x6\\ x7\\ x8\\ x9\\ e\\ \end{array} \right)
=
10
\left(\begin{array}{cc} 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 \\ 0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \end{array} \right)
\cdot
\left( \begin{array}{cc} 0\\ \frac{d1}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d2}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d3}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d4}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d5}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d6}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d7}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d8}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ \frac{d9}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10} \\ 1 \end{array} \right)
+
\left( \begin{array}{cc} -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ -5 \\ \end{array} \right) \\[8pt]
\end{eqnarray}
これは、数直線で表すと以下になります。今回の例では \(s = -5\) 、 \(e = 5\) です。
式をみるとパラメータ \(d10\) が分数の分子にはなく、分母に現れているのが興味深いです。 \(x9\) の式は右辺に \(\frac{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9}{d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10}\) を含みます。この式は分母に \(d10\) があるおかげで 1 にならず, \(d10\) のための隙間を残しているように見えます。
結局のところ、左辺が s, e となっている式は学習と関係ありません。それを踏まえると、最終的に [s, e] を N分割する時に、学習に使用する式は以下になります。
\begin{eqnarray}
\left( \begin{array}{cc} x_{1}\\ x_{2}\\ x_{3}\\ ... \\ x_{N-1}\\ \end{array} \right) = (e - s) \left( \begin{array}{cc} 1 & 0 & 0 & ... & 0 \\ 1 & 1 & 0 & ... & 0 \\ ... & & & & ... \\ 1 & 1 & 1 & ... & 1\\ \end{array} \right) \cdot \left( \begin{array}{cc} d_{1}\\ d_{2}\\ d_{3}\\ ... \\ d_{N-1}\\ \end{array} \right) \frac{1}{d_{1} + d_{2} + ... + d_{N}} + s
\end{eqnarray}
試しに、 N=2 のときこの式がどうなるか見てみましょう。
\begin{eqnarray}
\left( \begin{array}{cc} x_{1}\\ \end{array} \right) &=& (e - s) \left( \begin{array}{cc} 1 \end{array} \right) \cdot \left( \begin{array}{cc} d_{1} \end{array} \right) \frac{1}{d_{1} + d_{2}} + s \\[8pt]
x_{1} &=& \frac{(e - s)d1}{d_{1} + d_{2}} + s \\[8pt]
x_{1} &=& \frac{e \cdot d1 - s \cdot d1}{d_{1} + d_{2}} + s \\[8pt]
x_{1} &=& \frac{e \cdot d1 - s \cdot d1}{d_{1} + d_{2}} + \frac{s \cdot d1 + s \cdot d2}{d_{1} + d_{2}} \\[8pt]
x_{1} &=& \frac{e \cdot d1 + s \cdot d2}{d_{1} + d_{2}} \\[8pt]
x_{1} &=& \frac{s \cdot d2 + e \cdot d1}{d_{1} + d_{2}} \\[8pt]
\end{eqnarray}
これは、区間[s, e]をd1:d2に内分する数学の公式と同じになっています。そのため、問題ないことがわかります。(もしかすると本モデルは内分の公式を拡張したものになっているのかもしれません)