softmax-layer
Softmax-laget er et outputlag i neurale netværk, der konverterer logits til en sandsynlighedsfordeling, hvor alle sandsynligheder summer til 1.
Kort fortalt
Et lag der omdanner rå tal til sandsynligheder, der summer til 1, så modellens output let kan fortolkes som sandsynligheder for hver klasse.
- Kategori
- arkitektur
- Niveau
- begynder
- Udtale
- /ˈsɒftmæks ˌleɪər/
Betydninger
1- 1
Et lag i et neuralt netværk, der anvender softmax-funktionen til at normalisere input-vektoren til en sandsynlighedsfordeling.
- Efter softmax-laget får vi sandsynligheder for hver klasse, fx 0.7 for 'kat' og 0.3 for 'hund'.
- Softmax-laget bruges ofte i multiklasse-klassifikationsopgaver.
Hvornår bruges det
Softmax-laget anvendes som det sidste lag i klassifikationsmodeller med flere klasser, fx i billedgenkendelse og sprogmodellering. Det sikrer, at outputtet repræsenterer en gyldig sandsynlighedsfordeling over klasserne.
Formel
softmax(z)_i = exp(z_i) / Σ_j exp(z_j)Kodeeksempel
def softmax(x):
e_x = np.exp(x - np.max(x))
return e_x / e_x.sum(axis=0)Implementering af softmax-funktionen med numerisk stabilitet ved at trække maksimum fra.
Oprindelse
Ordet 'softmax' er sammensat af 'soft' (blød) og 'max' (maksimum) for at indikere, at funktionen er en differentiabel approximation af argmax-funktionen.