大きな画面での利用をおすすめします — アニメーションと操作がより快適になります。
入力

MNIST 手書き数字分類器

MNIST 分類器は 28×28 のグレースケール画像から数字 0–9 の確率を出し、最大のクラスを予測します。本ページは学習済みの 784 → 25 → 25 → 10 ネットワークを使い、ブラウザ内で描いた筆跡を認識します。

手書き数字認識の用途には封筒の郵便番号の読み取りがあります。数字を描き、1 回の順伝播がどんな判断を出すか観察してください。曖昧な筆跡で限界も試せます。表示する確信度はスコアから計算した値で、正解の保証ではありません。

筆跡からネットワーク入力へ

画像を 784 個の画素値に展開します。最初の隠れ層の 25 ユニットが z = x·W + b を計算し、ReLU で負値をゼロにします。次の 25 ユニットも同じ処理を行い、最後の 10 スコアを softmax で合計が約 1 の確率へ変換します。

接続の積和は 784·25 + 25·25 + 25·10 = 20,475 回で、バイアス、活性化、softmax の追加処理は含みません。この規模なら筆跡が変わるたび再計算できます。

前処理も必要です。MNIST の数字は 20×20 枠へ縮小・拡大し、墨の重心で 28×28 画像の中央へ寄せます。本ページも墨の外接矩形を求め、形を保ってサイズを合わせ、重心を中央へ移します。大きい格子は描いた位置を保ち、下の「ネットワークが見る画像」は実際の入力を示します。隅の筆跡が小格子で中央へ移るのはこの処理です。分布の違いを減らしますが、すべてを取り除くわけではありません。

ステップ実行

初期画面は空白で、描くと処理が始まります。

  1. 描画:28 ピクセル格子の 10 倍の解像度を持つ墨バッファへ、柔らかい縁の線を描き、曲線を滑らかに保ちます。
  2. 二つの縮小処理:表示格子はボックス平均で位置を保った 28×28 画像にします。ネットワーク用は「外接矩形 → 20×20 枠への変換 → 重心で中央へ → 784 値」です。
  3. 順伝播:第 1 層の各ニューロンが全 784 画素を重み付きで加算し、ReLU を適用します。第 2 層はその 25 活性値を使います。
  4. 確率の出力:10 スコアに softmax を適用し、見出しに最大クラスと割合を表示します。次点の割合も示すので、競合する候補を読めます。
  5. 判断を確かめる:描き直したり形を崩したり、パネルの 10 サンプルボタンからこのモデルが正しく認識する MNIST テスト画像を読み込み、自分の筆跡との参照にします。

隠れユニットは加重和の正負に応じて濃色または青になります。接続線は伝える活性値に応じて明るくなり、使われない線は薄くなります。10 個の出力円は確率で満たされ、最大クラスを緑の輪で囲みます。明瞭な 3 では集中し、1 に見える 7 では二つの候補に分かれることがあります。ただし分散の程度も校正の保証ではありません。

重みが学ぶもの

「7」の標準画像を保存しているのではなく、2 万個余りのパラメータが画素パターンを組み合わせて出力スコアを動かします。単一の隠れユニットに「輪の検出器」といった名前が付くとは限りません。分析できる特徴もありますが、意味は集団に分散しがちです。出力クラスは明示的に指定され、直接解釈できます。

Softmax はモデルの確信度であり、正しさや確率校正ではありません。10 クラスの合計は 1 で、この分類ヘッドには「数字ではない」というクラスがありません。文字や落書きにも分布を出し、ときには強い確信を示します。学習分布に近い入力では高い確信と正解が相関しても、分布外の 95% は信頼できる保証になりません。順伝播の「Misclassified」は、同じモデルが 90% 超の確信度で誤る実際のテスト画像です。

境界ケース

  • 隅の数字や小さい数字:中央寄せとサイズ調整は構図の違いを減らしますが、サンプリング、線幅、書体の差は残ります。
  • 空白:認識すべき墨がありません。出力があっても全ゼロ入力への固定応答で、有効な数字の判断とは見なしません。
  • 薄い線:外接矩形は検出できる墨に依存し、薄すぎるとほぼ空白が入力されます。
  • 確信した誤り:未知の書き方には高確信で誤る場合があります。まず二つの格子を比べ、正規化後の画像自体が曖昧か確認します。

よくある間違い

  • 本番並みの精度を期待する。本例は畳み込みのない 2 隠れ層 MLP で、畳み込み式の重み共有はありません。実際のシステムには CNN や他の構造があり、必ず大きいとは限りません。
  • すべての誤りを描画ツールのせいにする。人にも曖昧な筆跡はあり、競合する確率がそれを示す場合がありますが、校正済みの証拠ではありません。
  • 点灯した隠れユニットに意味を決めつける。一つの活性だけでは特定の形を検出する証拠になりません。
  • 95% を「同種の入力 100 個中 95 個が正しい」という保証と読む。それには独立した校正評価が必要です。