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.