machine_learningヘッダファイルパッケージで用いている計算式
3. モデルパラメータ\(W_{j,i}^{(m)}\)に対する制約条件
3.1. 2クラス分類の場合
(Formula used in machine_learning header file package;
3. Constraints on model parameters \(W_{j,i}^{(m)}\);
3.1. In case of 2-class grouping)
機械学習の教科書の多くは2クラス分類と3クラス以上の分類を別個に扱っており、
2クラス分類では1-of-K表現が用いられず、
\(n\)番目の教師データが「クラス1」に分類される確率\(x_1^{(M+1,n)}\)のみが
直接扱われ、
「クラス0」に分類される確率については\(1-x_1^{(M+1,n)}\)として扱われている。
しかし、このような扱いをすると交差エントロピー誤差の式も
2クラスの場合と3クラス以上の場合で異なるものになってしまい、
計算式の導出やコーディングが面倒になる。
ここでは2クラス分類と3クラス以上の分類とを可能な限り統一的に扱えるように、
2クラス分類においても\(t_i^{(n)}\)に1-of-K表現を使用し、
\(x_0^{(M+1,n)}\)と\(x_1^{(M+1,n)}\)を対等に扱う。
In most textbooks of machine learning,
2-class and more than 3-class groupings are treated separately.
In the 2-class grouping, the 1-of-K expression is not used,
only the probability that the \(n\)th teaching data is grouped
as “class 1”
(\(x_1^{(M+1,n)}\)) appears explicitly,
and the probability that the \(n\)th teaching data is grouped
as “class 0”
is treated as \(1-x_1^{(M+1,n)}\).
This treatment, however, yields
different formulas for the cross entropy error
between the 2-class and more than 3-class grouping problems,
resulting in additional tasks in the derivation of the formula and coding.
To treat the 2-class and more than 3-class grouping problems
as uniformly as possible,
we here use the 1-of-K expression for \(t_i^{(n)}\)
even in the 2-class grouping problem,
and treat \(x_0^{(M+1,n)}\) and \(x_1^{(M+1,n)}\) in the same manner.
2クラス分類ではジグモイド関数が用いられるが、
これを\(x_0^{(M+1,n)}\), \(x_1^{(M+1,n)}\)のそれぞれについて書き下すと
以下のようになる。
\[\begin{equation}
x_0^{(M+1,n)}=\frac{1}{1+\exp\left(-y_0^{(M,n)}\right)}
\hspace{2em} (n=0,\cdots,N-1)
\label{eq.2classes.x0}
\end{equation}\]
\[\begin{equation}
x_1^{(M+1,n)}=\frac{1}{1+\exp\left(-y_1^{(M,n)}\right)}
\hspace{2em} (n=0,\cdots,N-1)
\label{eq.2classes.x1}
\end{equation}\]
機械学習の教科書には通常(\ref{eq.2classes.x1})のみが登場し、
(\ref{eq.2classes.x0})の代わりに
\[\begin{equation}
x_0^{(M+1,n)}=1-x_1^{(M+1,n)}=1-\frac{1}{1+\exp\left(-y_1^{(M,n)}\right)}
\hspace{2em} (n=0,\cdots,N-1)
\label{eq.2classes.x0.use_x1}
\end{equation}\]
という形に置いてしまうのであるが、
上で述べた面倒を避けるために
ここでは(\ref{eq.2classes.x0})(\ref{eq.2classes.x1})の形から出発して
\(x_0^{(M+1,n)}\), \(x_1^{(M+1,n)}\)が確率と見なせる(和が1になる)条件を
考えることにする。
\(x_0^{(M+1,n)}\), \(x_1^{(M+1,n)}\)が確率と見なせる条件は
(\ref{eq.2classes.x0.use_x1})であるが、これを変形すると
\[\begin{eqnarray}
x_0^{(M+1,n)}
&=& \frac{\left[1+\exp\left(-y_1^{(M,n)}\right)\right]-1}
{1+\exp\left(-y_1^{(M,n)}\right)}
\nonumber \\
&=& \frac{\exp\left(-y_1^{(M,n)}\right)}{1+\exp\left(-y_1^{(M,n)}\right)}
\nonumber \\
&=& \frac{1}{\exp\left(y_1^{(M,n)}\right)+1}
\nonumber \\
&=& \frac{1}{1+\exp\left(y_1^{(M,n)}\right)}
\nonumber \\
& & (n=0,\cdots,N-1)
\label{eq.2classes.x0.use_x1.arranged}
\end{eqnarray}\]
となる。
(\ref{eq.2classes.x0.use_x1.arranged})を(\ref{eq.2classes.x0})と見比べると、
\(y_1^{(M,n)}=-y_0^{(M,n)}\)であれば2つの式が整合的なものとなることが分かる。
言い換えれば、\(x_0^{(M+1,n)}\), \(x_1^{(M+1,n)}\)をそれぞれ
(\ref{eq.2classes.x0})(\ref{eq.2classes.x1})の形に置いた場合に
\(x_0^{(M+1,n)}\), \(x_1^{(M+1,n)}\)が確率と見なせる(和が1になる)条件は
\(y_1^{(M,n)}=-y_0^{(M,n)}\)が成り立つことであると言える。
In the 2-class grouping, the sigmoid function is used,
which can be written for \(x_0^{(M+1,n)}\) and \(x_1^{(M+1,n)}\)
as Eqs. (\ref{eq.2classes.x0}) and (\ref{eq.2classes.x1}), respectively.
In the textbooks of machine learning,
usually only Eq. (\ref{eq.2classes.x1}) appears,
and \(x_0^{(M+1,n)}\) is given by Eq. (\ref{eq.2classes.x0.use_x1})
instead of (\ref{eq.2classes.x0}).
However, to avoid the additional tasks mentioned above,
we here start with Eqs. (\ref{eq.2classes.x0}) and (\ref{eq.2classes.x1}),
and derive conditions that
\(x_0^{(M+1,n)}\) and \(x_1^{(M+1,n)}\) are regarded as the probabilities
(i.e., the summation of them is 1).
This condition, given by Eq. (\ref{eq.2classes.x0.use_x1}),
can be arranged as (\ref{eq.2classes.x0.use_x1.arranged}).
A comparison of Eqs. (\ref{eq.2classes.x0.use_x1.arranged})
and (\ref{eq.2classes.x0}) indicates that
these two equations are consistent if \(y_1^{(M,n)}=-y_0^{(M,n)}\).
This means that \(y_1^{(M,n)}=-y_0^{(M,n)}\) is the condition for which
\(x_0^{(M+1,n)}\) and \(x_1^{(M+1,n)}\),
given by Eqs. (\ref{eq.2classes.x0}) and (\ref{eq.2classes.x1}), respectively,
are regarded as the probabilities (i.e., the summation of them is 1).
それでは\(y_1^{(M,n)}=-y_0^{(M,n)}\)となる条件はどう書けるだろうか。
\[\begin{equation}
y_0^{(M,n)}=\sum_{i=0}^{J^{(M)}-1}W_{0,i}^{(M)}x_i^{(M,n)}+W_{0,J^{(M)}}^{(M)}
\hspace{2em} (n=0,\cdots,N-1)
\label{eq.2classes.y0}
\end{equation}\]
\[\begin{equation}
y_1^{(M,n)}=\sum_{i=0}^{J^{(M)}-1}W_{1,i}^{(M)}x_i^{(M,n)}+W_{1,J^{(M)}}^{(M)}
\hspace{2em} (n=0,\cdots,N-1)
\label{eq.2classes.y1}
\end{equation}\]
であるので
\[\begin{equation}
W_{1,i}^{(M)}=-W_{0,i}^{(M)} \hspace{2em} \left(i=0,\cdots,J^{(M)}\right)
\label{eq.2classes.W.constraint}
\end{equation}\]
であれば\(y_1^{(M,n)}=-y_0^{(M,n)}\)が成り立つ。
すなわち、\(x_0^{(M+1,n)}\), \(x_1^{(M+1,n)}\)をそれぞれ別個に
(\ref{eq.2classes.x0})(\ref{eq.2classes.x1})の形に置いた場合に
\(x_0^{(M+1,n)}+x_1^{(M+1,n)}=1\)となる条件として
(\ref{eq.2classes.W.constraint})が導かれた。
We now further consider the conditions that
the relation \(y_1^{(M,n)}=-y_0^{(M,n)}\) holds.
Since \(y_0^{(M,n)}\) and \(y_1^{(M,n)}\) are given by
Eqs. (\ref{eq.2classes.y0}) and (\ref{eq.2classes.y1}), respectively,
the relation \(y_1^{(M,n)}=-y_0^{(M,n)}\) holds if
Eq. (\ref{eq.2classes.W.constraint}) is satisfied.
In conclusion, (\ref{eq.2classes.W.constraint}) is the condition
for which \(x_0^{(M+1,n)}+x_1^{(M+1,n)}=1\) holds when
\(x_0^{(M+1,n)}\) and \(x_1^{(M+1,n)}\) are given individually by
Eqs. (\ref{eq.2classes.x0}) and (\ref{eq.2classes.x1}), respectively.