ロジスティック回帰では、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 レイヤのノード数は、出力レイヤと同じである必要があります。
図 2. ニューラル ネットワーク内にある Softmax レイヤ。
Softmax オプション
Softmax の次のバリアントを検討してください。
Full Softmax は、以前に説明した Softmax です。つまり、Softmax は、可能性のあるすべてのクラスの確率を計算します。
候補サンプリングとは、Softmax がすべての陽性ラベルの確率を計算しますが、陰性ラベルのランダム サンプルのみを計算します。たとえば、入力画像がビーグルかブラッドハウンドかを判断する場合、非犬のすべての例の確率を提示する必要はありません。
完全な Softmax は、クラスの数が少ないとかなり安価になりますが、クラスの数が増えると非常に高くなります。候補のサンプリングは、クラス数の多い問題を効率的に効率化します。
1 つのラベルと複数のラベル
Softmax は、各例が 1 つのクラスだけのメンバーであることを前提としています。ただし、複数のクラスに同時に複数のメンバーがメンバーになる場合があります。たとえば、次のようになります。
- Softmax は使用できません。
- 複数のロジスティック回帰に依存する必要があります。
たとえば、1 つのアイテム(果物 1 個)を含む画像の例があるとします。SoftMax は、そのアイテムが洋ナシ、オレンジ、リンゴなどの可能性を判断することができます。例が、さまざまな種類の果物を含む画像である場合、代わりに複数のロジスティック回帰を使用する必要があります。