マルチクラス ニューラル ネットワーク: Softmax

ロジスティック回帰では、0 ~ 1.0 の小数点が生成されます。たとえば、メールの分類器からのロジスティック回帰の出力が 0.8 の場合、メールが迷惑メールに分類される可能性は 80%、迷惑メールではない可能性が 20% あることを意味します。迷惑メールである確率の合計は 1.0 です。

Softmax は、この考え方をマルチクラスの世界に拡張しています。つまり、Softmax は、マルチクラス問題の各クラスに 10 進数の確率を割り当てます。小数値の確率は合計で 1.0 になる必要があります。この制約により、トレーニングが収束するまでの時間が短縮されます。

たとえば、図 1 の画像分析に戻ると、特定のクラスに属する画像の可能性は次のようになります。

クラス 確率
apple 0.001
クマ 0.04
トルコ語 0.008
0.95
0.001

Softmax は、出力レイヤの前のニューラル ネットワーク レイヤを介して実装されます。Softmax レイヤのノード数は、出力レイヤと同じである必要があります。

ディープ ニューラル ネット。入力レイヤ、非記述的隠しレイヤ、Softmax レイヤ、そして Softmax レイヤと同じ数のノードを持つ出力レイヤで構成されます。

図 2. ニューラル ネットワーク内にある Softmax レイヤ。

Softmax オプション

Softmax の次のバリアントを検討してください。

  • Full Softmax は、以前に説明した Softmax です。つまり、Softmax は、可能性のあるすべてのクラスの確率を計算します。

  • 候補サンプリングとは、Softmax がすべての陽性ラベルの確率を計算しますが、陰性ラベルのランダム サンプルのみを計算します。たとえば、入力画像がビーグルかブラッドハウンドかを判断する場合、非犬のすべての例の確率を提示する必要はありません。

完全な Softmax は、クラスの数が少ないとかなり安価になりますが、クラスの数が増えると非常に高くなります。候補のサンプリングは、クラス数の多い問題を効率的に効率化します。

1 つのラベルと複数のラベル

Softmax は、各例が 1 つのクラスだけのメンバーであることを前提としています。ただし、複数のクラスに同時に複数のメンバーがメンバーになる場合があります。たとえば、次のようになります。

  • Softmax は使用できません。
  • 複数のロジスティック回帰に依存する必要があります。

たとえば、1 つのアイテム(果物 1 個)を含む画像の例があるとします。SoftMax は、そのアイテムが洋ナシ、オレンジ、リンゴなどの可能性を判断することができます。例が、さまざまな種類の果物を含む画像である場合、代わりに複数のロジスティック回帰を使用する必要があります。