Réseaux de neurones artificiels. Partie 1

Neurone

Dans cet article, vous apprendrez les bases du fonctionnement des neurones artificiels. Dans les articles suivants, nous allons apprendre les bases des réseaux de neurones et écrire un simple réseau de neurones en python.





Les réseaux de neurones sont composés de neurones connectés les uns aux autres, de sorte qu'un neurone est la partie principale d'un réseau de neurones. Les neurones n'effectuent que 2 actions: ils multiplient les données d'entrée par les poids et les ajoutent et ajoutent le biais, et la deuxième action est l'activation.





Maintenant, plus d'informations sur les données d'entrée, les poids, les biais et la fonction d'activation.





Les données d'entrée sont des données qu'un neurone reçoit des neurones précédents ou de l'utilisateur.





Des poids sont attribués à chaque entrée du neurone, ils reçoivent initialement des nombres aléatoires. Lors de la formation d'un réseau de neurones, la valeur des neurones et des déplacements change. Les poids sont multipliés par les données d'entrée qui sont transmises au neurone.





Des décalages sont attribués à chaque neurone, tout comme les poids du biais initial, ce sont des nombres aléatoires. Les décalages facilitent et accélèrent la formation du réseau neuronal.





La fonction d'activation que nous utiliserons dans notre réseau neuronal est appelée sigmoïde. La formule sigmoïde est:





f (x) = \ frac {1} {1 + e ^ {- x}}

Cette fonction enveloppe tout nombre de -∞ à + ∞ dans la plage de 0 à 1.





Si nous décrivons mathématiquement, les tâches que le neurone effectue, alors nous obtenons 2 formules: Notation:





f (x) - fonction d'activation





x - la somme du produit des données d'entrée avec les poids et le biais





i - tableau de données d'entrée





w -





b -





j -





x = i_1 * w_1 + ... + i_j * w_j + b f (x) = \ frac {1} {1 + e ^ {- x}}





python.





numpy. Linux Window:





pip install numpy
      
      



:





import numpy as np
      
      



Neuron, :





class Neuron:
    def __init__(self, number_of_weights = 1):

        self.w = np.random.normal(size=number_of_weights)
        self.b = np.random.normal()
      
      



, , . . :





def activate(self, inputs):
        
        x = np.dot(self.w, inputs) + self.b
        
        return sig(x)
      
      



, . :





def sig(x):
  return 1 / (1 + np.exp(-x)) 
      
      



Math.py





numpy:





import numpy as np
      
      



Neuron.py. Neuron.py Math.py:





from Math import *
      
      



2 :





Neuron.py





import numpy as np

from Math import *

class Neuron:
    def __init__(self, number_of_weights = 1):

        self.w = np.random.normal(size=number_of_weights)
        self.b = np.random.normal()
        
    def activate(self, inputs):
        
        x = np.dot(self.w, inputs) + self.b
        
        return sig(x)
      
      



Math.py





import numpy as np

def sig(x):
  return 1 / (1 + np.exp(-x))
      
      



.





, :









  1. ,





  2. Python





- .








All Articles