Comment calculer une fonction sigmoïde en Python (avec exemples)



Une fonction sigmoïde est une fonction mathématique qui présente une courbe en forme de « S » lorsqu’elle est tracée.

L’exemple le plus courant de fonction sigmoïde est la fonction sigmoïde logistique, qui est calculée comme suit :

F(x) = 1 / (1 + e -x )

Le moyen le plus simple de calculer une fonction sigmoïde en Python est d’utiliser la fonction expit() de la bibliothèque SciPy , qui utilise la syntaxe de base suivante :

from scipy.special import expit

#calculate sigmoid function for x = 2.5
expit(2.5)

Les exemples suivants montrent comment utiliser cette fonction dans la pratique.

Exemple 1 : calculer la fonction sigmoïde pour une valeur

Le code suivant montre comment calculer la fonction sigmoïde pour la valeur x = 2,5 :

from scipy.special import expit

#calculate sigmoid function for x = 2.5
expit(2.5)

0.9241418199787566

La valeur de la fonction sigmoïde pour x = 2,5 est 0,924 .

Nous pouvons le confirmer en calculant la valeur manuellement :

  • F(x) = 1 / (1 + e -x )
  • F(x) = 1 / (1 + e -2,5 )
  • F(x) = 1 / (1 + 0,082)
  • F(x) = 0,924

Exemple 2 : calculer la fonction sigmoïde pour plusieurs valeurs

Le code suivant montre comment calculer la fonction sigmoïde pour plusieurs valeurs x à la fois :

from scipy.special import expit

#define list of values
values = [-2, -1, 0, 1, 2]

#calculate sigmoid function for each value in list
expit(values)

array([0.11920292, 0.26894142, 0.5, 0.73105858, 0.88079708])

Exemple 3 : Tracer la fonction sigmoïde pour une plage de valeurs

Le code suivant montre comment tracer les valeurs d’une fonction sigmoïde pour une plage de valeurs x à l’aide de 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 = expit(x)
  
#create plot
plt.plot(x, y)
plt.xlabel('x')
plt.ylabel('F(x)')

#display plot
plt.show()

fonction sigmoïde en Python

Notez que le tracé présente la courbe en forme de « S » caractéristique d’une fonction sigmoïde.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes en Python :

Comment effectuer une régression logistique en Python
Comment tracer une courbe de régression logistique en Python

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *