Table des matières
(2) fonction sigmoïde (couramment utilisée)
(4) Fonction ReLU (actuellement couramment utilisée)
1. Vue d'ensemble
Dans le perceptron, le poids w est entré manuellement et le réseau neuronal peut automatiquement apprendre les paramètres de poids appropriés à partir des données. On peut comprendre que le réseau neuronal saisit les caractéristiques des données à partir des données pour obtenir des poids, et utilise finalement les poids pour identifier des données non familières.
Le schéma de la structure du réseau neuronal est le suivant :
L'image ci-dessus montre un réseau de neurones à 3 couches, qui est la structure de réseau de neurones la plus simple, dans laquelle la couche intermédiaire est parfois appelée la "couche cachée". Semblable au perceptron, dans le réseau de neurones, nous entrons des échantillons de données comme signal d'entrée, puis obtenons le poids grâce au calcul des caractéristiques des données obtenues dans la couche cachée, et obtenons enfin le résultat de sortie requis dans la couche de sortie.
2. Fonction d'activation
(1) Concepts de base
Voyons d'abord la formule du perceptron :
Simplifiez la formule du perceptron pour
où h(x):
De cela, vous pouvez obtenir
a=b+w1x1+w2x2
y=h(a)
où h(a) est la fonction d'activation. Sa structure est la suivante :
(2) fonction sigmoïde (couramment utilisée)
officiel:
où exp(-x) représente le carré -x de e. (Cette formule n'a pas besoin d'être rappelée, c'est juste une méthode de calcul)
Code (sigmoïde):
def sigmoid(x):
return 1 / (1 + np.exp(-x))
(3) Fonction pas à pas
La fonction échelon et la fonction sigmoïde sont toutes deux des fonctions non linéaires, mais contrairement à sigmoïde, la fonction sigmoïde est une courbe lisse, tandis que la fonction échelon est une courbe fortement descendante ou montante.
Les courbes de fonction sont comparées comme suit :
code (fonction échelon)
def step_function(x):
y = x > 0
return y.astype(np.int)
(4) Fonction ReLU (actuellement couramment utilisée)
À l'heure actuelle, la fonction ReLU est largement utilisée et sa formule est la suivante :
Code (fonction ReLU) :
def relu(x):
return np.maximum(0, x)