Hoe een sigmoïdefunctie in python te berekenen (met voorbeelden)
Een sigmoïdefunctie is een wiskundige functie die bij het uitzetten een „S“-vormige curve vertoont.
Het meest voorkomende voorbeeld van een sigmoïdefunctie is de logistieke sigmoïdefunctie, die als volgt wordt berekend:
F(x) = 1 / (1 + e -x )
De eenvoudigste manier om een sigmoïdefunctie in Python te berekenen is door de functie expit() uit de SciPy- bibliotheek te gebruiken, die de volgende basissyntaxis gebruikt:
from scipy. special import expit #calculate sigmoid function for x = 2.5 expire(2.5)
De volgende voorbeelden laten zien hoe u deze functie in de praktijk kunt gebruiken.
Voorbeeld 1: bereken de sigmoïdefunctie voor een waarde
De volgende code laat zien hoe u de sigmoïdefunctie voor de waarde x = 2,5 berekent:
from scipy. special import expit #calculate sigmoid function for x = 2.5 expire(2.5) 0.9241418199787566
De waarde van de sigmoïdefunctie voor x = 2,5 is 0,924 .
We kunnen dit bevestigen door de waarde handmatig te berekenen:
- F(x) = 1 / (1 + e -x )
- F(x) = 1 / (1 + e -2,5 )
- F(x) = 1 / (1 + 0,082)
- F(x) = 0,924
Voorbeeld 2: Bereken de sigmoïdefunctie voor meerdere waarden
De volgende code laat zien hoe je de sigmoïdefunctie voor meerdere x-waarden tegelijk kunt berekenen:
from scipy. special import expit
#define list of values
values = [-2, -1, 0, 1, 2]
#calculate sigmoid function for each value in list
expire(values)
array([0.11920292, 0.26894142, 0.5, 0.73105858, 0.88079708])
Voorbeeld 3: De sigmoïdefunctie plotten voor een reeks waarden
De volgende code laat zien hoe je de waarden van een sigmoïdefunctie voor een bereik van waarden x kunt plotten met behulp van matplotlib :
import matplotlib. pyplot as plt
from scipy. special import expit
import numpy as np
#define range of x-values
x = np. linspace (-10, 10, 100)
#calculate sigmoid function for each x-value
y = expire(x)
#createplot
plt. plot (x, y)
plt. xlabel (' x ')
plt. ylabel (' F(x) ')
#displayplot
plt. show ()
Merk op dat de grafiek de “S”-vormige curve toont die kenmerkend is voor een sigmoïdefunctie.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in Python uitvoert:
Hoe logistieke regressie uit te voeren in Python
Hoe een logistische regressiecurve in Python te plotten